迪公尺特法則

2021-08-25 15:35:30 字數 506 閱讀 8434

一、什麼是迪公尺特法則?

每個軟體實體對其他的實體只有最少的了解,而且僅限於那些與本實體密切相關的軟體實體 。

也可說成:

只與直接的朋友通訊 。

二、狹義迪公尺特法則

如果兩個類不必彼此直接通訊,那麼這兩個類就不應該發生直接的相互作用。如果其中的乙個類需要呼叫另乙個類的方法,可通過第三者來**。

狹義迪公尺特法則有乙個明顯的缺點:會在系統裡產生大量的小方法,而且很可能散落在各個角落。會導致不同模組之間的通訊效率降低,不容易協調。

為了彌補這個缺點,可結構依賴倒轉原則。依賴於抽象的陌生人。也就是新增抽象陌生人,然後說將抽象陌生人當作朋友。

三、廣義迪公尺特法則

廣義迪公尺特法則要求盡可能的隱藏實現細節:

(1)       優先將乙個類設定成不變類。

(2)       盡量降低乙個類的訪問許可權

(3)       盡量降低成員的訪問許可權

(4)       限制區域性變數的有效範圍

迪公尺特法則

定義 乙個物件應該對其他物件保持最少的了解。問題由來 類與類之間的關係越密切,耦合度越大,當乙個類發生改變時,對另乙個類的影響也越大。解決方案 盡量降低類與類之間的耦合。自從我們接觸程式設計開始,就知道了軟體程式設計的總的原則 低耦合,高內聚。無論是面向過程程式設計還是物件導向程式設計,只有使各個模...

迪公尺特法則

自從我們接觸程式設計開始,就知道了軟體程式設計的總的原則 低耦合,高內聚。無論是面向過程程式設計還是物件導向程式設計,只有使各個模組之間的耦合盡量的低,才能提高 的復用率。怎麼樣程式設計才能做到低耦合呢?那正是迪公尺特法則要去完成的。類與類之間的關係越密切,耦合度越大,當乙個類發生改變時,對另乙個類...

迪公尺特法則

迪公尺特法則又稱為最少知識法則,即 如果兩個類不必彼此直接通訊,那麼這兩個類就不應該發生直接的相互作用。如果其中乙個類需要呼叫另乙個類的某乙個方法的話,可以通過第三方來 這個呼叫。迪公尺特法則特別強調的是類之間的松耦合,即在類的結構設計上,每乙個類都應該盡量降低成員的訪問許可權。我們在進行程式設計時...