萌新科普貼

最近我所在的組織在招新囊拜,鑒于某些學(xué)計(jì)算機(jī)的同學(xué)到了大三仍然理不清IDE俱恶,編譯器兔港,編輯器這三者的區(qū)別庸毫,我特地出了一道題,讓從沒(méi)有接觸編程的萌新們?nèi)サ骄W(wǎng)上查資料衫樊,弄清這三者的區(qū)別飒赃。但是,根據(jù)我的小范圍調(diào)查科侈,發(fā)現(xiàn)網(wǎng)上檢索到的信息良莠不齊载佳,文章相互矛盾,作者自己都分不清什么是什么臀栈,所以準(zhǔn)備寫(xiě)個(gè)掃盲貼蔫慧,幫助萌新分清這三者。而且挂脑,也希望萌新們抓緊提升自己藕漱,增強(qiáng)分辨信息優(yōu)劣的能力欲侮。

名詞解釋

  1. 編譯器
    計(jì)算機(jī)執(zhí)行的程序,都是由0和1組成的二進(jìn)制文件肋联。當(dāng)程序不是很復(fù)雜威蕉,計(jì)算機(jī)也不是很復(fù)雜的時(shí)候,可以直接輸入二進(jìn)制橄仍,也就是機(jī)器語(yǔ)言韧涨,然后讓計(jì)算機(jī)執(zhí)行。但是侮繁,當(dāng)程序逐漸變得復(fù)雜虑粥,計(jì)算機(jī)也逐漸變得復(fù)雜的時(shí)候,直接輸入二進(jìn)制就不現(xiàn)實(shí)宪哩。所以娩贷,這就促成了高級(jí)編程語(yǔ)言的出現(xiàn)。
    有了高級(jí)語(yǔ)言锁孟,又面臨一個(gè)問(wèn)題:用高級(jí)編程語(yǔ)言寫(xiě)的程序其實(shí)就是文本文件彬祖,計(jì)算機(jī)根本不認(rèn)識(shí)。于是品抽,就出現(xiàn)了高級(jí)編程語(yǔ)言到機(jī)器語(yǔ)言的翻譯官——編譯器储笑。編譯器把C語(yǔ)言這類(lèi)的高級(jí)編程語(yǔ)言翻譯成計(jì)算機(jī)能夠認(rèn)識(shí)的機(jī)器碼,就可以把生成的二進(jìn)制程序交給計(jì)算機(jī)圆恤,讓計(jì)算機(jī)來(lái)執(zhí)行突倍。
    我們都知道,編譯器也是程序盆昙。這就又產(chǎn)生了一個(gè)問(wèn)題:現(xiàn)在的C語(yǔ)言編譯器都是C語(yǔ)言寫(xiě)的羽历,那到底是先有語(yǔ)言還是先有編譯器?這就是典型的雞生蛋弱左,蛋生雞問(wèn)題窄陡。其實(shí),當(dāng)語(yǔ)言設(shè)計(jì)者在設(shè)計(jì)出語(yǔ)言A之后拆火,會(huì)用其他語(yǔ)言B寫(xiě)出第一個(gè)A1編譯器跳夭,再用這個(gè)A1編譯器去編譯用A語(yǔ)言寫(xiě)的A2編譯器,這就有了用A語(yǔ)言實(shí)現(xiàn)的A編譯器们镜。拿C語(yǔ)言舉例币叹,第一個(gè)C語(yǔ)言編譯器是用匯編寫(xiě)的,然后編譯出用C語(yǔ)言實(shí)現(xiàn)的C編譯器模狭。這個(gè)過(guò)程颈抚,就叫編譯器的自舉。
  2. 編輯器
    這個(gè)名詞最好解釋?zhuān)^的編輯器就是編輯文本文件的程序,所以也叫文本編輯器》泛海現(xiàn)在驱富,市面上也有一些編輯器能夠直接編輯二進(jìn)制文件,我們叫它們二進(jìn)制文件編輯器匹舞。
  3. 集成開(kāi)發(fā)環(huán)境(IDE)
    從集成這個(gè)詞我們就可以看出這個(gè)東西的含義褐鸥。這個(gè)東西就是把編譯器,編輯器赐稽,調(diào)試器叫榕,甚至包括構(gòu)建工具,代碼補(bǔ)全姊舵、檢查晰绎、分析工具等等軟件開(kāi)發(fā)過(guò)程中用到的工具集成到一起形成的龐大的軟件系統(tǒng)。給開(kāi)發(fā)者提供一種開(kāi)箱即用的工具集括丁,免去了自己配置相關(guān)環(huán)境的麻煩荞下。

