以前写的,怕引来口水战,干脆不发。这段时间面试了十来人,用Mac的开发水平明显高于Windows的,挺多感想的,于是改改发了吧。
    
Windows: 对普通用户而言体验最友好,对开发者体验最差;
Linux:开发者的天堂,普通用户的噩梦;从嵌入式开发到应用开发,一应俱全;
Mac:WEB开发与设计师首选,嵌入式开发不推荐;对普通用户而言Windows各有优劣;
 
 
    为什么Linux是开发者天堂?
    软件开发有很强的实践性,所以高质量的源码、技术文档对于开发者的成长是决定性的。假如一个人想了解操作系统原理,却连源码都看不到,改改操作系统都做不了,我不相信这个人能理解得了操作系统原理,而由于缺少可实践的源码,所以技术文档也只能隔靴搔痒,绕着路子尝试把问题讲清楚,而不是放出可执行的示例源码。而这……正是Windows的现状。
    与之相反,Linux构建在开源世界上(我就不去争自由软件跟开源软件的不同了,不是本文主题),正好就没有上面的问题。稍微懂行的人都知道Linux开源代码质量之高远不是Windows上流传于网络上的源码所能匹敌的,而这几年开源世界的火爆,对于长期浸泡在Linux上的人更是一种福音。另外一个影响效率的则是命令行,属于会用的人不用解释,不会用的人解释也没用,不展开。。。
    总的来说,一个Linux开发者,想了解啥都能轻易找到这个世界上最优质的资源,拿到后可以立马实践;而一个Windows开发者,则在这方面完全处于劣势,这一来一回,成长上该有多大差距?
    绕了一大圈,终于要讲使用Mac的开发者的开发水平为什么会高于Windows开发者了。很简单,Mac是类UNIX系统,所以Mac开发者找的资料跟Linux开发者不说100%,也有70%,80%的重合,自然成长效率会比Windows高。
 
    顺便写下本人在这几个系统方面的经历:
    就我个人而言,大四自学Linux后,一直到去年8月,所有的开发工作都是在Linux完成(当然,工作内容只有Windows工具的就没办法了)。当时决定换成Linux只有一个理由,我从大一到大三一直在想操作系统原理和怎么写一个操作系统这两件事情?找来Windows的系统编程,MFC,VC,驱动开发之类的书来看,却总觉得不得要领,一度怀疑是不是自己太笨了。后来由于搞嵌入式开发,使用Linux,需要先适应,从《鸟哥的LINUX私房菜》,到《UNIX环境高级编程》,接着又看Linux的源码,学习《LDD3》,仿佛打开了一个新世界的大门,才明白,并不是我太笨了,只不过是Windows把简单的复杂化了,同时缺少可实践的开源代码做研究。
    去年8月转做WEB开发,之前买的Mac发现是类UNIX系统,因此一周不到就能适应整个系统,决定在上面先开发一段时间试试。平时也需要用些图形处理和日常办公,这些明显纯Linux是弱项,而Mac做得很好。于是一段时间后,确实感受到WEB开发上,Mac上的开发体验会好于纯Linux。Mac主要胜在两点:1. Mac的brew包管理一致性高,并且包很新,包依赖问题容易解决 2.图片处理在WEB开发中的需要比较频繁。
    
    终!!!

