-
1 # 逆火行
-
2 # EmacserVimer
Mac OS毫無疑問,基本上是在工作、生活尋求到了一個最佳平衡點的作業系統,當然相較來說Windows也是能很好的完成這些職能,尤其是在娛樂方面和某些生產方面Windows甚至做得更好。但是今天筆者要說的是對於程式設計師來說,Mac OS也許是尋求工作、生活平衡的最佳節點,也就是說在完成工作的同時,Mac也能很好的兼顧到日常生活。當然還是那句話,如果你是.net開發工程師或者
這裡先說一下Mac OS的系統特點,Mac OS是基於Unix的FreeBSD分支而建立起來的圖形介面作業系統,曾經有個有趣的故事,比爾蓋茨最先賭的是面向物件程式設計,所以微軟成就了visual studio這一銀河系最強的IDE整合開發環境,喬布斯率先看到了圖形介面的未來,所以Mac OS成了最早的商業領域圖形介面系統。
對於相信大家都有一個直觀的感受,就是極客標籤,生產力的象徵。所以蘋果官網也一直強調,Mac OS基於堅如磐石的Unix並且,Mac OS已經是被認可的獨立Unix分支,它的設計哲學和Unix一脈相承,和Linux也是情同兄弟。所以你會有一套幾乎幾乎完全相同的解決方案,那麼這裡就盤點一下Mac OS下常用的程式設計軟體。
1、首先是不得不說的Emacs/Vim
對於*nix哲學下的程式設計開發軟體,毫無疑問都沒法迴避這兩款軟體,Emacs和Vim毫無疑問是全世界最強大的兩個文字編輯器。這裡筆者並不想說Emacs和Vim到底哪個更好這種會引起江湖不同門派罵戰的話題,筆者傾向性並不會特別明顯,這一點從筆者的頭像也看得出來,筆者只能說,只要你用的順手,那就是最好的工具。
但是筆者要說明一點的是,這兩款神奇的工具,雖然vim號稱編輯器之神,Emacs號稱神之編輯器,但是看這個學習曲線圖也知道,這兩款工具入門門檻比較高,長期學習成本也並不會很低,筆者這麼多年用下來,也只能說是掌握了皮毛而已。但是當年熟練掌握了以後,當然這個數量掌握不僅僅是怎麼退出、快捷切換游標位置這些簡單的操作,你得學會自己去配置,兩大神器有很多的外掛,可以極大的豐富你的編輯器。
其實筆者現在用這兩個工具主要已經是用來寫寫平時的演算法小程式了,畢竟編輯器這種工具,個人學習研究是可以的,但是對於大型企業級專案,需要很多人協作,整合開發環境才是最佳選擇。
2、現代編輯器atom/visual studio code
當然類似於sublime text也是非常經典的文字編輯器,還有類似於具有強大列操作的UltraEdit等等,都是非常經典的編輯器,但是筆者今天要說的atom和visual studio code這兩款編輯器,是因為這兩款編輯器具有非常漂亮的UI介面,同時也具有強大的外掛集,良好全面的語言和開發框架支援。
兩款程式碼編輯器都是跨平臺的,都是基於electronic這個框架,至於這個框架我想大家都應該有所瞭解,node、chromium、V8整合而來,可謂是非常優秀。並且兩款工具背後一個是微軟支援,一個是GitHub支援,都具有大公司的穩定輸出,值得一用。
3、Xcode、idea、visual studio等整合開發環境
說到整合開發環境,其實不需要多解釋,企業級專案,涉及到很大的功能規模、涉及到很多開發人員,所以如何更高效的工作,還能高效的協作是最大的目標。因此整合開發環境是最佳選擇。
Xcode自然不用多說,作為Mac自帶開發環境,Xcode支援自家的objective-C、Swift開發的同時,還能支援C/C++的開發,毫無疑問,做Mac和iPhone開發的預設環境,這也是蘋果平臺上最好的IDE之一。
除此之外,如果你做Java開發,那麼在Mac OS下,idea毫無疑問是最佳選擇,要知道Android開發作為移動開發的大頭,Google的Android也從eclipse中轉向基於idea進行二次開發,就可以看出idea的價值還是非常受到認可的。
最後要說的是visual studio,雖然目前Mac OS平臺下的visual studio是來自微軟收購的xamarin產品,本質上跟微軟Windows平臺上的原生visual studio是有區別的,但是微軟對這點的支援一定會做的越來越好。
當然還有很多開發環境,具體要看你要從事什麼行業,你是從事移動開發還是伺服器端開發,你用Java還是PHP...每一個具體的方向需要的工具自然不一樣。哪怕是同一個方向,選擇的工具也會不一樣,做Java後端的有的人喜歡eclipse有的人喜歡idea,還有的人喜歡NetBeans等等。
最後總結一點的是,開發過程中不可能光是開發類的軟體,對於一個程式設計師,如果沒有設計師的話,還需要自己去切一些圖片,這時候你可能需要Photoshop,你還需要一些版本管理的工具,例如git,第三方的終端工具iterm也是非常好的工具,以及GitHub客戶端幫助你更好的利用git管理專案,你還可能需要the Brian和mindmanager等思維導圖軟體幫你更好的思考,以及OmniGraffle等工具來更好地分析流程,需要parallel desktop安裝虛擬機器測試系統,包括beyond compare等幫你更好的比對程式碼等等...
所以其實程式設計軟體、以及程式設計相關的軟體其實很多,你可能需要根據你自己的工作或者主要學習方向來確定你需要選什麼樣的工具。筆者會比較反對那種明顯的傾向性工具理論,所以筆者始終建議適合自己的最優解決方案才是正確的決定,不要人云亦云,要自己的去實際使用才會獲得答案。
回覆列表
那當然是“萬編王”Xcode了,當我第一次見人用Mac時那行雲流水的操作,那神乎其技的切屏,讓我默默的擦了擦我的裝著Ubuntu的神州,你們要知道我是花了多少時間,多少精力去配置我的Vim的嗎?自己還深深地沉醉在新配置的帶有自動補全功能和各種對齊線,色彩顯示的Vim的時候看到了Mac,看到了Xcode,在心裡默唸,土豪就是玩的高階,我要當土豪,我要Mac,對,不要Air要Pro,我要當大牛,然後夢做完了,繼續搬磚