設計模式 開放封閉原則

2021-05-26 00:58:03 字數 954 閱讀 1168

物件導向設計原則中,最重要的原則就是此原則。

開放封閉原則解釋:軟體實體(類,模組,函式等)應該是可以擴充套件的,但是是不可以修改的。

開放封閉原則有兩大特徵要牢記

一:對於擴充套件是開放的

二:對於修改是封閉的

為什麼要用到開放封閉原則?

我們在做任何系統的時候,都不要指望系統一開始就需求確定,這是不現實也是不科學的想法,既然需求一定是會變化的,那麼我們如何在面對需求變化時,設計的**或軟體可以保持相對容易修改,保持相對穩定,不至於新的需求到來,整個推倒重做。只要保持開放封閉原則就可以做到。

面對新需求的到來,要完成新的需求,對程式的改動是通過新增加**完成的,不是通過修改現有**完成的。

開放封閉原則的兩個問題?

開放封閉原則是說,你設計軟體或**的時候,時刻要把需求的變化考慮全面了,盡量的讓這個類足夠好,寫好了就不去修改它,如果新的需求來了,增加一些類來完成新的需求,原來的**能不動則不動。  

一:首先,乙個人不可能把所有的問題考慮全面了,如果什麼問題都考慮到了,就不是人了,是先知了。

二:其次,乙個類怎麼可能寫好了就再也不去修改呢。

開放封閉原則中的兩個問題的解決辦法

在我們最開始寫程式的時候,假設需求變化不會發生,但當發生需求變化時,我們就立即(當發生小變化時,就及早的去想辦法應對發生大變化的可能)構造抽象來隔離以後發生的同類變化。不能等到開發工作進行到一半了或很久了,在考慮抽象,考慮分離,那時候就很困難了。

放封閉原則的好處

遵循這個原則可以帶來物件導向技術中聲稱的可維護,可擴充套件,可復用,靈活性好這些好處。

開放封閉原則的注意事項

不要對應用程式中的每個部分都刻意的進行抽象,應該對應用程式中出現頻繁變化的那部分構造抽象。

設計模式原則 開放 封閉原則

定義 軟體實體應該是可以擴充套件,但是不可修改,對擴充套件開放,對更改封閉 場景 某公司需要招聘3類員工,分別是 主管,程式設計師,銷售。公司根據不同的員工的需求,配置不同的資源。比如程式設計師應該配台電腦。首先定義乙個 員工型別 列舉 using system using system.colle...

設計模式 開放封閉原則

物件導向設計原則中,最重要的原則就是此原則。開放封閉原則解釋 軟體實體 類,模組,函式等 應該是可以擴充套件的,但是是不可以修改的。開放封閉原則有兩大特徵要牢記 一 對於擴充套件是開放的 二 對於修改是封閉的 為什麼要用到開放封閉原則?我們在做任何系統的時候,都不要指望系統一開始就需求確定,這是不現...

設計模式之開放封閉原則

親愛的博友們,感謝來到darren的部落格 最近一直很忙,今天抽空開了一下開放封閉原則,再這裡和各位分享一下學習心得 開放封閉原則 軟體實體 類,模組,函式 等等,對於擴充套件是開放的,對於修改是封閉的。對於程式設計而言,怎麼的設計才能面對需求的改變卻可以保持相對的穩定,從而可以使得系統可以再第乙個...