993
技術社區[雲棲]
連載:麵向對象葵花寶典:思想、技巧與實踐(36) - 設計原則如何用?
經過前麵深入的闡述,SOLID的原則我們已經基本上講清楚了,但如果想熟練的應用SOLID原則,僅僅知道SOLID是什麼(what)還不夠,我們還需要知道SOLID原則在什麼時候和什麼場景應用(when或where)。
幸運的是,SOLID原則的5個獨立原則在實際應用中基本上都是獨擋一麵,並不會在某個地方需要同時從可選的幾個原則中挑選一個最優的原則來應用,這樣大大降低了我們應用SOLID原則的難度。
SOLID原則具體的應用場景如下:
- SRP原則:用於類的設計
當我們想出一個類,或者設計出一個類的原型後,使用SRP原則核對一下類的設計是否符合SRP要求。
- OCP原則:總的指導思想
OCP原則是一個總的指導思想,在麵向對象的設計中,如果能夠符合LSP/ISP/DIP原則,一般情況下就能夠符合OCP原則了。
除了在麵向對象的軟件設計中外,OCP也可以用於指導係統架構設計,例如常見的CORBA、COM協議,其實都可以認為是OCP原則的具體應用和實現。
- LSP原則:用於指導類繼承的設計
當我們設計類之間的繼承關係時,使用LSP原則來判斷這種繼承關係是否符合LSP要求。
- ISP原則:用於指導接口的設計
ISP原則可以認為是SRP原則的一個變種,本質上和SRP的思想是一樣。SRP用於指導類的設計,而ISP用於指導接口的設計。
- DIP原則:用於指導類依賴的設計
當我們設計類之間的依賴關係時,可以使用DIP原則來判斷這種依賴是否符合DIP原則。
DIP原則和LSP原則相輔相成:DIP原則用於指導抽象出接口或者抽象類,而LSP原則指導從接口或者抽象類派生出新的子類。
================================================
轉載請注明出處:https://blog.csdn.net/yunhua_lee/article/details/37900899
================================================
最後更新:2017-04-03 05:39:25