實現擴展的關鍵是什麼?
系統的核心能力(
系統核心)和可以擴展(擴展部分) 需要滿足的關係:- 系統核心需要做到對擴展部分一無所知(通常是通過接口進行約束); 只有做到這一點系統才能夠擴展;
- 擴展部分需要了解系統的所有的細節,流程,並選擇性的實現系統中定義好的約束;
常用的實現方式
- 通過擴展點 + 業務身份的方式來實現:其實最終形成了一個二維矩陣,每個業務選擇性的實現自己需要的擴展點;
- 通過plug-in插件來實現: 其實思想是一樣的;
SOLID原則和擴展性
- SOLID原則中和擴展性關係最強的就是O,開閉原則,思想都是一樣的。 核心的思想都是分離穩定部分和擴展部分。
閱讀更多 十萬個為神麼 的文章