目前主流的操作系统平台大部分是 Windows 和 MacOS,当然还有一个 Unix/Linux。

我们分成 2 部分来说说这个事情。

因为 Linux 是 Unix 的一个衍生版本,实际上还是有一些不一样的,但是很多服务器都会使用 Linux 部署,而且不少命令都能通用,因此我们认为 Linux 和 Unix 都是大致相同的。

至于一些小众的操作系统,我们就不在这里讨论了。

问题

既然要开发,就难免要选择开发用的电脑。

争议最多的就是到底是选 Windows 还是 MacOS。

结论

我的结论就是你现在用什么就用什么吧,没有必要单独换一个。

如果你要开发 iOS 程序,那么就只能跑 MacOS 了 。

如果你要跑 NodeJS,那么 MacOS 可能会有点优势,但是随着 Windows 已经有了 WSL 了,其实也都差不多了。

当然实际使用的时候还是有些不同的。

考虑的因素

计算机都是由硬件和软件组成的,我们先考虑考虑硬件。

硬件

但是主要考虑的点是 CPU,内存,硬盘。

简单来说就是越大越好。

CPU,如果你能跑服务器 CPU,那肯定性能比 i3 要好不少。

内存:32G 不嫌多,64G 跑着玩。

硬盘:目前固态是标配,但是还是不要太小。256 G 的硬盘有点小了,如果你再云同步下,下载些库什么的,很快就捉襟见肘了。相信我,去硬盘上移空间比死都难受。

显示屏:通常来说 MacOS 的显示屏标配要比 Windows 好一些。当然在 Windows 上也可以通过加装显卡来解决。在开发的时候也会使用多显示屏开发,直接盯着笔记本看的情况也不多了。

软件

软件部分要说的就相对多一点点了。

主要问题纠结在那些是 Windows 可以用的,那些是 Mac 可以用的。作为开发人员来说主要考虑的就是环境的兼容性和可能出现的一些问题。

Linux 环境

一个经常比较诟病的问题就是 Windows 上没有办法执行 Linux 的命令行工具。

在 Mac 上直接用就可以了。

殊不知,现在已经有了 WSL 了,Windows 已经直接给了你一个纯 Linux 操作平台了。

在这上面你可以直接运行 Linux 的相关命令,也可以直接部署。

回车换行

Windows 和 Linux 的回车换行表示方式是不一样的。

Windows 需要 \r\n, 而 Linux 只需要 \n。

这会导致一些程序在处理回车换行的时候出现问题。

对代码来说,通常问题不大,因为 Git 目前都是使用 \r\n 保存文件的。这个问题在以后有机会聊到 Git 的时候我们再展开说吧。

XCode

如果你要开发 iOS,最好的办法就是在 Mac 上开发。

Windows 上估计不是那么容易让你实现的。

通用软件

Windows 上有大量的通用软件在使用。

大部分常用的通用软件都有 2 个版本,但是 这 2 个版本的很多快捷键是不相同的。而且用得比较多的通用软件可能在 Mac 上是一个阉割版本,一些功能可能用不了。

有些软件还只能在 Windows 上面用,这个主要是因为一些老的动态库没有办法在 Mac 上加载。

有些优秀软件又只能在 Mac 上用,这个也是非常蛋疼的。

NodeJS 问题

NodeJS 和 JS 是目前前端用得非常多的。

Linux 上比较容易创建 symlink,或者叫做符号连接。

一些 NodeJS 的库,使用了 symlink,这个会导致一些项目没有办法在 Windows 下进行编译。

通常解决办法就是直接在 WSL 上重新编译运行了。

快速安装

如果你用过 Linux,你可能对 dnf 或者 yum 安装非常开心。

因为你不需要了解你安装的软件在那里,直接从库里面安装就好了。

在这个方面 Windows 做得还是比较弱,没有太好的办法进行快速安装。

大小写敏感

在 MySQL 数据库中,Windows 是大小写不敏感的,所有从 Linux 导入的数据库,在 Windows 上都会被转换为全部小写。

如果你是按照 Linux 的大小写敏感设计数据库的话,那么恭喜你,有些代码会出问题。

当然这个是可以从数据库设计约束中解决,在设计表和库的时候,必须全部小写来避免这个问题。

上面提到的一些问题都会在开发中遇到,不是完全没有解决办法,但是有时候解决办法不是那么好用。

如果实在没有办法解决,那么只能让数据库跑在 WSL ,或者 Docker 容器里面了。

如何思考

如果你是重度后端开发,其实影响不是非常大。

如果你是重度 JS 开发使用者,那么很有可能坑比较多。

开发电脑用 Windows 还是 Mac - 工作和面试 - OSSEZhttps://www.ossez.com/t/windows-mac/13895

