不可能的全盤理解

發表於2013-06-12

| 2013-06-12 21:34   分享: 1    

不妨假想一下,你剛買了一臺MacBook Air,你的目標是要成為你的機器的主宰者,試圖理解它在各個層次上是怎樣運作的。

Amit Singh的《深入Mac OS X:系統方法(Mac OS X Internals: A System Approach)》是一個很好的出發點。比起程式設計,它更多的是關於作業系統的所有元件如何結合在一起的深度探討:韌體的作用,啟動時事件的發生序列,裝置驅動程式是做什麼的,等等。在1680頁的厚度上,它並非一本輕鬆的消夏讀物。

要想真正地理解硬體,Intel慷慨地為我們提供了免費的七卷套文件。為了儘量保持簡單,我僅僅推薦其中的《Intel 64和IA-32體系軟體開發者手冊第1卷:基礎架構(Intel 64 and IA-32 Architectures Software Developer's Manual Volume 1: Basic Architecture)》(550頁)和描述了指令集的兩卷(分別是684頁和704頁)。

Objective-C是OS X所使用的程式語言。謝天謝地,我們有Apple提供的簡潔的《Objective-C程式設計語言(The Objective-C Programming Language)》(137頁)。

當然,Objective-C是C語言的一個超集,所以你同樣應當過一遍第二版的《C程式設計語言(The C Programming Language)》(274頁)。

現在,我們將要開始接觸OS X的核心API了。《Cocoa基礎指南(Cocoa Fundamentals Guide)》有239頁,《應用程式套件框架(Application Kit Framework Reference)》則是隻5069頁的巨獸。它的用處在於對每個API呼叫都提供了詳盡的檔案式的說明。適可而止地,關於Cocoa文件的部分我將就此打住,雖然關於繪圖、Core Audio、Core Animation和其他一打東西還有更多有用的書籍。

哦,等等,OpenGL並沒有包含在Cocoa裡面,所以784頁的《OpenGL參考手冊(OpenGL Reference Manual)》在等著你。然後是另外800頁的《OpenGL著色語言(OpenGL Shading Language)》

以上的全部一共是10921頁——只差79頁就到11萬頁了。我已經忽略了那些數以百計的系統元件的man幫助頁和Xcode文件。而且,我還沒有涉及到那些讓你能夠用OpenGL做出一些有趣玩意的圖形學技巧,以及怎樣寫出好的C和Objective-C程式碼或者其他任何與物件導向設計相關的東西,還有……

原文:  A Complete Understanding is No Longer Possible by James Hague

via http://www.soimort.org/posts/111/ 

不可能的全盤理解

相關文章