開放封閉原則的核心的思想是軟件實體是可擴展,而不可修改的。也就是說,對擴展是開放的,而對修改是封閉的。因此,開放封閉原則主要體現在擴展開放,意味著有新的需求或變化時,可對現有代碼擴展,以適應新的情況;對修改封閉,意味著類一旦設計完成,就可獨立完成工作。
實施開放封閉原則的基本思路是對抽象編程,而不對具體編程,因為抽象相對穩定。讓類依賴于固定的抽象,所以對修改就是封閉的;而通過面向對象的繼承和對多態機制,可以實現對抽象體的繼承,通過覆寫其方法來改變固有行為,實現新的擴展方法,所以對于擴展就是開放的。
擴展資料:
實現開放封閉規則建議
1、開放封閉原則,是最為重要的設計原則,Liskov替換原則和合成/聚合復用原則為開放封閉原則的實現提供保證。
2、可以通過Template Method模式和Strategy模式進行重構,實現對修改封閉、對擴展開放的設計思路。
3、封裝變化,是實現開放封閉原則的重要手段,對于經常發生變化的狀態一般將其封裝為一個抽象,例如銀行業務中的IBankProcess接口。
4、拒絕濫用抽象,只將經常變化的部分進行抽象,這種經驗可以從設計模式的學習與應用中獲得。
參考資料來源:百度百科-開放封閉原則