向C語言致敬
來源:易賢網(wǎng) 閱讀:662 次 日期:2014-09-09 10:24:52
溫馨提示:易賢網(wǎng)小編為您整理了“向C語言致敬”,方便廣大網(wǎng)友查閱!

在Cloudmetrx 公司,我們大量的使用C語言。鑒于不久前,UNIX傳奇人物、C語言的創(chuàng)始人Dennis Ritchie 的過世,我們向C語言表示致敬是再合適不過的了。

考慮到我們還使用了其它的語言——Clojure,Node.js和其它很流行的平臺,這種大量的依賴C語言的現(xiàn)象更顯得不平常。并不是這種語言更古老,更“受人尊敬”,我們才會傾向于使用這種語言和技術。只是因為當面對高性能的計算時,沒有任何語言能跟C語言相比。有人提出了Java,但這些人錯了。沒有什么語言能跟C語言相比。

以我的觀點,C語言這么多年來依舊保持流行的原因在于它的相對自由的編程范式。大多數(shù)的語言,無論是好的還是差的,都生來伴隨著一些鼓勵使用的編程范式——面向?qū)ο蟮模瘮?shù)式的,等。于是硬件的設計就趨向?qū)@種范式進行最好的支持。

而C語言,并不去逼迫硬件進行改造。它提供了你對硬件進行粗放型訪問的能力。你可以對硬件做你任何想做的操作。沒有任何什么編程范式帶來的約束——你也可以強制自己使用任何范式。

在邱奇-圖靈論題(Church–Turing thesis)中,C語言就是圖靈機(Turing)。C語言基本上就是數(shù)學加上你可以在上面書寫的紙帶。所有的算法都是跟兩種基本操作有關:對紙帶的讀和寫,然后做小型的算法操作。

當時,世界上所有參考這個理論生產(chǎn)的計算設備看起來都類似圖靈機,但卻經(jīng)常被按照Church形式使用。Church論述中的lambda運算考慮的是將計算行為做有意義的優(yōu)雅的表現(xiàn),這是面向人類的;而圖靈機考慮的計算行為是面向基于晶體管和電子管的機器的。這是兩種自然的方向;C語言更傾向于追求駕馭真實硬件的能力,代價是損失可讀性和優(yōu)雅性。

從誕生到流行,并持續(xù)數(shù)十年保持活躍,創(chuàng)造這樣的一種技術是何等的豐功偉績。我不認為C語言的自由范式是成功的唯一理由。它的語法也是同樣的精彩 ——盡管這種語言是復雜的,盡管內(nèi)存管理是復雜的,C語言使這些變得極其的清晰,讓你知道事情是如何的進行的。C語言的語法還影響了其它很多種語言——從 Perl到Java到Javascript——這都是它的語法的清晰和實用的證明。

雖然C語言很強大,但不失編寫的樂趣。坐下來花5個小時用vim編寫C程序?qū)ξ襾碚f是一件很享受的事。就像是你在駕駛一輛手動檔的汽車,你感覺它跑的越來越快。經(jīng)過一個月的使用Python比較,C語言駕駛起來就像帶有噴氣機引擎的寶馬。它的速度是風馳電掣的;你可以運行time計算,結(jié)果會讓你張大嘴巴——百萬分之一秒!驚奇。

但C語言并不是一直這樣可贊。C語言有時會變成淘氣使壞的女孩,讓你絕望,困惑,不得不使用gdb。但是在一天的最后,你還是會回來擁抱C——它的速度太誘人了。

在Cloudmetrx公司,我們所有的金融相關的邏輯處理都是使用的C語言,除bootstrapping。沒有C語言這樣驚人的處理速度,我們即時運算的產(chǎn)品是不可能實現(xiàn)的,我們不可能去處理這樣大規(guī)模的負載。事實上,我們的一個用C寫的標價的模塊和一個用Java寫的模塊的速度差別是明顯的。雖然不是很大,但足夠明顯;明顯得對于實時金融分析來說顯得太明顯。

這就是C語言,一個淘氣的女孩,一個速度妖姬。向你致敬!

更多信息請查看IT技術專欄

更多信息請查看網(wǎng)絡編程
易賢網(wǎng)手機網(wǎng)站地址:向C語言致敬

2025國考·省考課程試聽報名

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關注公眾號:hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權所有:易賢網(wǎng)