[資訊] 設計模式

通俗易懂的設計模式 - 升級打boss
https://segmentfault.com/a/1190000017463621

流水不腐,戶樞不蠹 — 設計可維護可擴展的系統
https://zhuanlan.zhihu.com/p/56510452

解耦並不難 - 單體系統中的解耦
https://mp.weixin.qq.com/s/VuEnWFqosLdLSV_2KmL1tQ

前端需要知道的 依赖注入(Dependency Injection, DI)
https://imweb.io/topic/571b567505637d4c67ae3f64

Design patterns in NodeJS
https://itnext.io/design-patterns-in-nodejs-990fed17c49c

一、什麼是設計模式
設計模式(Design pattern)代表了最佳的實踐,通常被有經驗的物件導向的軟體發展人員所採用。設計模式是軟體發展人員在軟體發展過程中面臨的一般問題的解決方案。這些解決方案是眾多軟體發展人員經過相當長的一段時間的試驗和錯誤總結出來的。

二、設計模式的類型
2.1創建型模式(Creational)
簡單工廠模式(Simple Factory Pattern)
抽象方法模式(Factory Method Pattern)
抽象工廠模式(Abstract Factory Pattern)
單例模式(Singleton Pattern)
建造者模式(Builder Pattern)
原型模式(Prototype Pattern)

2.2結構型模式(Structural)
適配器模式(Adapter Pattern)
橋接模式(Bridge Pattern)
裝飾器模式(Decorator Pattern)
面板模式(Facade Pattern)
享元模式(Flyweight Pattern)
代理模式(Proxy Pattern)

2.3行為型模式(Behavioral)
責任鏈模式(Chain of Responsibility Pattern)
命令模式(Command Pattern)
反覆運算器模式(Iterator Pattern)
備忘錄模式(Memento Pattern)
觀察者模式(Observer Pattern)
狀態模式(State Pattern)
策略模式(Strategy Pattern)
訪問者模式(Visitor Pattern)
範本方法模式(Template Method Pattern)

三、設計模式的六大原則
開閉原則(Open Close Principle)
裡氏代換原則(Liskov Substitution Principle)
依賴倒轉原則(Dependence Inversion Principle)
介面隔離原則(Interface Segregation Principle)
迪米特法則,又稱最少知道原則(Demeter Principle)
合成複用原則(Composite Reuse Principle)


#AOP, OOP
#modulus, 模組化
#Decorator, 裝飾器
#Middleware, 中介層
#OCP(Open Close Principle), 開閉原則
#SRP(Single Responsibility Principle), 單一功能原則
#DRY(Don't Repeat Yourself), 不做重複事
#KISS(Keep It Simple & Stupid), 注重簡約
#DIP(Dependency inversion principle), 依賴反轉


#程式語言, 演算法, 資料結構, 設計模式, 開閉原則, 裡氏代換原則, 依賴倒轉原則, 介面隔離原則, 最少知道原則, 合成複用原則

留言