麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

設計模式原則之開閉原則

2019-11-14 23:39:32
字體:
來源:轉載
供稿:網友
設計模式原則之開閉原則

開閉原則(OCP)是面向對象設計中“可復用設計”的基石,是面向對象設計中最重要的原則之一,其它很多的設計原則都是實現開閉原則的一種手段。

遵循開閉原則設計出的模塊具有兩個主要特征:(1)對于擴展是開放的(Open for extension)。這意味著模塊的行為是可以擴展的。當應用的需求改變時,我們可以對模塊進行擴展,使其具有滿足那些改變的新行為。也就是說,我們可以改變模塊的功能。(2)對于修改是關閉的(Closed for modification)。對模塊行為進行擴展時,不必改動模塊的源代碼或者二進制代碼。模塊的二進制可執行版本,無論是可鏈接的庫、DLL或者.EXE文件,都無需改動。

開閉原則的實現方法

為了滿足開閉原則的對修改關閉(closed for modification)原則以及擴展開放(open for extension)原則,應該對軟件系統中的不變的部分加以抽象,在面向對象的設計中,-可以把這些不變的部分加以抽象成不變的接口,這些不變的接口可以應對未來的擴展;-接口的最小功能設計原則。根據這個原則,原有的接口要么可以應對未來的擴展;不足的部分可以通過定義新的接口來實現;-模塊之間的調用通過抽象接口進行,這樣即使實現層發生變化,也無需修改調用方的代碼。接口可以被復用,但接口的實現卻不一定能被復用。接口是穩定的,關閉的,但接口的實現是可變的,開放的。可以通過對接口的不同實現以及類的繼承行為等為系統增加新的或改變系統原來的功能,實現軟件系統的柔軟擴展。簡單地說,軟件系統是否有良好的接口(抽象)設計是判斷軟件系統是否滿足開閉原則的一種重要的判斷基準。現在多把開閉原則等同于面向接口的軟件設計。

開閉原則的相對性

軟件系統的構建是一個需要不斷重構的過程,在這個過程中,模塊的功能抽象,模塊與模塊間的關系,都不會從一開始就非常清晰明了,所以構建100%滿足開閉原則的軟件系統是相當困難的,這就是開閉原則的相對性。但在設計過程中,通過對模塊功能的抽象(接口定義),模塊之間的關系的抽象(通過接口調用),抽象與實現的分離(面向接口的程序設計)等,可以盡量接近滿足開閉原則。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 亚洲国产网站 | 欧美一区二区三区久久精品视 | 香蕉久草在线 | 色羞羞| 天天看天天摸天天操 | 综合网天天射 | 久久密 | 激情视频日韩 | 777zyz色资源站在线观看 | 一区二区视 | 国产精品无码久久久久 | 天堂成人国产精品一区 | 欧美精品18 | 最新在线中文字幕 | 中国大陆高清aⅴ毛片 | 亚洲成人黄色片 | 精品一区二区三区在线观看国产 | 最新毛片在线观看 | 午夜久久久精品一区二区三区 | 久久久久国产一区二区三区不卡 | 27xxoo无遮挡动态视频 | 欧美视频首页 | 久草在线新时代视觉 | 九九精品在线观看视频 | 成码无人av片在线观看网站 | 九九久久视频 | 亚洲精品无码不卡在线播放he | 九色中文| 27xxoo无遮挡动态视频 | 日本精品中文字幕 | 国产一区二区在线免费 | 国产免费看片 | 欧美色淫| 看个毛片 | 草久视频在线观看 | 思思久而久而蕉人 | 欧美韩国日本在线 | 一道本不卡一区 | 欧美日韩中文字幕在线 | 97精品国产高清在线看入口 | 日韩1区|