教育行業(yè)A股IPO第一股(股票代碼 003032)

全國咨詢/投訴熱線:400-618-4000

什么是開閉原則?軟件設(shè)計原則介紹

更新時間:2021年08月19日15時23分 來源:傳智教育 瀏覽次數(shù):

好口碑IT培訓(xùn)

在軟件開發(fā)中,為了提高軟件系統(tǒng)的可維護性和可復(fù)用性,增加軟件的可擴展性和靈活性,程序員要盡量根據(jù)6條原則來開發(fā)程序,從而提高軟件開發(fā)效率、節(jié)約軟件開發(fā)成本和維護成本。這六條分別是開閉原則、里氏代換原則、依賴倒轉(zhuǎn)原則、接口隔離原則、迪米特法則、合成復(fù)用原則,下面主要介紹開閉原則。


什么是開閉原則?

開閉原則指對擴展開放,對修改關(guān)閉。在程序需要進行拓展的時候,不能去修改原有的代碼,實現(xiàn)一個熱插拔的效果。簡言之,是為了使程序的擴展性好,易于維護和升級。

想要達到這樣的效果,我們需要使用接口和抽象類。

因為抽象靈活性好,適應(yīng)性廣,只要抽象的合理,可以基本保持軟件架構(gòu)的穩(wěn)定。而軟件中易變的細節(jié)可以從抽象派生來的實現(xiàn)類來進行擴展,當軟件需要發(fā)生變化時,只需要根據(jù)需求重新派生一個實現(xiàn)類來擴展就可以了。

下面以搜狗輸入法的皮膚為例介紹開閉原則的應(yīng)用。

【例】搜狗輸入法 的皮膚設(shè)計。

分析:搜狗輸入法的皮膚是輸入法背景圖片、窗口顏色和聲音等元素的組合。用戶可以根據(jù)自己的喜愛更換自己的輸入法的皮膚,也可以從網(wǎng)上下載新的皮膚。這些皮膚有共同的特點,可以為其定義一個抽象類(AbstractSkin),而每個具體的皮膚(DefaultSpecificSkin和HeimaSpecificSkin)是其子類。用戶窗體可以根據(jù)需要選擇或者增加新的主題,而不需要修改原代碼,所以它是滿足開閉原則的。

軟件測試原則之開閉原則



猜你喜歡:

軟件設(shè)計模式分類有哪些分類?

什么是單例模式?有幾種?Java面試題常問

dos命令切換到d盤:dos常用命令介紹

JDBC連接oracle數(shù)據(jù)庫步驟

傳智教育java開發(fā)培訓(xùn)課程

0 分享到:
和我們在線交談!