都说信仰很伟大,但在技术工作者那里,信仰是个可怕的事情。先讲个小笑话。
一个程(dan)序(shen)员(gou)的故事
话说某个程序员喜欢一个美女,美女对程序员也有点意思。有一天,美女对程序员说“如果下午下班前,你能让XX论坛闹翻天,我就做你女朋友。”程序员微微一笑,打开一个论坛的页面,发了一个帖子,只有一句话“PHP是世界上最好的语言”。下午下班时,美女打开这个论坛,发现大家已经为这句话闹翻天了,于是美女走到程序员身边,娇滴滴地说“你好厉害,我做你的女朋友,我们去吃饭好吗?”程序员说“你先去吧,我一定要说服他们,PHP就是世界上最好的语言”。
Windows和Linux
好吧,我今天要说的不是编程语言,所以不讨论PHP是不是世界上最好的语言(另,我觉得PHP绝对不是,要说C还差不多)。除了争论什么是世界上最好的编程语言,还有一个永恒的话题就是Linux到底比Windows好多少——注意,这里没人说Windows好,是说Linux能超出多少。这个话题有多吸引人呢?连我一些不怎么学习的学生都问我“老师,要学好编程是不是要学好Linux啊?”(注意,这里Linux是一个个字母读出来的)
所以今天聊聊Windows和Linux
两者的特点
毫无疑问,Windows的特色就是易学易用,从98开始,许多操作和功能,包括风格都是延续下来的,上手难度很低。即使第一次接触Windows,也能很快学会基本操作。也许有人说新的Win10和当年的98或者2000比已经面目全非了吧?如果在这将近二十年的时间跨度上,Windows的变化确实很大,但如果是相邻版本?除了奇葩的Win 8/8.1之外,许多特性还是一脉相承的,所以学习难度还是很低的。
Linux的特色则是功能强大,定制性强,但易用性较差——简直就是工程师思维的典型产物。你想让系统自动执行一堆很复杂的人物?行,写个shell程序;你想比较两个文件有什么不同?行,有diff命令;你想查看当前联网的所有程序和进程?行,有netstat命令……可以说,你想做和计算机相关的任何事情,都可以有很多工具来帮我们完成。但Linux的学习门槛比较高。
对Windows的一些误解
其实大家对Windows的误解还是比较大的。比如这些:
Windows不安全,Linux更安全。实际上,从Windows XP开始,Windows的安全性是在逐年上升的,到了Win 7 的时代,Windows 7、Mac 和Linux这三大桌面系统中,Win 7的安全漏洞是最少的,以安全著称的Mac反而是漏洞最多的。当然,如果看被攻击的情况,市场占有率最高的Win(大多是小白在使用)被攻击次数肯定最多。因此这里是说系统的安全程度而不是被攻击情况。
Windows功能少,可定制性差。这也是个误解,Windows可设置的内容也是十分繁多的。比如服务,比如组策略,以及注册表。上面说Win安全性差的人往往会说Windows可设置的项目太少。其实,Windows和Linux的安全性是相同的(按照美国现行的安全标准)。但是Windows为了易用性,许多安全选项都没有打开,或者没有展示出来,才让人误认为Windows功能少,安全性差。
Windows更占用计算机资源,速度慢。实际上,Linux占用资源少的一个重要原因就是:这厮可以不用图形界面。如果加上个完整的图形界面,配上常用的程序,Linux的表现不会比Windows好多少(如果你非要拿另类的E18或者openbox来比较,当我没说。这里只说普遍认可的GNOME和KDE),而且由于桌面在Linux上只是个程序,而Windows本省就是基于桌面来设计的,在相同功能下,Windows的桌面在很多时候比Linux速度更快。
Linux有什么好处?
- 快。Linux因为可以没有图形界面,可以在配置很差的机子上高速运转。而且由于Linux的驱动和内核结合非常紧密,因此性能十分突出,看看做电影特效的机子清一色Linux系统就可见一斑了。
- 展示给用户的信息更多。你想做什么都可以,了解文件系统细节?掌握系统运转细节?学习网络基本工作原理?都没有问题,这些你都可以在Linux上获得。所以说,想真的了解计算机运行,Linux绝对是首选系统。
- 强大的命令行。Linux可以没有图形界面,但功能一点都不比Windows少。这得益于强大的命令行。在命令中,不仅有各种神奇的命令,你还可以把这些命令通过多种方式组合起来,实现更多的功能。
- 免费。Linux是free(自由的,理解为免费也可以,但免费只是自由的附属品罢了)的。绝大多数Linux发行版都是免费的——如果你想自己定制一个发行版也可以,还是免费。这比收费或者盗版的Windows强多了。
对比一下
Linux像是个超强的工具箱,你可以从中找到各种工具,还可以自己发明新工具。Windows更像个自动挡的汽车,一踩油门就走了,一踩刹车就停了,你要想玩改装也完全可以。
从学习的角度来说,Linux鼓励你找解决问题的办法,Windows鼓励你找别人做好的解决问题的软件。而从消费群体来说,Linux假设它的用户用户知道自己想要什么,也明白自己在做什么,并且会为自己的行为负责,Windows假设它的用户用户不知道自己想要什么,也不明白自己在做什么,更不打算为自己的行为负责。
推荐
当然时根据自己的需要选择系统了。如果你想知道你的计算机都干了什么,或者你想从事一些专业的工作,比如编程,配置防火墙之类的网络设备,Linux绝对是不二选择。如果你只想打打字,看看电影,聊聊天,Windows更合适。
什么?你说Mac?我买不起……