Windows、Mac與Linux哪個更適合開發者?
以前寫的,怕引來口水戰,乾脆不發。這段時間面試了十來人,用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開發中的需要比較頻繁。
終!!!
相關文章
- python和Java哪個更適合web開發?PythonJavaWeb
- Python和Java,哪個更適合web開發?PythonJavaWeb
- Python開發到底選擇哪個系統合適?Linux還是Windows?PythonLinuxWindows
- Safari 與 Edge:哪種瀏覽器更適合 Mac?瀏覽器Mac
- 軟體測試與開發崗位對比,哪個更適合你?
- PHP和Python哪個更適合Web開發?Python學習!PHPPythonWeb
- Linux哪個發行版本適合初學者?Linux基礎入門!Linux
- 看板與Scrum:哪個更適合你的團隊?Scrum
- PuerTS和HybridCLR哪個更適合開發微信小遊戲遊戲
- 初學者學習Linux選擇哪個發行版本合適?Linux
- IT職場:DBA與開發者哪個更值錢?MA
- GO vs Python哪個更適合做web開發?GoPythonWeb
- 福布斯:Salesforce和ZohoCRM,哪個更適合你?Salesforce
- 一個更適合Java初學者的輕量級開發工具:BlueJJava
- Linux發行版本眾多,選擇哪個最合適?Linux
- 哪款報表工具更適合行業軟體開發商?行業
- CRM和小企業CRM,哪個更適合你?
- Python和R哪個更適合機器學習?Python機器學習
- GO VS Python,哪個更適合機器學習?GoPython機器學習
- 哪個平臺更適合iOS超級簽名?iOS
- Linux發行版本哪個適合新手學?Linux雲端計算入門Linux
- Python、Java、C、C++哪個更適合人工智慧?PythonJavaC++人工智慧
- WGCLOUD VS Prometheus :哪個監控系統更適合你GCCloudPrometheus
- CRM系統和釘釘哪個更適合企業?
- 如何選擇更適合你的 Linux 發行版?Linux
- 深入瞭解這些Java框架,看看哪個更適合你?Java框架
- Linux有哪些版本?哪個比較適合新手使用?Linux
- 幾個適合Java開發者的免費IDEA外掛JavaIdea
- 獻給機器人發燒友:十大開源機器人專案哪個更適合你?機器人
- 資訊化 VS 數字化,哪個更適合當代企業?
- 自媒體選圖文還是視訊?哪個更適合新人?
- 個人微信和企業微信,哪個更適合管理客戶呢?
- Windows、Linux、Unix、Mac OS X系統哪個更好用?WindowsLinuxMac
- 最適合於初學者的 Linux 發行版Linux
- 部落格和網站賺錢的背後技巧?哪個更適合你?網站
- 工作流自動化和RPA自動化,哪個更適合你?
- 不是計算機專業,哪個專業更適合學習web前端計算機Web前端
- TensorFlow與PyTorch之爭,哪個框架最適合深度學習PyTorch框架深度學習