当然终归还是那句话,如果作为一个程序员,你始终还在纠结哪个平台到底更爽,那么首先你就不是一个合格的程序员,这是我们通常的看法。但是正如那句老话“工欲善其身必先利其器”所说,好的工具能够能够事半功倍,而就我的体验来说,macOS是我能够在工作、生活、学习之间寻求最完美平衡的解决方案。
当然你要说你做运维的,那么我无话可说,如果你说macOS没有Linux下deb/rpm/pacman/portage等等丰富的包管理,brew毕竟用起来很痛苦,macOS下至今缺少系统级别的包管理工具。
macOS算是正统的Unix血统,虽然Unix演化树上你一般看不到她的身影
苹果公司早早地让macOS通过了Unix的认证,虽然因为各种原因,即使macOS基于Unix的FreeBSD分支,并且Darwin内核也是开源的,但是毕竟macOS桌面不是开源的,所以到现在macOS也没办法进到Unix各大演化树上。
但是macOS几乎继承了所有Unix的优点,各种shell环境,而且都是bash环境,和Linux基本上都可以无缝连接。Java/PHP/python/Ruby/C/C++环境可以说是应有尽有。
macOS拥有更加美观的桌面,更稳定的环境
这点是毫无悬念的,我的MacBook Pro几乎常年不关机,除非更新系统,而且非常稳定,也基本没遇到什么糟心的问题,美观、大方的桌面环境,这一点是Linux所比不了的,当然我相信你也能列举出一大堆Linux的优点。比如做服务器,Linux强大的优势就体现出来了,脚本自由组合工具的能力Linux也具备更大的优势,平铺式的桌面,总是能获得最新的软件更新,很多开发者把用过的命令行都存储在~/.bash_history中,加上自己的工具查询优化,效率依然非常高。
但是macOS我同样能列举出一大堆的优点,比如对于我来说keynote是必须的,WebStorm和IDEA在macOS下体验更棒,MWeb/Ulysses/Alfred/Final Cut Pro/omni/Parallel Desktop等等这些工具都是Linux我没法获得的。所以相对于我来说,这些的价值超过Linux能给我的,毕竟我不怎么倒腾服务器,不怎么倒腾运维。
macOS拥有更丰富的应用生态,能同时兼顾好生活、学习、工作
更重要的是macOS能够很好的兼顾好我的学习、生活、以及工作,macOS是我工作的好搭档,我做Web开发,主要工作语言是Java,平时自己C/C++/Lisp/Python都有涉及,虽然做深度学习我的Mac显卡不够,但是基本使用是够的,毕竟要想做好,几块1080显卡是必要的,那就可能要搭工作站级别的电脑了。
而且我的日常学习、生活,都可以用macOS来实现,这一点Linux就没办法很好的兼顾,毕竟Linux是纯生产力工具,而macOS则是在娱乐工具和生产力工具之间寻求了一个相对完美的平衡。
因此一定要投一票的话,我把这一票投给macOS,不过就我日常使用来说,生活、工作中主要用macOS,学习中我还会用到Arch Linux/Fedora/Debian/Gentoo Linux这些Linux发行版,而且使用的时间占比并不小,但是当然这些环境花费时间也不少,所以更多的是学习和研究,少数时候工作环境用到。
用过Linux阵营的ubuntu,和OS X,windows,论系统的话,综合上还是OS X好用,尤其是包管理上,还有大爱的trackpad,mac的触摸板的精准度要高出很多,综合性总体划分的话OS X > Linux > windows。
开发上最让人喜欢的是Linux和OS X的软件包上,你能想到的大部分都可以在包管理器上找到,几乎几条命令就能解决:
1.比如你要安装个git
在mac上你可以在终端用brew install git这一条命令直接搞定
ubuntu你可以用apt-get install git 来搞定这个软件
windows你可能需要先找软件,再下载软件,再安装。
2.安装mysql也是
在mac上你需要在终端敲个命令brew install mysql就可以了,(我记得这里好像需要安装三个),当然你可以下载dmg安装包来安装
OS X
有人反应它有个很好用的搜索工具spot light,这种工具多的是,Linux命令行的搜索也相当强悍,win之前自带的搜索做的的确不好,以至于我养成自己找的习惯,现在的系统搜索速度已经大大改善,而且还有像everything这种工具可以用,几乎是秒搜
很多软件需要收费,但质量也是非常棒的,比如最近做自媒体想用视频处理方面的软件,mac的final cut pro,看下图,天呐,好贵,像我这种已经习惯win和linux免费的软件,也尽量去找些免费的来用,比如imovie
图像设计这块是很不错的,同事只要钱不是太拮据的,都喜欢pro版的macbook或iMac,我用的是17年的macbook air,平常用没发现有什么声音,用imovie导出视频的时候,开始响了,才发现两个性能差距。
Linux
Emacs和Vim就是个神器,专业程序员最喜爱的编辑器之一,虽然先入为主我更喜欢sublime,但ubuntu对它的支持并不是太好,比如中文无法输入,需要在其它地方写下来,然后复制进去,记得好像是14和16版本,现在不知道修复没有。
大量开源的优秀开源工具,相互结合用来开发,会越来越得心应手
装Linux的一般都是pc机,虽然没有mac的trackpad,但大部分开发人员都是用快捷键操作的,速度和鼠标及trackpad完全不在一个级别上
这个其实也跟用的语言有关,写过Java,PHP,Ruby三种语言,分别说下
Ruby
Ruby铁定了OS X好用,现在最新版改名了,叫MacOS High Sierra。
先说Windows,写ruby如果没有特殊癖好的话,直接上Linux或macOS,因为用windows写ruby,你会遇到许许多多莫名其妙的问题,由于大多ruby程序员都是选用另外两套系统的,所以网上能找到的解决方案也少,很可能你会遇到某一个问题,网上找不到解决方案的情况,项目至此搁浅,或者另某出路。
PHP
只用过win版的,写的代码也不多,很浅的那种,所以这个不好比较,win版没觉出有什么不好用的地方。只是服务器一般用Linux比较多,在Linux上开发有助于对服务器环境的熟悉,这个道是真的。
Java
最开始在win版上开发几年,最近才在mac上用了段时间,两上差别也不是太大,win版的操作,相对麻烦了些,可能熟悉了win版的缘故,Linux某些发行版,还是会有兼容性问题,有次同事安装了个非主流的版本遇到了。我们常见的系统一般不会有这种问题的,生态都很完善,而且大部分都是定期更新。
如果你用的不是mac机器,经常写代码的话,你用鼠标那只手会非常的累和疼,需要注意鼠标手,我的右手就经常疼的不想碰鼠标,用mac的trackpad,手不会这么疼,只是用多了,手掌底部经常摩擦的缘故会有点不舒服。有同事告知他的手指头疼,和trackpad接触的那块面积,我倒是没出现过:)
有什么问题可以留言或评论!
以上,希望能帮到你,祝好!
看到有人说在windows下面开发条件是最好的,我简直乐喷了。
首先申明,没有什么是windows做不到的!!!所以不要再说这句话来反驳我!!!我只强调这句话的后一句——没有什么是windows能做好的!!!
不说太高深的内容,就最简单的前端开发,windows都做不好。node环境各种奇葩问题相比已经困扰了很多的windows前端开发工程师,为什么就是不行,为什么就是报错,为什么为什么为什么?不为什么,换个系统,啥问题都没有。
返回主题,是linux和macos哪个写代码更舒服?这取决于两个问题,第一,你是否更加依赖图形界面。如果是,macos当然更加舒服。第二,你是否依赖于linux的独特特性,如果是,linux自然更好。
但对于绝大多数工程师来说,两者没有什么太本质的差异。有人说mac的核心过于老旧。这话没错,但是绝大多数场景并不需要那么新的核心。
我个人更偏向于macox。
第一,非常优秀的支持4K屏幕以及多屏幕输出。从显示器上看更加舒服。
第二,最优秀的文字渲染能力。
第三,最优秀的颜色色准输出能力。
第四,配合 brew 实现命令行包管理,满足正常工作需求。
第五,非常优秀的虚拟机软件加成,可以随时使用各种linux发行版。当然,也可以装windows,并且体验绝佳。
第六,更加严格的命令行模式,培养自己良好的命令养成习惯。
但如果没有mac电脑怎么办?deepin linux 系统很不错。作为主力办公系统非常优秀。不过最近系统更新到15.7貌似小问题比较多,应该不久就全部修复了。至于其他发行版,见仁见智。
最后,珍爱生命,远离 windows。
======追加==某人的教程的开篇===
在 mac 或者 linux 系统上,一般都已经自带了 python 2.7 的版本。但是我们是基于 python 3.5+ 的版本进行开发的,我个人使用的是 python 3.6。所以,我们需要对开发环境进行一些配置。
一般,我们都可以使用命令行来进行安装
mac
brew install python3
Ubuntudebiandeepin 等 linux
apt install python3
redhatcentos
yum install python3
archlinux
pacman -S python3
windows
请到官方网站下载 python3 安装包,然后进行图形界面的下一步下一步的安装。(一对比,怎么就这么诡异-_-|||)
Linux是Unix旁系,OS X(macOS)是Unix直系.
我个人两款系统都有接触过,Linux的操作类似于DOS系统.虽然Linux也有图形化界面,但开发的还不够完整.macOS相对来说美观很多、在常用软件方面也是macOS版更多.
我之前也有在Linux系统下做C的开发,由于那种目录式的操作,需要开发者有着高超的记忆里.相比之下,macOS这边则好了很多.
但提到哪个系统敲代码更爽,当然还是Linux.因为日常操作都需要键入命令的系统,岂不是和大神更配?
macOS相比于Linux,在平面设计、视频制作方面有着先天优势.如果是Linux好,一般也是针对Windows来说,个人认为舒适程度的话:macOS最为舒适.
当你使用过Windows再来使用Linux时,明显感觉到了系统前所未有的流畅和轻快.但和macOS来比还是不值得一提.
这个世界上什么操作系统最好?是Unix.你可以把macOS就当作Unix来使用,Linux怎么说也差了点距离.