1. 程式人生 > >第一節 面向物件的設計原則

第一節 面向物件的設計原則

  • python與Java不同 python支援多重繼承。

面向物件的設計原則:

開閉原則 :

     類或物件及其方法對於擴充套件來說應該是開放的  但是對於修改來說應該是封閉的

優點:

  1. 現有的類不會被修改  因此退化的可能性較小
  2. 它還有助於保持以前程式碼的向後相容性

控制反轉原則  :

       高層級的模組不應該依賴於低層級的模組,他們應該都依賴於抽象。細節應該依賴於抽象,而不是抽象依賴於細                   節。

優點:

  1. 消弱了模組間的耦合,因此消除了系統中的複雜性/剛性
  2. 由於在依賴模組之間有一個明確的抽象層,因此便於通過更好的方式處理模組之間的依賴關係

介面隔離原則  :

       客戶端不應該依賴於他們不需要的介面。

優點:

  1. 他強制開發人員編寫 瘦身型  介面  並使方法與介面緊密相關
  2. 防止向介面中隨意新增方法

單一職責原則 :

        類的職責單一,引起類變化的原因單一。

優點:

  1. 每當一個功能發生變化時,除了特定的類需要改變外,其他類無需變動。
  2. 此外,如果一個類有多種功能,那麼依賴他的類必定會由於多種原因而經歷多次修改,這事應該避免的

替換原則 :

        派生類必須能夠完全取代基類。