Windows 能做的那些沒用的事情 Linux 永遠做不好–IDE

來源:互聯網
上載者:User
IDE
  有些人在抱怨為什麼 Linux 沒有一個良好的 IDE 開發環境。Linux 現在已經有一些IDE 了,但是總是有很多問題。你是不是正在尋找,正在期望 Linux 某一天可以有一個VC那樣的開發環境?你有沒有發現你正在進入微軟給你設下的怪圈?你為什麼一定要用 IDE?你說:"IDE 開發迅速,調試方便,適合大型程式……" 那說明微軟的程式在你腦子裡已經比較根深蒂固,你需要好好清醒一下了,看看我來告訴你。
  高明的 UNIX 程式員不用 IDE,IDE 從來就是給初級 Windows 程式員用的。
  你看看大型的 UNIX 程式,包括 Linux 核心,各種網路服務程式,Xwindow 程式在內,哪一個是 IDE 搞出來的?我們實驗室的 EDA 程式也沒有一個是 IDE 弄的,我還知道Candence, Synopsys,Mentor 的高效能的圖形介面 EDA 程式也都不是 IDE 寫的。你信不信,微軟的人在寫 Windows 本身的時候也根本不用 IDE。微軟內部程式員最喜歡的編輯器其實是 VIM,用 VIM 的微軟程式員上次向烏幹達的可憐兒童捐助了1000多美元,這是值得稱讚的。
  有一次某雜誌採訪一些出名的 Linux 核心程式員,包括 Linus 在內,沒有一個人用IDE,有的人用 VIM,有的用 Emacs,只有 Linus 說"GNU Emacs is evil",但是其實他用的是一種跟 Emacs 有同樣鍵綁定功能的 MicroEmacs。大家都是用編輯器編輯了程式檔案,然後用 make 這樣的自動工具調用 gcc 編譯器完成編譯工作的。甚至進階的 Windows 程式員也不用 IDE,他們可以從命令列調用 cl,nmake 來編譯自己的程式。雖然這樣的 Windows 程式員很少,但是他們卻是最瞭解 Windows,最高明的Windows 程式員。
  為什麼 UNIX 程式員不用 IDE?明白了這個道理你就能體會到 UNIX 的設計思想了。首先,一個 IDE 整合了編輯器,編譯器,彙編器,調試器,跟蹤器…… 這個編輯器功能肯定比不上 VIM 或 Emacs,編譯器比不上 GCC,彙編器比不上 as,調試器比不上 gdb,ddd, 跟蹤器比不上 strace, ltrace, truss。你得到的是一套整合的低能的程式。如果你對調試器的功能不滿意,你只好換用另外一套 IDE,但是這套 IDE 的熱鍵,菜單,編輯器功能,按鈕…… 跟原來那個有很大不同。你不得不花很多時間來熟悉新的環境,而不能保持原來的某些東西。
  而在 UNIX 下就不一樣了。你可以用你最喜歡的 VIM 編輯程式,你在 VIM 裡可以調用GNU make,make 可以調用 gcc, ld, ... make 的出錯資訊可以被 VIM 捕獲,VIM 能幫你在來源程式裡定位。你如果喜歡 icc, 你可以讓 make 用 icc 而不是 gcc。你如果覺得 gdb 跟蹤變數時比較麻煩,你可以用 ddd 來顯示各種資料結構之間的關係。你還可以在 Emacs 裡調用 gdb,那樣就可以同步顯示原始碼了。而且 VIM 和 Emacs 還可以編輯很多其它東西,比如信件,LaTeX 文檔,HTML,設定檔…… 你不用另外找一個什麼編輯器來幹這些雜活了。很多程式比如 Mutt, tin 都可以在內部使用 VIM,這樣就更方便了。實際上 make 在其它方面還能幫你很多忙,我的每一個比較大型的 LaTeX文檔都是用 make 維護的。 
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.