大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

面向對象設計原則

開閉原則

在軟件開發中,為了提高軟件系統的可維護性和可復用性,增加軟件的可擴展性和靈活性,程序員要盡量根據 7 條原則來開發程序,從而提高軟件開發效率、節約軟件開發成本和維護成本。我們將在下面的幾節中依次來介紹這 7 條原則,本節首先介紹開閉原則。

開閉原則的定義

開閉原則(Open Closed Principle,OCP)由勃蘭特·梅耶(Bertrand Meyer)提出,他在 1988 年的著作《面向對象軟件構造》(Object Oriented Software Construction)中提出:軟件實體應當對擴展開放,對修改關閉(Software entities should be open for extension,but closed for modification),這就是開閉原則的經典定義。

這里的軟件實體包括以下幾個部分:

• 項目中劃分出的模塊

• 類與接口

• 方法

開閉原則的含義是:當應用的需求改變時,在不修改軟件實體的源代碼或者二進制代碼的前提下,可以擴展模塊的功能,使其滿足新的需求。

開閉原則的作用

開閉原則是面向對象程序設計的終極目標,它使軟件實體擁有一定的適應性和靈活性的同時具備穩定性和延續性。具體來說,其作用如下。

1、對軟件測試的影響

軟件遵守開閉原則的話,軟件測試時只需要對擴展的代碼進行測試就可以了,因為原有的測試代碼仍然能夠正常運行。

2、可以提高代碼的可復用性

粒度越小,被復用的可能性就越大;在面向對象的程序設計中,根據原子和抽象編程可以提高代碼的可復用性。

3、可以提高軟件的可維護性

遵守開閉原則的軟件,其穩定性高和延續性強,從而易于擴展和維護。

開閉原則的實現方法

可以通過“抽象約束、封裝變化”來實現開閉原則,即通過接口或者抽象類為軟件實體定義一個相對穩定的抽象層,而將相同的可變因素封裝在相同的具體實現類中。

因為抽象靈活性好,適應性廣,只要抽象的合理,可以基本保持軟件架構的穩定。而軟件中易變的細節可以從抽象派生來的實現類來進行擴展,當軟件需要發生變化時,只需要根據需求重新派生一個實現類來擴展就可以了。

下面以 Windows 的桌面主題為例介紹開閉原則的應用。

【例1】Windows 的桌面主題設計。

分析:Windows 的主題是桌面背景圖片、窗口顏色和聲音等元素的組合。用戶可以根據自己的喜愛更換自己的桌面主題,也可以從網上下載新的主題。這些主題有共同的特點,可以為其定義一個抽象類(Abstract Subject),而每個具體的主題(Specific Subject)是其子類。用戶窗體可以根據需要選擇或者增加新的主題,而不需要修改原代碼,所以它是滿足開閉原則的,其類圖如圖 1 所示。

圖1 Windows的桌面主題類圖

全部教程
主站蜘蛛池模板: 中文在线不卡 | 美国毛片一级视频在线aa | 伊人久久中文 | 天天综合天天添夜夜添狠狠添 | 欧美极品妇xxxxxbbbbb | 亚洲一区二区三 | 国产精品国产三级国产专区5o | 国产福利在线视频 | 国产一区二区在线观看免费 | 欧美成a| 99热这里只精品99re66 | 欧美日韩免费播放一区二区 | 国产福利福利视频 | 天天视频免费入口 | 午夜国产在线 | 久久男人资源站 | 一级香蕉视频在线观看 | 亚洲原创区 | 亚洲成人精品久久 | 国产精品情侣久久婷婷文字 | 啪啪网站色大全免费 | 国产福利不卡视频在免费播放 | 日韩免费在线观看 | 福利在线看 | 色婷婷综合久久久 | 国产一区二区三区亚洲综合 | 亚洲影院中文字幕 | 欧美亚洲另类视频 | 98精品国产综合久久 | 特级毛片a级毛免费播放 | 天天操天天干天天插 | www.奇米第四色 | 色综合久久精品中文字幕首页 | 极品精品国产超清自在线观看 | 中文字幕日本一区久久 | 四虎影视色费永久在线观看 | 成人国产精品一区二区网站 | 免费国产小视频在线观看 | 一级毛片aaa片免费观看 | 91久久国产精品 | a毛片在线观看 |