舉例(針對(duì)C語(yǔ)言)

  1. 常見(jiàn)的編譯器
  • GNU基金會(huì)的gcc,這是Linux系統(tǒng)中最常用的C語(yǔ)言編譯器史飞。
  • 蘋(píng)果公司贊助的锄弱,以LLVM為后端的clang,它是一個(gè)C語(yǔ)言編譯器的前端祸憋,和LLVM一起作為蘋(píng)果macOS系統(tǒng)的默認(rèn)編譯器,擁有極其優(yōu)秀的代碼錯(cuò)誤提示肖卧。
  • 微軟公司開(kāi)發(fā)的MSVC蚯窥,作為微軟自家的IDE——visual studio的編譯器。安裝了vs的同學(xué)可以到vs的安裝目錄下的VC文件夾的bin文件夾中找到cl.exe塞帐,這個(gè)就是包裝了MSVC編譯器的外殼拦赠,它會(huì)調(diào)用一些動(dòng)態(tài)鏈接庫(kù)來(lái)完成編譯工作。
  1. 常見(jiàn)的編輯器
  • vim:一款廣泛使用的編輯器葵姥,基于命令行荷鼠,也有相應(yīng)的GUI版本
  • emacs:由GNU開(kāi)發(fā)的另一款被廣泛使用的編輯器,也是有命令行和GUI兩種
  • Sublime Text:跨平臺(tái)編輯器榔幸,擁有各種強(qiáng)大的插件允乐,只有GUI版本
  1. 常見(jiàn)的IDE
  • Visual C++:Visual Studio的C++IDE子集,跟VS一起安裝削咆。擁有強(qiáng)大的調(diào)試牍疏,代碼分析等功能,是我認(rèn)為宇宙最強(qiáng)沒(méi)有之一的C++IDE拨齐。
  • Clion:jetbrains公司用java開(kāi)發(fā)的跨平臺(tái)C/C++IDE鳞陨,是一款很有潛力的優(yōu)秀IDE,其代碼補(bǔ)全能力超過(guò)VS瞻惋。
  • Eclipse:由Eclipse基金會(huì)維護(hù)的一款用java開(kāi)發(fā)的跨平臺(tái)IDE厦滤,通過(guò)添加相關(guān)插件可以成為相關(guān)語(yǔ)言的IDE援岩。
  • CodeBlocks、DEVC++等:都是一些比較輕量的C/C++IDE掏导,功能相對(duì)較少享怀,適合配置較低的機(jī)器,或者快速搭建簡(jiǎn)單的開(kāi)發(fā)環(huán)境碘菜。

ps:文中涉及到一些專(zhuān)業(yè)的名詞凹蜈,對(duì)整體的理解不會(huì)造成太大影響,如果有興趣可以自己去查找相關(guān)資料忍啸,增強(qiáng)自己的獲取信息的能力仰坦。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市计雌,隨后出現(xiàn)的幾起案子悄晃,更是在濱河造成了極大的恐慌,老刑警劉巖凿滤,帶你破解...
    沈念sama閱讀 211,639評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件妈橄,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡翁脆,警方通過(guò)查閱死者的電腦和手機(jī)眷蚓,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,277評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)反番,“玉大人沙热,你說(shuō)我怎么就攤上這事“崭祝” “怎么了篙贸?”我有些...
    開(kāi)封第一講書(shū)人閱讀 157,221評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)枫疆。 經(jīng)常有香客問(wèn)我爵川,道長(zhǎng),這世上最難降的妖魔是什么息楔? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,474評(píng)論 1 283
  • 正文 為了忘掉前任寝贡,我火速辦了婚禮,結(jié)果婚禮上钞螟,老公的妹妹穿的比我還像新娘兔甘。我一直安慰自己,他們只是感情好鳞滨,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,570評(píng)論 6 386
  • 文/花漫 我一把揭開(kāi)白布洞焙。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪澡匪。 梳的紋絲不亂的頭發(fā)上熔任,一...
    開(kāi)封第一講書(shū)人閱讀 49,816評(píng)論 1 290
  • 那天,我揣著相機(jī)與錄音唁情,去河邊找鬼疑苔。 笑死,一個(gè)胖子當(dāng)著我的面吹牛甸鸟,可吹牛的內(nèi)容都是我干的惦费。 我是一名探鬼主播,決...
    沈念sama閱讀 38,957評(píng)論 3 408
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼抢韭,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼薪贫!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起刻恭,我...
    開(kāi)封第一講書(shū)人閱讀 37,718評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤瞧省,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后鳍贾,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體鞍匾,經(jīng)...
    沈念sama閱讀 44,176評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,511評(píng)論 2 327
  • 正文 我和宋清朗相戀三年骑科,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了橡淑。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,646評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡咆爽,死狀恐怖梳码,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情伍掀,我是刑警寧澤,帶...
    沈念sama閱讀 34,322評(píng)論 4 330
  • 正文 年R本政府宣布暇藏,位于F島的核電站蜜笤,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏盐碱。R本人自食惡果不足惜把兔,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,934評(píng)論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望瓮顽。 院中可真熱鬧县好,春花似錦、人聲如沸暖混。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,755評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至晾咪,卻和暖如春收擦,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背谍倦。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,987評(píng)論 1 266
  • 我被黑心中介騙來(lái)泰國(guó)打工塞赂, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人昼蛀。 一個(gè)月前我還...
    沈念sama閱讀 46,358評(píng)論 2 360
  • 正文 我出身青樓宴猾,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親叼旋。 傳聞我的和親對(duì)象是個(gè)殘疾皇子仇哆,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,514評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容

  • TITLE: 編程語(yǔ)言亂燉 碼農(nóng)最大的煩惱——編程語(yǔ)言太多。不是我不學(xué)習(xí)送淆,這世界變化快税产! 有時(shí)候還是蠻懷念十幾、二...
    碼園老農(nóng)閱讀 5,302評(píng)論 2 35
  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理偷崩,服務(wù)發(fā)現(xiàn)辟拷,斷路器,智...
    卡卡羅2017閱讀 134,633評(píng)論 18 139
  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 171,771評(píng)論 25 707
  • 那些閃過(guò)的啊光影阐斜, 現(xiàn)今它已變成了一道風(fēng)景衫冻。 那躍然紙上的曾經(jīng), 突然喪失了下筆的本領(lǐng)谒出。 無(wú)可奈何從未相請(qǐng)隅俘, 一籌...
    panjw閱讀 117評(píng)論 0 3
  • “我有個(gè)朋友,他有兩個(gè)媳婦笤喳∥樱” 悠悠呷了一口紅酒。 “這不稀奇杀狡∶沙耄”我拿起酒瓶,把瓶底最后一點(diǎn)倒給了她呜象。 “你不用每...
    泡泡老周閱讀 402評(píng)論 0 2