Windows,Mac与Linux哪个更适合开发者?的更多相关文章

  1. 微软开放技术发布针对 Mac 和 Linux 的更新版 Azure Node.JS SDK 和命令行工具

    发布于 2013-12-04 作者 Eduard Koller 这次为我们使用Linux 的朋友带来了更多关于部署云上虚拟机的消息.今天,微软开放技术有限公司 (MS Open Tech),想与大家分 ...

  2. 几款抓包工具在windows,mac,linux下的支持分析

    抓包工具的使用 几款抓包工具在windows,mac,linux下的支持分析 抓包工具简介 Chrome/Firefox 开发者工具: 浏览器内置,方便易用 Fiddler/Charles: 基于代理 ...

  3. 在eclipse里配置Android ndk环境 适用于windows mac 和linux(转)

    在eclipse里配置Android ndk环境 适用于windows mac 和linux(转) 2012-02-27 13:02:16|  分类: android |  标签:java  prog ...

  4. webRTC源码下载 Windows Mac(iOS) Linux(Android)全

    webRTC源码下载地址:https://pan.baidu.com/s/18CjClvAuz3B9oF33ngbJIw  提取码:wl1e  Windows版:visual studio 2017工 ...

  5. 如何选择一款适合自己操作系统、Windows、Mac还是Linux?

    如何选择一款适合自己操作系统.Windows.Mac还是Linux? 作者:我们都很努力着 简介:电脑已经逐渐离不开我们生活,但是如何选择一个我们最佳,最适合的电脑操作系统就成了一些困难选择人士的一个 ...

  6. SSH客户端,FinalShell服务器管理,远程桌面加速软件,支持Windows,Mac OS X,Linux,版本2.6.3.1

    FinalShell是一体化的的服务器,网络管理软件,不仅是ssh客户端,还是功能强大的开发,运维工具,充分满足开发,运维需求. 用户QQ群 342045988 Windows版下载地址:http:/ ...

  7. [.net 面向对象程序设计深入](5)MVC 6 —— 构建跨平台.NET开发环境(Windows/Mac OS X/Linux)

    [.net 面向对象程序设计深入](5)MVC 6 —— 构建跨平台.NET开发环境(Windows/Mac OS X/Linux) 1.关于跨平台 上篇中介绍了MVC的发展历程,说到ASP.NET ...

  8. BesLyric 全新版本下载 ( windows \ mac \ linux )

    导读 BesLyric , 一款专门制作 网易云音乐 LRC 滚动歌词的软件! 搜索.下载.制作 歌词更方便! 很荣幸地,自 beslyric 2017 年开发推出以来,得到了很多云村村民的肯定,现在 ...

  9. 微软宣布.NET开发环境将开源 支持三大操作系统(windows,Mac OS X和Linux)(转)

    微软周三(11月12日)公布了.NET开发框架开源计划.公司拟将这长期以来只能运行于Windows系统下的开发环境,通过GitHub开源,以实现跨平台支持Mac OS X和Linux.根据微软公布的计 ...

随机推荐

  1. IntelliJ IDEA(一) :安装

    前言 我是从eclipse转IDEA的,对于习惯了eclipse快捷键的我来说,转IDEA开始很不习惯,IDEA快捷键多,组合多,记不住,虽然可以设置使用eclipse的快捷键,但是总感觉怪怪的.开始 ...

  2. 应用教程之帕克西AR虚拟试妆3D动态美妆

    帕克西技术团队通过对美妆行业深度调研,凭借自主研发的人脸识别与面部追踪等技术,打造的超现实AR虚拟试妆应用已成功上线,内置万千妆容,包含口红.眉毛.睫毛等,一点即可试妆,就像照镜子一样简单. 那么,帕 ...

  3. FreeRTOS--疑难解答

    此章节涉及新手最常遇见的3种问题: 错误的中断优先级设置 栈溢出 不恰当的使用printf() 使用configASSERT()能够显著地提高生产效率,它能够捕获.识别多种类型的错误.强烈建议在开发或 ...

  4. Python搭建Web服务器,与Ajax交互,接收处理Get和Post请求的简易结构

    用python搭建web服务器,与ajax交互,接收处理Get和Post请求:简单实用,没有用框架,适用于简单需求,更多功能可进行扩展. python有自带模块BaseHTTPServer.CGIHT ...

  5. ChromeExtension那些事儿

    Chrome Extension是什么呢? 简而言之,就是Chrome扩展,它是基于Chrome浏览器的,我们可以理解它为一个独立运行在Chrome浏览器下的APP,当然核心编程语言就是JavaScr ...

  6. 对deep learning的第一周调研

    下面仅是我的个人认识,说得不正确请轻拍. (眼下,我仅仅看了一些deep learning 的review和TOM Mitchell的书<machine learning>中的神经网络一章 ...

  7. javascript变量:全局?还是局部?这个得注意

    在JS中.是没有块级作用域的 举两个个样例: if语句块:     if (true){ var name='Ling'; } alert(name); 输出:Ling for语句块; for(var ...

  8. 《Linux Device Drivers》第十八章 TTY驱动程序——note

    简单介绍 tty设备的名称是从过去的电传打字机缩写而来,最初是指连接到Unix系统上的物理或虚拟终端 Linux tty驱动程序的核心紧挨在标准字符设备驱动层之下,并提供了一系列的功能,作为接口被终端 ...

  9. iOS8 UILocalNotification 添加启动授权

    猴子原创.欢迎转载.转载请注明: 转载自Cocos2Der-CSDN,谢谢! 原文地址: http://blog.csdn.net/cocos2der/article/details/46810357 ...

  10. Android ImageLoader(Android-Universal-Image-Loader)【1】概述及使用简单介绍

     Android ImageLoader(Android-Universal-Image-Loader)[1]概述及使用简单介绍 一,前言:为什么要引入Android-Universal-Imag ...