很多大学才毕业的推友经常问我
哪个平台才适合开发?
我今天给大家分享一下 Windows、macOS和Linux三个平台的优缺点和适合的开发工种
Windows优点:
1. 软件极度丰富,基本上所有软件都有Windows的版本,不会遇到软件生态的问题
2. 游戏驱动很强:适合开发者换一下脑袋,当然这个也是缺点,哈哈哈哈
3. VSCode生态不错:VSCode这几年基本上把Emacs/Vi的开放插件生态学过去了,基本上日常的开发都没有问题
Windows缺点:
1. 流氓软件太多:你很难避开流氓软件,各种广告、弹窗和擦边新闻,影响开发心情
2. WSL: 虽然WSL已经有很强的进步(微软版本的Wine),但是WSL只适合安装一些pip和npm的包,做前端开发没问题,底层开发和Linux真实环境差太远
Windows平台适合的开发者
安全从业者、办公软件开发、游戏开发者和普通的Web开发者
macOS优点:
1. UI/UX很强:苹果擅长设计,所以界面细节和交互细节做的很好
2. 开发环境干净:因为苹果审核,基本上不会遇到Windows那样的恶心环境
3. 开发所需软件:基本都有了,满足日常开发没问题
macOS缺点:
1. Homebrew: 包管理太弱了,依赖冲突和环境隔离的管理和Linux的灵活性差太远了
2. 设计别扭:苹果总是有一些奇奇怪怪的设计,比如窗口大小控制,全屏窗口自动切换工作区。虽然我用了两年的 hammerspoon, 我还是不习惯苹果的各种底层限制
3. 底层API:如果你要折腾底层开发,苹果上是没有的,苹果只给你看他认为你需要的API,不要和Linux比较了,就连Windows的开放层度都比不了
适合的开发者
macOS生态的开发者,Web开发者,多媒体开发者,设计工具的开发者
Linux的优点:
1. 底层极度开放:从内核、驱动到桌面环境和应用开发,只要你的能力够,你能学习到世界上最底层的技术
2. 窗口管理器多样:除了传统的Gnome、KDE、Xfce外,还有300多个窗口管理器,可以给你极致的定制体验,你可以做到全键盘的操作定制环境
3. 包管理:任何语言的包管理都可以在Linux上做到非常完美的控制,没有你安装不了的开发库,基本上一条命令就可以轻松体验,而这在Windows和macOS上还有不小差距
4. 全键盘:只要深度定制,可以实现全键盘的编程环境定制,当你有一个全键盘定制环境,你的编程效率最少是别人的10倍
Linux的缺点:
1. 默认配置要折腾:没有windows和macOS那样的开箱即用,学习门槛较高
2. 不适合打游戏:虽然有Steam平台,但是驱动和Windows差距明显,当然热爱写代码的推友也可以认为是优点
3. 常用软件生态不足:只有微信、QQ、百度这些,常用软件生态没法和macOS比,更不用说Windows了
Linux适合的开发者
底层系统开发者、Web开发者、服务器开发者、安全开发者
很多人说Android平板呢?我觉得只适合像我这样便携办公吧,最多云端 Vibe coding 一下
https://x.com/manateelazycat/status/1987724170013339917?s=35