Files
fzu-product/3.编程思维体系构建/3.Y 附加模块:Linux.md
2023-04-15 01:17:15 +08:00

67 lines
3.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 附加模块Linux
本来这个模块在编程模块内,但是鉴于大家都反应做这一块非常难,因此我将他提出作为一个额外的附加模块。
如果你想尝试使用 Linux 编程或者想了解更多计算机科学领域知识,你可以学习并阅览本部分内容。
当然你也可以先尝试完成第三部分的一些内容再回过头解决本部分的内容。
可能会花费你大量的时间,并且让你感受到非常困难,但是可以保证的是:你的一切投入,都是有收获的。
# What???Linux???
大家可能知道我们的电脑是 Windows 作为操作系统的。
而 Linux 也是一款有趣的开源不懂意思STFW的操作系统
它既免费也自由 (能知道它内部的实现),而且互联网上有丰富的 (英文) 文档。
它的设计继承自 “Keep it simple, stupid” 的 UNIX这个经典的设计背后的动机反而更容易为第一次接触操作系统的初学者所理解。让我们看看它的威力
- 首先,操作系统里的一切对象都用文件表示 (Everything is a file)。进程、设备……都可以在任何编程语言里用文件 API 访问。
- Linux 的命令行 Shell 是一门编程语言——没错,你每天都在 “编程”更准确地说Shell 的功能就是把你想要做的事情 (类似自然语言描述的代码) 翻译成操作系统能看懂的文件/进程管理 API 调用。
# Why Linux??
作为一个双系统用户体验者来说,他除了玩游戏不那么方便以外,可以更为高效且便捷的办到 Windows 费很大力气才能办到的事情。
并且相当多的开发软件在 Linux 上有更好的兼容性,而到 windows 上你将会花费大量的时间配置各种环境变量还容易出错。
并且目前,服务器上为了保证低损耗,高效率,基本上百分之九十九都是 Linux 的系统,实验室的服务器也是 Linux 系统。
简单来说就是,你如果想干点事情,肯定要靠 Linux,因此学会 Linux 的操作是不可或缺的
## GUI 与 CLI
诚然我们现在的图形化界面GUI已经深入到了生活的方方面面
[Command line vs. GUI](https://www.computerhope.com/issues/ch000619.htm)
这篇文章详细对比了图形化界面和单纯的终端命令的优劣
# How Linux???
那么这么好的东西哪里可以获得呢?
因为 Linux 有诸多发行版本,我在这里建议大家使用 Ubuntu22.04 作为主要版本进行使用
<del>作为</del><del> </del><del>STFW</del><del> </del><del>的尝试我将会把下载并使用这个作为一次作业留给大家</del>(过于高难 😤 这里给出教程)
# 任务
任务:装 Ubuntu22.04
tip1推荐这个 [VMware 的安装与安装 ubuntu22.04 系统](https://gw9u39xwqi.feishu.cn/wiki/wikcnPquqfxujAgMWPbtRptk3BC)
tip2可以使用 WSL[WSL 的安装](https://gw9u39xwqi.feishu.cn/wiki/wikcnwG2FBQe4FvkUSPF7207epg)<del>但是我更建议实装到电脑上双系统之类的</del>(我不建议 bug 很多 例如开不开机 要开好几回 网络连不上等),正好锻炼一下<del>装系统</del>倒腾的能力。大可不必删了 windows 换成 ubuntu。
tip3前两个 tip 二选一
任务:阅读 GUI 与命令行之间对比的文章,尝试开始阅读英文文章
# 教程推荐
[https://missing-semester-cn.github.io/](https://missing-semester-cn.github.io/)
计算机教育中缺失的一课