开发电脑用 Windows 还是 Mac相关推荐

  1. 解析mac苹果电脑与Windows电脑的区别

    Mac 它是苹果公司自1984年起以"Macintosh"开始开发的个人消费型计算机,如: iMac . Mac mini . Macbook Air . Macbook Pro ...

  2. 解析mac苹果电脑与Windows电脑的区别。他们各自有什么优势?

    Mac 它是苹果公司自1984年起以"Macintosh"开始开发的个人消费型计算机,如: iMac . Mac mini . Macbook AIr . Macbook Pro ...

  3. Android开发:Android Studio常用快捷键汇总(Mac电脑和Windows电脑快捷键的对比)

    用Mac电脑的时候,需要注意的就是键盘的一些按键和Windows电脑键盘按键的区别,同样的,使用Mac电脑进行Android开发,一些常用的快捷键会和Windows电脑的快捷键有所不同,本节就来分享一 ...

  4. 如何windows远程控制mac电脑

    VNC (Virtual Network Computing)是虚拟网络计算机的缩写.VNC是一款优秀的远程控制工具软件,由著名的AT&T的欧洲研究实验室开发的.VNC是在基于UNIX和Lin ...

  5. qt creator:一款能够在windows/linux/mac系统上开发c程序的IDE

    qt creator:一款能够在windows/linux/mac系统上开发c程序的IDE 下面是下载地址:http://download.qt.io/official_releases/qtcrea ...

  6. 6种电脑录屏工具,免费在线,桌面端Windows和Mac均适用

    如果你想做一个教程类博主,不管是游戏类的,科技类的,还是语言类的,你首先需要一个不错的电脑录屏工具.自自媒体大流行开始以来,对电脑屏幕录制的需求有不断增长.来自不同领域的专业人士,例如教育领域的专业人 ...

  7. 电脑怎么设置动态壁纸?关于Windows和Mac壁纸的设置方法

    为了让电脑桌面更加美观舒适,很多人都会给电脑的桌面设置自己喜欢的壁纸.图片壁纸很多人都会设置,但是电脑怎么设置动态壁纸?这是很多人的困扰.其实方法同样很简单,下面有关于Windows和Mac动态壁纸的 ...

  8. 电脑装windows和安卓双系统引导_属于黑苹果的时代已经过去了,或许以后MAC电脑上也无法装windows...

    在过去的WWDC在大会上,当苹果官方宣布以后可能会在MAC上使用自研芯片的消息之后,引发了很多粉丝的狂欢.但是在一些小角落里也有一些粉丝默默伤心难过,因为这意味着以后很有可能不会出现黑苹果了. 所谓的 ...

  9. Mac技巧之让U盘、移动硬盘在苹果电脑和Windows PC都能识别/读写,且支持4GB大文件:exFAT格式

    Mac技巧之让U盘.移动硬盘在苹果电脑和Windows PC都能识别/读写,且支持4GB大文件:exFAT格式 分类: Mac 2010-11-14 评论(10)  阅读(80681) Tags:  ...

最新文章

  1. java 数据合并算法_Java与算法之(11) - 合并排序
  2. 服务器备份文件ctf,GUET-CTF 题目备份
  3. [Everyday Mathematics]20150125
  4. python制表符_关于ROS运行python的一些问题
  5. hibernate4.2.1默认集成javassist-3.15.0-GA包的一个bug问题
  6. ios 仿微信,短信聊天气泡
  7. MATLAB 读取文件及数据
  8. a*算法的优缺点_垃圾回收的常见算法
  9. IDA保存修改的寄存器值
  10. heap堆(自己做菜)(空间很大),stack栈(餐馆吃饭)(能从栈获得的空间较小),static(全局变量和静态变量的存储),文字常量区,程序代码区,以及ROM,RAM,Flash
  11. myeclipse(eclipse)IDE配置
  12. DSP28335定时器
  13. 【JavaScript】支持js代码的博客有…
  14. Cox回归+Cox比例风险回归模型
  15. 软件开发培训学校四大培训标准,引领行业标杆
  16. layui 加载loding图标
  17. 判断抽样检验产品是否合格的步骤
  18. python实现网络与IP地址计算
  19. Xmind8 思维导图 使用教程
  20. 服务器上搭建Lepus——开源的数据库监控系统

热门文章

  1. R可视化会出现的问题1
  2. dlna 交互步骤-转发
  3. 选择背光需要对比哪些因素呢?
  4. Mysql数据库的分离和附加
  5. 企查查接口php版本~
  6. UE4制作插件的插件神器pluginCreator
  7. 第十二届蓝桥杯 2021年省赛真题 (Java 大学B组) 第一场
  8. 淘宝直播医美,颜值经济崛起,如何抢占流量风口
  9. M8系统开发手记(2)
  10. 搭建在线视频网站,怎么弄?