大战熟女丰满人妻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的桌面主題類圖

全部教程
主站蜘蛛池模板: 九九九精品 | 国产欧美精品国产国产专区 | 国产精品亚洲欧美日韩区 | 一级黄色片网站 | 久久99国产综合精品 | 国产免费人视频在线观看免费 | 午夜精品久久久久久久2023 | 99久久精品国产高清一区二区 | 亚洲精品6久久久久中文字幕 | 国产成人精品视频免费大全 | 九九久久精品这里久久网 | 日本在线观看不卡 | 日本免费高清一区 | 免费视频成人国产精品网站 | 日本不卡免免费观看 | 最新国产精品自拍 | 久久精品影院一区二区三区 | 日韩一区二区免费视频 | 手机看片福利盒子久久 | 一区二区三区四区在线观看视频 | 天海翼一区二区三区高清视频 | 99精品国产一区二区三区 | 国产成a人片在线观看视频99 | 久久天天躁狠狠躁夜夜不卡 | 奇米777四色影视 | 欧美一级毛片高清毛片 | 国产性tv国产精品 | 91成人免费观看在线观看 | 欧美一级片网址 | 久久国产亚洲偷自 | 中文字幕亚洲无线码在线一区 | 久草视频网 | 一本大道久久a久久综合 | 日韩一区二区在线观看 | 97精品一区二区三区在线不卡 | 蜜桃日本一道无卡不码高清 | 国产在线精品香蕉综合网一区 | 免费看成人播放毛片 | 奇米影视777俺要去888 | www.久久99| 蜜桃破解版免费看nba |