本月 (三月) 底,小弟將在 [酷!學園] 分享一個新主題「我所知道的 C 語言」,以賞析的角度去探討 C 程式語言。余光中教授曾對「知性」分析為兩端:一是知識,一是思考。有知識而無見解,只是一堆死資料;思想得多而知識不夠,又淪於空想。有幸得以在短暫的人生中,以半數的光陰透過程式設計,賦予冰冷的硬體一些新的生命,背後強大的工具,正是 C 程式語言,而廣泛接觸了多樣的作業系統與硬體架構後,更覺探索資訊系統「知性」的可貴。如何將「知識」與「思考」融合,並投射於以豐富面貌出現的資訊系統,正是本議程所要探討與分享的。以下摘錄酷!學園的 [活動資訊]:
建議聽者背景: (任一)
已熟悉 C 語言程式設計者,企求探索多元的開發
粗淺知曉 C 程式語法,對現實資訊應用的知性,有高度興趣者
具任何一種程式語言之實務經驗者
講題簡介: C 語言雖然是一種通用的程式語言,但本質上是為了開發 UNIX 作業系統而提出,我們非但不可忽略這個事實,反而要適度從硬體的觀點去反思軟體設計,是的,透過 C 語言這個「不軟不硬」的美妙語言。本議程將以物件導向與資料表示等題材,探討遊覽 C 語言開發的知性美。
預定提綱:
海角 C 語言 -- 被遺忘的淒美故事
高度物件導向的 C 語言
窺探 C 程式、尋訪 C 程式的資料表示、奇妙的 pointer 與 macro
C 語言與硬體擦出的火花,呈現 C 設計的彈性
軟硬體規格:x86/IA32, C99, gcc 4.3.3, Ubuntu Linux 9.04, kernel 2.6.28
物件導向程式設計大師 Martin Fowler 曾說:你永遠無法讓物件導向的新手們瞭解為什麼要採取這種分散式的設計,你只能要求他們如此做,幾年後,他們會突然頓悟,腦袋有如重生一般。而我們的問題則是,倘若已被動地接受 C 程式語言的陶冶多年後,卻遲遲不能「頓悟」,究竟是什麼環節錯了呢?所以小弟試著回顧對資訊系統的「知性」,並以 C 語言再詮釋,期待您的指教,謝謝! 由 jserv 發表於 March 8, 2009 04:05 PM