今天我们来聊一个老生常谈的话题,学编程时到底选择什么操作系统?选Mac、Windows还是别的什么?那作为一个每种操作系统都安装过的程序员,结合自己的经历,先来聊一聊每种操作系统的优点和不足,最后再给大家一些参考和选择系统的建议。
如果你是一名程序员,相信有很多点应该会感同身受,那因为本人专业程度有限,没有提到的点大家也可以帮忙补充。如果你不是一个程序员,或者你正打算学编程,那么这篇文章应该能帮助你选择最适合自己的操作系统。
先说一下我们的老伙计Windows,毫无疑问,这是国内用户最多的,也是安装次数最多的操作系统。至于为什么安装次数多,我先不说。俗话说得好,教育要从娃娃抓起。那作为一名优秀的程序员,我是从小学一年级就开始使用Windows来玩游戏了。而且我上大学时买的第一个电脑也是Windows系统,当时根本没打算用它来学编程,就是拿来打游戏的。
直到目前为止,在我看来,Windows最大的优势就在于它能玩游戏。换句话说,Windows的软件生态是非常丰富的,毕竟是老牌操作系统,无论是游戏、办公、看片,总有集团软件符合你的诉求。而且在Windows上强制使用原本不能使用的软件也很方便。但是朋友们,这恰恰是Windows存在的一个很致命的问题。就像你去逛小摊,那虽然价格便宜,品类丰富,但是里面的东西靠不靠谱,有没有毒啊就不好说了。像我小的时候,每下载一个游戏,就能给电脑上多装几个浏览器,对桌面多加几十个快捷方式。还曾经因为安装了一款快速播放器,给电脑引入了木马,导致QQ号被盗了。可别告诉我你们没有这样的经历。
除了不安全外,Windows还有一个很大的毛病。试想一下,当你一篇很长的文档快写完时突然间你感觉两眼一黑,“诶诶?”接着屏幕上便出现了一个蓝色笑脸,“what a?”我也用过很多Windows电脑,但无论是多高配置,Windows给我的感觉都是不够稳定,并且总能在你最不想死机时死机。
先说说我感受到的Mac的优点,首先就是我用Mac几年了,几乎没有发生过中毒和死机,也从来没有重装过系统,明显感觉到它比Windows的稳定性要高。Mac上安装软件也非常的方便,就跟我们手机上装软件一样,Mac有自己正版的应用商店,安装软件更高效,软件更好管理,而且最关键的是不用下载某软件管家也能安全的让人感动。那我觉得macOS的界面也是更加的好看大气。当然了,系统是一方面,Mac电脑本身的屏幕和设计确实是牛的。此外,就说你还是一个苹果控,那么你还能感受到Mac生态系统的强大,各设备间同步数据也真的是非常的方便。那对于学编程的同学来说,macOS最大的优点莫落于它是基于Unix操作系统的,自带了很多开发工具,尤其是终端很多命令和企业开发常用的Linux系统类似,便于我们搭建环境和学习命令行的使用。此外,苹果电脑近几年的发展真的是太迅猛了,比如M1 M2芯片,那我也实际测试过,同等配置下,mac开发的流畅度和开发软件的打开速度都要比win快很多,开发效率也是杠杠的。所以你会发现互联网大厂的员工几乎清一色的Mac
但是macOS也是存在缺点的。首先就是对于我这种白票党来说,Mac上很多软件不能让我自由地去使用,并且Mac目前的软件数没办法跟Windows比较。很多Windows上好用的软件在Mac上并没有相应的替代品。比如我常用的快速播放器和绝大多数游戏都没有办法玩了。不过这点对于卷王来说或许正是它一个优点。当然了,我觉得Mac电脑最大问题还是贵。专门为了学编程买台Mac它性价比也没有那么高
除了以上两种面向大众用户的系统外,对绝大多数程序员来说必须要会用Linux系统。因为目前绝大多数企业项目都部署在Linux服务器上。Linux它是开源、安全、可定制、性能高、成本低、稳定性高等优点
那问题来了,我们学习编程一定要买两台电脑吗?一台是win或Mac,另一台是Linux吗?当然不是必须要学Linux,不代表我们就要有一台安装了Linux系统的电脑。也没有必要为了使用Linux的界面,把自己的电脑强行重装为Linux。我见过两种人,一种是真的喜欢Linux,人家就是研究这一块的,人家装着Linux更好学习。而另外一种是为了装而装,觉得我用Linux与众不同,体现出自己是学计算机的,不是修电脑的。实不相瞒,我就是第二种人。我在大学时硬生生给自己的微软电脑装上了Linux操作系统。但装完之后电脑就打不开了,修复之后也并没有想象中那么好用
那说了一大堆,大家到底选哪个操作系统来学编程?
首先,这个问题没有标准的答案,而是要根据你当前的需求、所处环境、使用习惯以及预算综合选择。你需要明确你的需求,比如开直播,那需要的直播软件只有 Windows 有,那就选 Windows。如果你要打游戏,那也无脑选 Windows 就好了。如果你要做设计、苹果客户端开发或者前端开发,用 Mac 的体验会更好一些。而如果你是学习系统底层开发的安全方向的同学,要对 Linux 掌握的更多一些。
其次是所处环境。如果你是大学生,学校的老师都用 Windows,讲课给的软件包资源也都是 Windows 的,那么毫无疑问,选择 Windows 可以降低你入门的成本。而当你进了公司后,如果身边的同事都用 Mac 或 Windows,那你最好和他们保持一致,像搭环境、传软件、协作开发、甚至是别人帮你改 bug 都会更方便。
再者是使用习惯。初学编程时建议保持自己的习惯就好。如果之前用 Windows,那就用它来学编程,怎么快怎么来,把重心放在学习上,不用再换操作系统、熟悉新的快捷键或者非要自己装着 Linux 系统之类的。当然了,只要你的时间足够或者你喜欢探索,那么就随心就好。
目前绝大多数的开发工具和软件在任何系统上基本都是统一的风格。即使你要用其他系统,可以搞云主机或者用 VMware 之类的虚拟机软件,在自己的主电脑上运行别的系统。如果要学习用 Linux 部署项目,只需要花几十块钱年租一个云服务器,然后通过插 shell 之类的工具连接上它就足够了。像我大学时做博客和现在做网站都是这样部署的。
总的来说,操作系统的选择谁都无法给出标准答案,根据自己的需求和习惯,选择适合自己的操作系统即可。