Overload (多載) vs. Override (覆寫) — (II)

在 上篇 中,介紹了 Overload (多載) 的種類及實作技巧, 接下來則要討論 — Override (覆寫)!   儘管強調兩者的差異,它們仍息息相關 🤔, 皆是實踐 多型 (polymorphism) 的技術之一, 善用這些技巧,才能有效實作彈性、可擴充的程式!   […]

Overload (多載) vs. Override (覆寫) — (I)

Overload (多載) 與 Override (覆寫) 為程式設計的 2 個常見性質, 對 物件導向程式設計 (OOP) 尤其重要。   或許是原文相似的關係,兩者時常令初學者搞混 😨, 不然就是對其了解只停留在: 「多個相同方法名稱」、「改寫父類別方法」…,而不懂實際運用。 &nb […]

發佈/訂閱模式 vs 觀察者模式

GoF 原著中,告訴我們 觀察者模式 (Observer Pattern), 又稱為 發佈/訂閱模式 (Publish/Subscribe Pattern)。 (以下簡稱 Pub/Sub)   然而,目前實務開發的背景中, Pub/Sub 更廣泛地被指為: 用於建立一些 事件驅動 (Event-dr […]

觀察者模式 (Observer Pattern)

觀察者模式 (Observer Pattern) ,GoF 23種設計模式其一,行為型, 又稱為 publish-subscribe (發佈-訂閱) [註1]、dependants (家眷) 模式, 其定義: Define a one-to-many dependency between ob […]

命令模式 (Command Pattern)

命令模式 (Command Pattern),GoF 23 種設計模式其一,行為型, 又稱為 指令、 action (動作)、transaction (交易) 模式, 其定義: Encapsulate a request as an object, thereby letting you parameteri […]

控制反轉 (IoC) 與 依賴注入 (DI)

IoC/DI : IoC — Inversion of Control,控制反轉 DI — Dependency Injection,依賴注入   IoC,是一種 設計原則: 藉由 『分離組件 (Components) 的設置與使用』,來降低類別或模組之間的耦合度 (i.e. […]

依賴反向原則 (Dependency-Inversion Principle, DIP)

依賴反向原則 (Dependency-Inversion Principle, DIP), [dɪˋpɛndənsɪ] [ɪnˋvɝʃən] [ˋprɪnsəp!], 又譯為:相依性反向、依賴反轉原則,是物件導向系統程式中, 五個基礎設計原則 『 S […]