開放 封閉原則(OCP)

2021-09-26 13:35:48 字數 405 閱讀 8932

幾乎所有的系統,都不可能一成不變,只要是需求,就一定是會變化的。

如何在面對需求的變化的時候,設計的軟體可以相對容易修改,不至於新的需求一來,就把程式推到重來。怎麼樣的設計才能面對需求的改變卻可以保持相對穩定,從而使得系統可以在第乙個版本以後不斷推出新的版本。這就是ocp原則要告訴我們的東西。

面對需求,對程式的改動是通過增加新**進行的,而不是更改現有的**。(我一想到最近對接的任務他們面對新需求的做法竟然是資料庫加字段我就頭皮發麻)

ocp原則是物件導向設計的核心所在,遵循這個原則可以帶來物件導向技術所聲稱的巨大好處,也就是可維護,可擴充套件,可復用,靈活性好。我們應該僅僅對程式中發生頻繁變化的那部分做出抽象,然而,對於應用程式中的每個部分都刻意的進行抽象同樣不是乙個好主意,拒絕不成熟的抽象和抽象本身一樣重要!

開放封閉原則(OCP)

開放封閉原則 軟體實體 類,模板,函式等 應該是可以擴充套件的,但是不可以修改。舉個栗子,加入我們要設計乙個系統,在專案啟動的時候我們不可能一下子把所有的需求全部考慮到。我們所需要做的就是多擴充套件,少修改!在我們最初編寫 的時候,假設變化不會發生。當變化發生的時候,我們就建立抽象來隔離以後發生的同...

OCP開放封閉原則

軟體實體 類 模組 函式等 應該是可以擴充套件的,但是不可修改。如果正確的應用了ocp原則,那麼 以後在進行同樣的改動時,就只需要新增新的 不必修改已經正常執行的 1.對於擴充套件是開放的 這意味著模組的行為是可以擴充套件的。當應用的需求改變時,我們可以對模組進行擴充套件,使其具有滿足那些改變的新行...

OCP開放封閉原則

軟體實體 類 模組 函式等 應該是可以擴充套件的,但是不可修改。如果正確的應用了ocp原則,那麼 以後在進行同樣的改動時,就只需要新增新的 不必修改已經正常執行的 1.對於擴充套件是開放的 這意味著模組的行為是可以擴充套件的。當應用的需求改變時,我們可以對模組進行擴充套件,使其具有滿足那些改變的新行...