我觉得两者共同点都蛮多的
所以如果不是专门开发苹果软件的话,比如只是开发前端后端,那么并不需要买两台电脑,而是买一台 Windows PC 再装一个 Linux 即可,甚至 Linux 都可以装在移动硬盘上,开发的时候从移动硬盘启动,想玩游戏就正常启动。
当然对于在公司上班的程序员,除了开发环境外,还要考虑办公环境。这方面两者差别多大我就不清楚了。
1
ShadowPower 300 天前
前端基本上一样,后端有时候有坑,取决于具体的开发内容。
如果不开发苹果软件,还真用不上 Mac 。如果喜欢可以选,但实际上在开发方面没有什么特别的优势…… |
2
Tompes 300 天前 2
实际体验其实是 linux (pc) > mac , 毕竟可以加内存(不考虑开发苹果软件的话
甚至 linux+proton 已经基本可以畅玩多数游戏了。。 |
3
billlee 300 天前 via Android
命令行并不一样,bsd 工具和 gnu 工具区别很大。虚拟化就区别更大了,涉及到网络的地方 bsd 实现和 linux 实现完全是两套不同的方案
|
4
reeco 300 天前
不涉及系统开发,没有区别。所谓的开发环境不就是 IDE + 浏览器吗
|
5
leokun 300 天前
除了 IDE 和浏览器之外,还要考虑一下其他软件,比如什么数据库管理软件,redis 管理软件,代理等等
|
6
godsoul 300 天前
不说别的,休眠功耗就没有拼的过苹果的
|
7
allenwalker233 300 天前
仅就标题回答的话,主流一点的 linux 发行版的覆盖场景更广一些,即前人为你踩过坑可以借鉴的经验多一些
|
8
zsh2517 300 天前 1
1. 命令行:同 @billlee #3 ,尽管很多宣传(以及吹 mac 的人)说 mac 能有一个接近 Linux 的开发体验,但是实际用着,bsd 系命令行工具和 gnu 系差别不小,熟悉 Linux 了很多地方不习惯(我 brew 装了一套 gnu 系的工具);二选一的话我选择 windows + wsl ,好歹人家是真的 linux 。另外 brew 感觉不咋好用(相较于 win
2. 虚拟化和容器: 2.1 docker:linux docker 是原生运行,而 win/mac 是虚拟机运行 linux ,然后里面跑 docker 。这一点就不如 linux ,和 windows 在一条线上。但是 windows docker desktop 基于 wsl ,我印象可以从 wsl 直接修改容器配置,而 mac 的话想在创建后修改挂载之类的很麻烦。 2.2 Apple Silicon 芯片属于 ARM 系,虚拟机、docker 都需要针对的镜像和工具,或者走转译运行 x86 。用起来经常遇到 docker 镜像没有/架构不兼容问题;另外虚拟机换源需要换 ubuntu-ports, armbian, archlinuxarm 这种东西。 3. 游戏:公司电脑,没装过游戏,不清楚。 |
9
zsh2517 300 天前
|
10
zsh2517 300 天前
RE:比如只是开发前端后端,那么并不需要买两台电脑,而是买一台 Windows PC 再装一个 Linux 即可
在配置允许的情况下,对我来说最舒服的是 windows + WSL 。 至少对我来说,大部分时候用 Linux 主要是为了『和服务器环境一样』、『 Linux 系命令行用着舒服』、『 docker/xx/xxx 生态』等等,应该没多少人为了 Linux DE 用 Linux 。 这个时候 WSL 恰好提供了一个基本打开 即用的虚拟机,还能结合 windows 提供的 XRDP 直接跑 GUI 程序,基本上是最优解了 |
11
IvanLi127 300 天前
@ShadowPower 如果是 web 方向, 我觉得开发后端是一样的,尤其是和服务器基本一样。开发前端就难了,设计稿这类东西如果不是 web 版的,就得想办法装软件看。我以前还在 windows 上标注好导出 pdf 回 linux 看
|
12
ShadowPower 300 天前
@IvanLi127 突然想起来还有这事,我已经有 3 年的时间都在看 Web 版的设计稿了……
|
13
IvanLi127 300 天前
@ShadowPower 我好像二创了 op 的问题,🤣忽略我,我说编码外的去了。🤣如果纯写代码这部分,后端是不完全一样,前端是一样的。
|
14
param 299 天前 via Android
最大的不同是包管理的不同,linux 和 linux 之间的区别也很大,这么多发行版。从包管理来看,Mac 在众多的 Linux 之间也不怎么样吧
|