透明性 來點光 unix程式設計藝術學習筆記

2021-08-26 03:46:05 字數 403 閱讀 7104

執行各種方法保持**簡潔,也要專注同其他人互動的方式。

要追求**的透明,最有效的方法很簡單,就是不要在具體操作的**上疊放太多的抽象層。

這裡作者又在批判oo的厚膠合層和過多的抽象層。

:要設計簡單而透明的演算法和資料結構緊貼基面。

透明性和可顯性對除錯和維護的作用較大。

不要建造過分精細的抽象城堡。

這裡說的意思應該是不要過度保護細節,乙個程式要能夠展示其行為和執行狀態,要有除錯和探測開關。

暴露一些資訊,以培養更聰明的使用者。

透明的程式更容易定位和修復bug。

透明的程式更具有可維護性。

使用簡單的演算法。

為透明性和可顯性而編碼 UNIX程式設計藝術學習筆記

透明性和可顯性同模組性一樣,主要是設計的特性而不是 的特性 1 程式呼叫層次中最大的靜態深度是多少?不考慮遞迴,為了建立心理模型來理解 的操作,人們將要呼叫多少層?這個應該不是實際的 呼叫層次。我現在傾向於小函式,所以呼叫層次會比較深。它這個應該是理解上的層次。2 是否具有明顯,強大的不變性質?不變...

為透明性和可顯性而編碼 UNIX程式設計藝術學習筆記

透明性和可顯性同模組性一樣,主要是設計的特性而不是 的特性 1 程式呼叫層次中最大的靜態深度是多少?不考慮遞迴,為了建立心理模型來理解 的操作,人們將要呼叫多少層?這個應該不是實際的 呼叫層次。我現在傾向於小函式,所以呼叫層次會比較深。它這個應該是理解上的層次。2 是否具有明顯,強大的不變性質?不變...

程式庫,物件導向語言 unix程式設計藝術學習筆記

強烈傾向於把程式分解成有膠合層連線的庫集合,特別是共享庫。使用庫來達到c語言的模組性。庫分層的乙個重要形式是外掛程式。例項分析 gimp外掛程式 unix的模組化傳統就是薄膠合層原則。也就是程式底層和頂層之間的抽象層越少越好。原因可能是因為c語言建立抽象層非常困難。oo語言鼓勵具有厚重的膠合和複雜層...