面象对象设计6大原则之二:开放封闭原则
生活随笔
收集整理的這篇文章主要介紹了
面象对象设计6大原则之二:开放封闭原则
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
轉載自?面象對象設計6大原則之二:開放封閉原則
開放封閉原則(OCP),The Open Closed Principle
定義
一個軟件的實體,包括類、方法、模塊、應該對擴展開放,對修改關閉。
也就是說一個軟件的實體應該通過擴展的方式來修改變化,而不是修改已有實體源代碼。
開放封閉原則也是最基本需要遵守的原則,我們應該盡量保證系統的穩定性,我們在實現另外一個功能的時候不能修改之前已有的代碼以免造成之前的功能出現BUG,帶來不必要的麻煩,所以開放封閉原則正是引導我們去設計一個穩定、方便擴展的系統。
在實際應用中我們一般會有以下幾種做法保證開放封閉原則:
1、抽象出一個接口或者抽象類,定義公共的方法,達到擴展的目的。
2、參數類型和引用類型使用接口或者抽象類,不能依賴實現類。
3、接口和抽象類不能修改,可以使用繼承接口或者抽象父類的形式達到擴展的目的。
這些應用看起來也并不復雜,無非是合理地定義接口和抽象類,不同的業務功能采用不同的實現類達到擴展,像設計模式中的策略模式、模板方式模式等都是開放封閉的原則。
總結一下,開放封閉原則具有以下幾個優點:
1、方便擴展,提高了可維護性。
2、不影響已有功能,提高了系統穩定性和減少了重復測試。
3、擴展之前的邏輯,提高了代碼復用性。
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎
總結
以上是生活随笔為你收集整理的面象对象设计6大原则之二:开放封闭原则的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: LOL职业比赛用的电脑配置是什么,多少钱
- 下一篇: 面象对象设计6大原则之三:里氏替换原则