-
1 # 拉布拉斯
-
2 # 大學生程式設計指南
從事軟體開發多年程式設計環境始終不是決定能不能學好程式設計的關鍵,等於講不同的程式設計環境可能對於某些人感覺不一樣,但在使用者體驗上還是Mac更加舒適一些,因為蘋果公司的產品向來重視使用者的體驗,linux由於屬於開源社群的,在功能性上強一些,在產品方面會相對弱化許多。首先介紹下Mac和Linux發展歷史,瞭解一個作業系統的歷史能更好讀懂其特性,現在很多人都覺得Mac和Linux屬於一個分支出來的,從演變的歷史看屬於截然不同的兩個分支。
Mac和Linux發展歷史Mac屬於蘋果公司專屬的一個作業系統,整體架構顯示出獨特性,在瞭解特性之前首先要學習一個基本常識,微核心和宏核心兩種,像Linux屬於典型的宏核心結構,就是所有的硬體資源都是整合在一體,在資源不是很多的狀態這種模式會顯得非常舒服,但在資源不斷增加的今天宏核心已經越來越不適應當前時代的發展。Mac這個比較特殊採用了微核心和宏核心混合的方式,這也是蘋果系列的產品效能體驗非常棒的一個重要原因,在設計架構的時候顯得更加超前一些。回到微核心的方面多種資源分屬在不同的程序中,在使用的時候採用訊息傳遞方式在使用,整體講起來兩種架構各有特性,不能簡單的認為哪種架構更合適,但在硬體資源不斷提升的今天,微核心已經成為了一種趨勢,華為公司最近推出的鴻蒙系統採用的就是微核心架構,這是未來作業系統發展的一種趨勢。
Mac的誕生和喬布斯有著千絲萬縷的關係,由於Mac版本的迭代非常多,在這就不做一一的介紹,喬布斯離開蘋果之後成了一家電腦公司NeXT,打造一款帶作業系統的電腦,為了節省時間喬布斯選擇了使用卡耐基梅隆大學的Mach架構加上BSD程式碼作為這個作業系統的基礎,打造NeXTSTEP作業系統,後來喬布斯的NeXT被蘋果公司收購,喬布斯一同迴歸,而且帶著打磨近10年的NeXTSTEP作業系統,這就是蘋果Mac的技術前身,後來的iPhone都是在這個基礎上演化出來的,喬布斯對蘋果的影響不僅僅表現在產品上,在技術推動上也起到重要的作用,Mac架構典型的Mach和BSDFree結合的產物,微核心主要作用在使用者服務空間,在真正的核心資源還是採用宏核心的架構,但這種架構適應計算機未來的發展趨勢。
Linux屬於純正開源的作業系統,一群極致的程式愛好者共同打造的產物,由於屬於技術性很強的作業系統,所以在功能和效能上都有可圈可點之處,但由於過於程式設計色彩在產品設計方面眼中缺陷,但是由於程式碼是開源的,對於想研究作業系統的愛好者而言是天堂區,再加上缺乏統一方向部署,特別是計算機快速發展的時代,宏核心未來需要更多的結合微核心來工作,這方面Linux還是有所欠缺。
Mac和Linux各自特性Mac主要針對設計人員和商務人士,當然也可以在上面程式設計寫程式碼,很多程式設計師都有一個Mac情懷,總想著應該有一個蘋果的電腦,蘋果電腦主要在產品設計上以及生態鏈上都有保障,裡面很多程式設計環境都是自帶的,不需要像windows需要重新安裝許多環境才能夠進行程式設計,從舒適加程式設計易用性的角度考慮,Mac屬於首選系統。
Linux使用者大部分是開發者,因為其介面不是設計公司設計,所以在美觀度已經體驗上差的很遠,有些程式設計師甚至直接採用命令列,捨棄掉圖形介面,Linux主要使用者還是程式開發者,至於選擇哪種作為程式設計環境就要根據開發者自身的情況而定了。
-
3 # 追逐Python
對於初學者來說。首選mac除了寫程式之外還跑其他的軟體,在linux哪裡有這麼多軟體支援啊。神級大佬才會在linux上直接開發。一般都是作為服務端也用不到桌面那類東西。反正我linux只會部署專案和一些簡單的操作。開發我真的不會。在win或者mac弄好專案扔到伺服器上執行就行了。
-
4 # 江河2016
linux適用於x86,arm,mips,risc-v,dsp,soc等各種指令集平臺上進行開發。
mac和win程式設計師只能原生開發x86上的應用,其他平臺上的,只能交叉編譯加模擬了,那開發和適配效率,猴急抓狂也白搭
-
5 # 林老頭兒131
正好這兩天對這個問題有深刻體會。
建議正常使用win系統,一些日常軟體真的win比較好。
對於需要linux的,虛擬機器,雙系統,騰訊雲,阿里雲都有,在win上面直接ssh連線。
-
6 # 大象亂彈
怎麼說吧,盲目吹mac適合程式設計的都是垃圾程式設計師的標誌了。
除非你有apple系的需求,否則現階段,通用性最強的是windows。其次是linux,當然,具體還是看你做什麼開發。
-
7 # LegendaryMK
這個看你想做什麼程式了,網頁但是無所謂,桌面應用跟系統綁死了,什麼平臺就得用什麼系統,手機app安卓無所謂,三個都一樣,就是win下邊除錯ndk麻煩點,ios必須用mac.
-
8 # AmazingDICE
Windows: 對普通使用者而言體驗最友好,對開發者體驗最差;
Linux:開發者的天堂,普通使用者的噩夢;從嵌入式開發到應用開發,一應俱全;
Mac:WEB開發與設計師首選,嵌入式開發不推薦;對普通使用者而言Windows各有優劣;
-
9 # dingle
看你做什麼開發了,做原生桌面程式,依賴作業系統的,那沒得選嘍。如果是做跨平臺的系統開發,Linux首選了,開放的環境讓程式設計師無拘無束,要啥有啥。
-
10 # 大洋一生1
作為曾經的Linux桌面愛好者,目前上班用Mac下班用win的人,建議如下。推崇linux和mac的無非推崇的是原生的shell。如今的Windows早已經具備各種強大的shell,甚至直接跑Linux。再加上docker等虛擬化技術,基本上都沒啥區別了。考慮到你不光要寫code,可能還需要寫寫文件,畫畫圖,收發下郵件。所以一臺配置比較好的win應該是首選。Mac也不錯,軟體生態略有不同。Linux就算了,太偏科。
-
11 # 小馬哥的鱷魚創業
剛好3臺電腦 ,win Mac linux都用。辦公 win ,office和印表機方便。設計之類的Mac好,Linux 的話 如果不是伺服器 用途就不用。 程式設計的話 其實差不多,現在我Python 用 anaconda整合開發環境 配置環境變數 3個系統都有 配置方便。php也有 apache MySQL 等 整合開發環境 也不用怎麼配置 很方便。只是win 太吃記憶體和處理器。所以平時用Mac最多
回覆列表
其實兩個系統有很多相似之處,也有很多不同的地方。如果是伺服器開發,首推linux,如果是帶圖形介面的開發,比如app,肯定推薦mac了。不過很多命令都是通用的,我一般是在mac上面裝個Linux虛擬機器,可以無縫操作各種程式設計,檔案系統也可以共享,兩邊程式都可以操作,非常方便!