2022年1月10日 星期一

[Geroge]面向對象設計-依賴倒置原則DIP

 --影片內容--

依賴導致原則(Dependency Inversion Principle)

定義: 要依賴抽象, 不要依賴於具體, 客戶端依賴於抽象耦合

低耦合

抽象不應當依賴於細節, 細節應當依賴於抽象

要針對介面編程, 不針對實現編程

優點: 使用傳統過程化程序設計所創建的依賴關係, 策略依賴於細節, 這是糟糕的, 因為策略受到細節改變的影響, 依賴導致原則使細節和策略都依賴於抽象, 抽象的穩定性決定了系統的穩定性


例子:

一個mother類別, 具有讀書功能, 如果我們將它和Book類別綁在一起, 很顯然, 如果mother要讀Newspaper就沒有辦法實行, 這就是依賴具體, 改法是, 產生一個抽象的介面, 使Mother類別去依賴抽象的介面























這樣設計下, 就使Mother讀取內容變得很有彈性, 可以是Book, 可以是Newespaper, 依賴介面設計, 依賴抽象, 而不是依賴於具體的實現, 這樣我們程式的靈活性就更好了

參考: 

https://www.youtube.com/watch?v=f4u4YNhCO6U&list=PLGmd9-PCMLhb16ZxeSy00qUsBazXgJyfM&index=7

https://github.com/iw5420/geroge-design-pattern



沒有留言:

張貼留言

AI 時代的軟體工程

  AI 時代的軟體工程:從「代碼寫手」到「系統指揮官」的轉型之路 2026 年,軟體工程正經歷自編譯器發明以來最大的範式轉移。AI 不再只是 IDE 側邊欄的輔助工具,而是進化為具備自主性的 Agent(代理人) ,這場變革正重新定義「工程師」的核心價值。 一、 現狀:AI 普...