編輯器的概念很簡單,百度百科上這麼寫道:程序員
編輯器是軟件程序,通常是指用來修改電腦檔案的編寫軟件,但也有人稱
PE二、HE4(漢書)……等文書軟件爲編輯器。常見的編輯器有文本編輯器、網頁編輯器、源程序編輯器、圖像編輯器,聲音編輯器和視頻編輯器等。算法
固然在這裏咱們主要講的是代碼編輯器,一個好的編輯器能夠節省開發時間,提升工做效率,它們都能提供很是方便易用的開發環境。你能夠用它們來編寫代碼,查看源文件和文檔等,簡化你的工做。編程
如下是一些經常使用的代碼編輯器,每一個不一樣的編輯器都有不盡相同的目標用戶羣體。架構
1.NodePad++編程語言
Notepad++ 是一款免費但優秀的代碼編輯器,運行在 Windows 環境下,能夠支持多種編程語言。它在 50 多種程序、腳本和標記語言上都有着語法高亮、代碼摺疊等功能。用戶能夠人爲設置當前語言,它還支持實現一些編程語言的API。編輯器
2.Vim函數
Vim 是從 vi 發展出來的一個文本編輯器,在程序員中被普遍使用。它支持語法高亮、顯示行號,這都是對程序員重要的輔助功能。用戶還能夠更換界面的主題顏色,減緩長期編程的疲勞感,讓代碼更加清晰。它能夠自動檢查你的拼寫錯誤,提升你的工做效率,對於開發者是一個很是好的選擇。工具
3.GNU Emacs佈局
Emacs 是一個輕便、可擴展、免費的編輯器,它比其它的編輯器要更強大,是一個整合環境,或可稱它爲集成開發環境。它能夠處理文字,圖像,高亮語法,將代碼更直觀地展示給開發者。Emacs 能夠運行在大多數的操做系統上,並且它支持大多數經常使用的編程語言,能夠自動對代碼排版佈局。Emacs用戶能夠根據自身的須要和偏好對編輯器進行定製。性能
4.Sublime Test
Sublime Text 是具備漂亮的用戶界面、強大功能和優良性能的一款代碼編輯器,你能夠在 Windows、OS X 和 Linux 等主流操做系統上安裝並使用。
5.Atom
Atom是免費開源的文本和代碼編輯器,它是運行在 Atom Shell 上,底層依賴的架構是 Chromium(Google Chorome的開源項目)。沒有人想浪費大量的時間在配置編輯器上,而在 Atom 上幾乎全部的設置均可以經過設置面板來更改配置,簡單易用,上手很快。
編譯器的概念很簡單,百度百科上這麼寫道:
(1)簡單講,編譯器就是將「一種語言(一般爲高級語言)」翻譯爲「另外一種語言(一般爲低級語言)」的程序。一個現代編譯器的主要工做流程:源代碼(source code) → 預處理器 (preprocessor) → 編譯器 (compiler) → 目標代碼 (object code) → 連接器 (Linker) → 可執行程序 (executables)。
(2)高級計算機語言便於人編寫,閱讀交流,維護。機器語言是計算機能直接解讀、運行的。編譯器將彙編或高級計算機語言源程序(Source program)做爲輸入,翻譯成目標語言(Target language)機器代碼的等價程序。源代碼通常爲高級語言 (High-level language), 如Pascal、C、C++、Java、漢語編程等或彙編語言,而目標則是機器語言的目標代碼(Object code),有時也稱做機器代碼(Machine code)。
以前的三種程序設計語言概要介紹過機器語言、編譯語言和高級語言的區別,而編譯器所作的就是進行這三種語言的互相轉換。大多數狀況下,編譯是從更高級的語言(高級語言、彙編語言)編譯成低級語言(彙編語言、機器語言)。
另外一種狀況是,從他人的可執行程序(低級語言)編譯成高級語言,以推導出他人的軟件產品所使用的思路、原理、結構、算法、處理過程、運行方法等設計要素,某些特定狀況下可能推導出源代碼。這個過程叫作反向編譯。

這裏使用 GCC 編譯器的相關概念做出探討。
1.GCC 編譯器
GCC 原名爲 GNU C 語言編譯器(GNU C Compiler),由於它本來只能處理 C 語言。後來 GCC 經過很快地擴展變得能夠處理 C++ 甚至 Fortran、Pascal、Objective-C、Java、Ada、Go 以及各種處理器架構上的彙編語言等,因此更名GNU編譯器套件(GNU Compiler Collection)。
因爲 gcc 是命令行程序,沒有特定的 UI 界面,咱們在命令行能夠用 GCC 進行一個簡單的 C 語言編譯測試,輸出一個 「Hello GCC!」。
能夠看到,編輯器是用來讓程序員優雅的敲代碼,編譯器是用來將這些高級語言或彙編語言編譯成計算機能直接識別並運行的機器語言。若是咱們每次編輯完源程序都要在命令行依託編譯器進行函數、模塊的連接和編譯的話豈不是很麻煩,因而集成開發環境的出現很快的完善了開發效率問題。
集成開發環境(IDE,Integrated Development Environment )是用於提供程序開發環境的應用程序,通常包括代碼編輯器、編譯器、調試器和圖形用戶界面工具。集成了代碼編寫功能、分析功能、編譯功能、調試功能等一體化的開發軟件服務套。
因爲每一個 IDE 的針對性不一樣,承載的編譯器不一樣,不一樣的語言有時須要不一樣的IDE,這裏介紹幾個經常使用 IDE。
1.Dev C++
Dev-C++是一個 Windows 環境下開發 C/C++ 語言的集成開發環境(IDE),它是一款自由軟件,遵照 GPL 許可協議分發源代碼。它集合了 MinGW 等衆多自由軟件,而且能夠取得最新版本的各類工具支持,而這一切工做都是來自全球的狂熱者所作的工做。Dev-C++ 是 NOI、NOIP 等比賽的指定工具,缺點是調試(Debug)功能弱。因爲起初開發 Dev-C++ 在開發完 4.9.9.2 版本後中止開發,因此如今正由其它公司更新開發,但都基於 4.9.9.2。Dev-C++ 的最新版是 5.11 版本。
2.Visual Stdio
Microsoft Visual Studio(簡稱VS)是美國微軟公司的開發工具包系列產品。VS是一個基本完整的開發工具集,它包括了整個軟件生命週期中所須要的大部分工具,如 UML 工具、代碼管控工具、集成開發環境(IDE)等等。所寫的目標代碼適用於微軟支持的全部平臺,包括 Microsoft Windows、Windows Mobile、Windows CE、.NET Framework、.NET Compact Framework 和 Microsoft Silverlight 及 Windows Phone。
3.Eclipse
Eclipse是一個界面友好,供各類用戶使用的 IDE,它提供了一系列的工具幫助 Web 和 Java 應用程序的開發。儘管 Eclipse 是使用 Java 語言
開發的,但它的用途並不限於 Java 語言。它還支持如 C / C++、JavaScript、Perl、PHP、Fortran、Ruby、Python,甚至 COBOL 語言。它提供不少功能來簡化你的開發,內置的工具和 API 支持項目部署、運行和測試。
做者:韓亦樂
連接:http://www.jianshu.com/p/be2e...來源:簡書著做權歸做者全部。商業轉載請聯繫做者得到受權,非商業轉載請註明出處。