信息组 | 2022暑期学习建议


✦
职能介绍
信息组负责维护实验室包括路由器、交换机在内的网络设备,以及包括代码协作Gitea、文档协作Confluence、DNS服务、内网下载站、面试系统等在内的云服务,也兼职模拟器的云服务运维。

公共任务-必做
✦
#1 Linux 使用
学习链接:
https://github.com/jlevy/the-art-of-command-line/blob/master/README-zh.md
学习要求:
1.使用 WSL2 安装 Ubuntu 20.04 或 22.04(8小时)
https://docs.microsoft.com/zh-cn/windows/wsl/install
2.理解用户与组、文件和目录等基本概念(6小时)
3.学会常用命令:ls、cp、mv、rm、mkdir 等(6小时)
✦
#2 Git 使用
学习链接:
https://www.bilibili.com/video/BV1vy4y1s7k6
学习要求:
1.学会使用 init、add、commit、push、pull、fetch(8小时)
2.注册一个 GitHub 账号,并尝试进行版本控制 (8小时)
✦
#3 Markdown 语法
学习链接:
https://www.runoob.com/markdown/md-tutorial.html
学习要求:
使用 Markdown 排版一篇短文 (8小时)

前端开发-三选一
✦
#1 可学到的知识
制作一个基本的网页。
✦
#2 学习建议
1.(必做)基础知识:
学习HTML,CSS,JavaScript。最好能一边学一边跟着敲。CSS和HTML的内容很多,但常用的内容就那么一些,所以某些特性可能需要现学现用,平时掌握常用的即可,如学会流式布局等,能完成一个基本的网页即可。
2.(选做)尝试掌握一个前端框架:
React 或 Vue 或 Angular,学习 yarn 或者 npm 的使用(yarn/npm 是结合框架使用的,基本上就几个指令)。
3.(选做)CSS样式工程化:
如Less,不用学得很全或者很深,会个嵌套样式就行。
4.(选做)工程化知识:
WebPack打包工具(大致能用即可)。
5.(选做)趋势知识:
TypeScript(若时间不够直接 JavaScript 就行),ES6(了解,最好掌握其中常用的部分,如箭头函数等)。
6.(选做)一些UI库的使用:
如AntD,矢量图标库。
7.(选做)接口测试工具:
如Apifox 或者 Postman 的使用。
8.(选做)开发工具:
建议 VSCode。
推荐学习网址:
https://zh.javascript.info/
https://developer.mozilla.org/zh-CN/
https://c.runoob.com/web-developer/
https://jkchao.github.io/typescript-book-chinese/
✦
#3 考核任务
自由创作完成一个基本的网页界面,主题任意。

后端开发-三选一
✦
#1
可学到的知识
使一个网页拥有后台功能。
✦
#2 学习建议
目前后端包含部分历史遗留的 PHP 项目,倾向于之后用 Go 重构。模拟器组的后端使用 Kotlin 为主的 Spring 系列框架。
1.(必做)理解 HTTP 协议:
https://www.runoob.com/http/http-tutorial.html
2.(必做)学习3种数据序列化语言:XML、JSON、YAML。
学习链接:https://www.runoob.com/
3.(必做)广泛使用的后端语言和框架(二选一):
a.GoLang + 自选一款基于 Go 的后端框架,开发工具建议 VSCode。
https://golang.google.cn/tour
b.Java 或 Kotlin 语言 + SpringBoot 框架,开发工具建议 intelliJ IDEA。扫描下列二维码可查看教程。



4.(选做)接口调试工具,如:Apifox、Postman。
✦
#3 考核任务
完成一个可以通过 HTTP 接口获取当前时间的后端程序,响应为 JSON 格式。

系统运维-三选一
✦
#1 可学到的知识
运维和维护一台 Linux 服务器。
✦
#2 学习建议
SSH 工具建议 XShell。
1.(必做)Linux 深入:
运维知识很散,建议通过搜索引擎 + CSDN + Stack Overflow 学习。建议使用 CentOS 7 或 CentOS Stream 8,除此之外 Ubuntu 和 Debian 也可以。
学习要求:
a. 租一台云服务器并远程登录。
b. 使用 vim、systemd、netstat 等。
c. 使用 yum 安装 Nginx。
d. 通过源码编译安装 htop。
e. 编写 Nginx 配置文件尝试使用。
2.(必做)计算机网络:
参考教材:《计算机网络(自顶向下方法)第6版》
学习链接:
https://www.bilibili.com/video/BV1JV411t7ow
学习要求:
a. 了解常见的应用层协议:DNS、HTTP 等。
b. 了解运输层的 TCP 和 UDP 协议。
c. 了解网络层的 IPv4 和 IPv6 协议以及路由器的作用。
d. 了解链路层和交换机的作用。
e. 尝试解释输入网址按下回车后发生了什么。
3.(选做)常用应用软件:
a. 部署 MySQL 尝试基本的增删改查。
b. 通过 acme.sh 申请一张 SSL 证书并在 Nginx 中使用。
✦
#3 考核任务
在 Linux 服务器上安装常用的软件,尝试解释网络的5层结构。

小贴士
以上学习建议中,公共任务为必选任务,其余三个方向任选其中一个完成即可。
以上学习建议适用于信息组和模拟器组的云服务部分,二者技术相似可以跨组交叉工作。信息组已有完善的基础设施,工作以维护为主;模拟器组的云服务刚刚起步,开发和维护都有许多工作。
实践是检验理论的一个重要手段,面试的时候会考核大家实践任务的完成情况,大家一定要用心完成。
面试时请携带能够代表个人水平的比赛作品或展示小任务的完成情况,详情请见后续招新咨询qq群通知~


文案 / 信息组
美工 / 胡钰滢
编辑 / 宣运组
审核 / 徐心卓




