1. 前言 這一課我們來(lái)做一些 C++ 開發(fā)前的準(zhǔn)備工作。 2. 編程的必要工具 依你看,對(duì)編程來(lái)說(shuō),什么軟件是必要的呢? 如果你認(rèn)真學(xué)了上一課,那你至少可以說(shuō)出一種吧。 對(duì)了,就是編譯器。這個(gè)重要的程序可以把你的源代碼(用高級(jí)語(yǔ)言如 C 語(yǔ)言寫的指令)轉(zhuǎn)換成電腦可以理解的二進(jìn)制碼(只包含 0 和 1 的,類似 01100110001111011101010... )。 上一課我們也提了一下,每種高級(jí)語(yǔ)言都有對(duì)應(yīng)的編譯器(當(dāng)然對(duì)于 Python 這樣的解釋性語(yǔ)言,就不需要編譯了),光是 C++ 語(yǔ)言的編譯器就有很多。比較常用的有 G++( GNU C++ Compiler。GNU 是國(guó)際著名的自由軟件基金會(huì),GNU 是「GNU is Not Unix」 ( GNU 不是 Unix )的遞歸縮寫法。老外總是那么頑皮,起名字也喜歡整一些編程的知識(shí),比如 Linux 就是「Linux Is Not Unix」(Linux 不是 Unix)的遞歸。要不就用很多動(dòng)物的名字或圖標(biāo),特別好玩)。 除了編譯器,我們還需要什么工具呢? 就不賣關(guān)子了,下面列出編程的基本工具: 文本編輯器 :用來(lái)寫源代碼的工具。理論上 Windows 操作系統(tǒng)的記事本或者 Linux 下的 VI 編輯器都可以作為文本編輯器來(lái)使用。但是,最好還是用一些更高級(jí)點(diǎn)的文本編輯器,比如可以支持代碼高亮顯示,方便你在代碼間跳轉(zhuǎn)等。個(gè)人非常推薦的文本編輯器是 Emacs,真的非常強(qiáng),跨平臺(tái)(蘋果 Mac OS,Windows,Linux等),自由定制,各種快捷鍵組合,收發(fā)郵件,看視頻,瀏覽網(wǎng)頁(yè),瀏覽 PDF,沒(méi)有你做不到,只有想不到(略有夸張...),可以讓你編輯代碼非常高效。我之前使用的是 Vim,也是很不錯(cuò)的,但是后來(lái)用了 Emacs ( Emacs,最強(qiáng)編輯器,沒(méi)有之一 本站下載地址:emacs),感覺(jué)還是更喜歡 Emacs一些。現(xiàn)在我兩者都用。還有例如 Atom,Sublime,Notepad++ 也是挺好的,經(jīng)過(guò)配置和安裝一些插件,可以很強(qiáng)大。 編譯器 :已經(jīng)提過(guò)了,用來(lái)轉(zhuǎn)換(或叫編譯)你的源代碼成為二進(jìn)制碼。 調(diào)試器 :Debugger,用來(lái)跟蹤、發(fā)現(xiàn)程序里的錯(cuò)誤的工具。這里出現(xiàn)一個(gè)新名詞,調(diào)試(Debug)。bug 是英語(yǔ)臭蟲,蟲子的意思,de 在英語(yǔ)里是一個(gè)表示「分離,除掉」的前綴,所以 Debug 的意思就是除臭蟲。一般把程序里的錯(cuò)誤或者缺陷叫做 bug(臭蟲),據(jù)說(shuō)是因?yàn)閭髌媾绦騿T Grace Hopper(格萊斯.霍普)有一次在 MARK II 計(jì)算機(jī)(就是那種早期的比較龐大的電腦)中發(fā)現(xiàn)了一只飛蛾,這只飛蛾導(dǎo)致了這臺(tái)電腦死機(jī)(夾在電腦里的繼電器之間),霍普用鑷子把飛蛾夾出來(lái),用透明膠布貼到筆記本上,并注明「第一個(gè)發(fā)現(xiàn)蟲子(bug)的實(shí)例」。從此,人們就沿用了這個(gè)稱呼,用debug表示排除程序錯(cuò)誤的行為。現(xiàn)在霍普的筆記本,連同那只「呆萌」的飛蛾,陳列在美國(guó)歷史博物館里。
當(dāng)然,如果你有「冒險(xiǎn)精神」,喜歡挑戰(zhàn),也可以不用調(diào)試器(通過(guò)一些小技巧也是可以自己找到錯(cuò)誤所在的)。但是,我想一般來(lái)說(shuō)你是會(huì)需要調(diào)試器的。 所以,我們就有兩個(gè)選擇了: 分開使用文本編輯器,編譯器和調(diào)試器這三種工具。雖然復(fù)雜一些,但是也行得通。特別在 Linux 環(huán)境下,不少程序員還是喜歡用這種方式來(lái)編程,可能不是裝,要的就是這個(gè) feel,倍兒爽。 使用一種軟件,這種軟件集合了這三種工具的功能。這種軟件被稱為IDE(Integrated Development Environment,集成開發(fā)環(huán)境)。 一開始你可能會(huì)難以抉擇,到底用哪種呢?即使選擇了用 IDE,也會(huì)糾結(jié)到底用哪一個(gè) IDE 好呢。 其實(shí)我們可以肯定的是:不論你選擇哪種工具,你都可以編寫你想要的程序。只是效率、個(gè)人習(xí)慣和特定平臺(tái)要求不同罷了。 個(gè)人淺見: 如果剛接觸 C++ 語(yǔ)言,盡量在 Linux 的命令行里學(xué)習(xí) C++ 語(yǔ)言編程。一開始不要過(guò)分依賴 IDE。 因?yàn)?IDE 做得太好了,都有提示,代碼自動(dòng)補(bǔ)全,自動(dòng)幫你添加代碼,你就不能學(xué)到很多,也記不牢。等編程水平好了一些,再用 IDE 不遲,那個(gè)時(shí)候 IDE 可以提高你的編程效率。一開始用 Emacs 或者 Vim 編寫 C++ 語(yǔ)言,用 G++ 編譯 C++ 語(yǔ)言,用 GDB(GNU Debugger)調(diào)試 C++ 語(yǔ)言,是不錯(cuò)的選擇。 當(dāng)然了,我們還是會(huì)花比較多的篇幅介紹幾個(gè)常用的 IDE。 3. 選擇你的IDE 我們覺(jué)得有必要向大家展示幾個(gè)最著名的 IDE,這幾個(gè)都是免費(fèi)的: Code::Blocks :個(gè)人比較喜歡的一款 IDE,免費(fèi),開源,跨平臺(tái)。在之后的課程里,我們會(huì)用 Code::Blocks 來(lái)做開發(fā),因?yàn)?Code::Blocks 的開發(fā)環(huán)境搭建起來(lái)太快了,不需要什么配置。 Visual Studio :基礎(chǔ)版本是收費(fèi)的。但是幸好有一個(gè) Visual Studio Express 的版本是免費(fèi)的。VS 功能很完備,而且調(diào)試器很強(qiáng)大。 Xcode :作為蘋果的當(dāng)家 IDE,不得不說(shuō) Xcode 真的做得太棒了??梢杂脕?lái)開發(fā)基本的小程序,也可以編寫 iPhone 和 iPad 的 app(模擬器速度超快),和智能手表應(yīng)用,還可以和其他如 Unity 3D 引擎配合來(lái)編寫游戲。 Code::Blocks Code::Blocks 是一款很不錯(cuò)的 IDE,不過(guò)目前只有英文版,當(dāng)然網(wǎng)上也有漢化版本。不過(guò)既然學(xué)編程,就盡量把英語(yǔ)這關(guān)過(guò)了,也不需要太厲害的英語(yǔ),基礎(chǔ)就好。畢竟?jié)h化版有的翻譯不到位,可能會(huì)影響使用。而且好的編程資源基本都是英語(yǔ)的。 請(qǐng)參看我的 對(duì)于程序員, 為什么英語(yǔ)比數(shù)學(xué)更重要? 如何學(xué)習(xí) 一文。 下載Code::Blocks 先去 Code::Blocks 的官方下載頁(yè)面:http://www./downloads/binaries 本站下載地址 code blocks Windows 用戶請(qǐng)下載 .exe 結(jié)尾的文件,請(qǐng)注意要下載名字里有 mingw 的那個(gè)(比如 codeblocks-16.01mingw-setup.exe ),因?yàn)槿绻麤](méi)有 mingw 這幾個(gè)字母的版本不包含編譯器,就會(huì)很麻煩。 Linux 用戶請(qǐng)下載對(duì)應(yīng)你的操作系統(tǒng)的版本。 蘋果 Mac 用戶請(qǐng)下載 CodeBlocks-13.12-mac.zip 。 安裝運(yùn)行Code::Blocks Code::Blocks 的安裝太簡(jiǎn)單了,就跟安裝 QQ 沒(méi)什么區(qū)別,一路默認(rèn)到底就好。 安裝完之后雙擊運(yùn)行,你可以看到如下圖的界面:
上圖中標(biāo)注了四個(gè)區(qū)域: 工具欄:有很多按鈕,但只有幾個(gè)是真正我們時(shí)常用到的。 項(xiàng)目文件列表區(qū):左邊的欄里面顯示了你的項(xiàng)目的所有文件 主界面:寫代碼的地方 通知欄:會(huì)看到運(yùn)行的錯(cuò)誤,編譯的問(wèn)題等等 如何來(lái)創(chuàng)建一個(gè) C++ 語(yǔ)言的基本的控制臺(tái)應(yīng)用程序呢? 首先到菜單里,F(xiàn)ile -> New -> Project,會(huì)打開如下的窗口:
可以看到,Code::Blocks 支持非常多的程序類型,這些程序類型用到不同的庫(kù),比如 SDL(開發(fā) 2D 程序),OpenGL(開發(fā) 3D 程序),Qt 和 wxWidgets,等等。 目前,這些圖標(biāo)很多都只是好看而已,因?yàn)槟氵€沒(méi)安裝對(duì)應(yīng)的庫(kù),所有不能用。暫時(shí)我們只用最基本的 Console application(控制臺(tái)應(yīng)用,簡(jiǎn)單來(lái)說(shuō)就是會(huì)彈出一個(gè)框,里面顯示程序運(yùn)行的結(jié)果)。 選擇 Console application,點(diǎn)擊 Go 按鈕到下一步:
「Project Title」里面填寫你要?jiǎng)?chuàng)建的項(xiàng)目名稱,我們填的是著名的 HelloWorld?!窮older to create project in」 是選擇項(xiàng)目存放的路徑。 點(diǎn)擊 Next 到下一步:
這里我們不必更改什么,默認(rèn)就好。點(diǎn)擊 Finish(完成)結(jié)束配置,Code::Blocks 就會(huì)創(chuàng)建你的第一個(gè)項(xiàng)目了。 Visual Studio 下載 Visual Studio Express,去官方下載頁(yè)面 http://www./products/visual-studio-express-vs 選擇適合你的操作系統(tǒng)的版本來(lái)下載。 本站下載地址 visual studio 2013 因?yàn)樾【幨窃谔O果電腦上編輯文章的,所以就不多做演示了。請(qǐng)大家去參考網(wǎng)上的安裝和使用圖文教程。 安裝完運(yùn)行后應(yīng)該是與 Code::Blocks 類似的布局: Xcode Mac OS 操作系統(tǒng)里有不少 IDE,但是 Xcode 卻是廣大蘋果用戶的最愛。 不是所有的蘋果用戶都是程序員,所以蘋果沒(méi)有在 Mac OS 系統(tǒng)里預(yù)裝 Xcode,你需要到 Mac App Store(應(yīng)用商店)下載 Xcode(需要有蘋果賬戶,沒(méi)有可以注冊(cè)一個(gè))。 安裝很方便,只要去 App Store 搜索 Xcode,然后點(diǎn)擊 Install(安裝),就安裝到應(yīng)用程序里了。將 Xcode 運(yùn)行起來(lái):
然后選擇 Create a new Xcode project(創(chuàng)建一個(gè)新的 Xcode 項(xiàng)目),會(huì)彈出如下窗口:
選擇 OS X -> Application -> Command Line Tool,點(diǎn)擊 Next 到下一步:
Project Name 里填寫項(xiàng)目名稱,我們填了 HelloWorld。Language(語(yǔ)言)選擇 C++ 語(yǔ)言,點(diǎn) Next 下一步,會(huì)讓你選擇項(xiàng)目文件夾的存放路徑,隨便選擇。然后點(diǎn)擊 Finish 完成。
項(xiàng)目打開之后,點(diǎn)擊 三角形 按鈕,運(yùn)行,可以看到輸出了「Hello World!」:
4. 總結(jié) 一個(gè)程序要從開始編寫到能夠運(yùn)行,一般來(lái)說(shuō)需要三種工具:文本編輯器,編譯器,調(diào)試器(當(dāng)然對(duì)于 Python 這樣的解釋性語(yǔ)言,就不需要編譯了)。 我們可以分開使用這三種工具來(lái)完成任務(wù)。但是比較方便的是使用 IDE(集成開發(fā)環(huán)境,混合了這三者)來(lái)開發(fā)。 Code::Blocks,Visual Studio(或 Visual C++),Xcode 是著名的 IDE,當(dāng)然還有很多優(yōu)秀的 IDE(例如 Eclipse),就不一一介紹了。IDE 只是工具。 5. 第一部分第三課預(yù)告 今天的課就到這里,一起加油吧! 您可能感興趣的文章:微信公眾號(hào)搜索 “ 腳本之家 ” ,選擇關(guān)注 程序猿的那些事、送書等活動(dòng)等著你 |
|