1 設計模式學習的必要性

2021-08-20 09:26:57 字數 801 閱讀 5758

自從程式誕生之初,就面臨著來自 耦合性,內聚性以及可維護性,可擴充套件性,重用性,靈活性

等多方面的挑戰。

而物件導向是為了解決系統的可維護性,可擴充套件性,可重用性等以上問題而出現的。

設計模式(design pattern)是一套被反覆使用、多數人知曉的、經過分類的、**設計經驗的總結

為了**可重用性、讓**更容易被他人理解、保證**可靠性。

設計模式包含了物件導向的精髓,有種說法是「懂了設計模式,你就懂了物件導向分析和設計(ooa/d)的精要」。

學習設計模式必須投入熱情和精力,過程有點漫長。但是「經過了的才是自己的,scott mayer 在其巨著《effective c++》就曾經說過:c++老手和 c++新手的區別就是前者手背上有很多傷疤。是的在軟體開發和設計的過程中, 失敗、 錯誤是最好的老師, 當然在系統開發中, 失敗和錯誤則是噩夢的開端和結束,因為你很難有改正錯誤的機會。 因此,盡量讓自己多幾道疤痕是對的。 」——23種設計模式

設計模式之於物件導向系統的設計和開發的作用就猶如資料結構之於面向過程開發的作用一般,可以說,不會設計模式的編碼人員不能稱之為工程師。

物件導向系統的分析和設計實際上追求的就是兩點:高內聚和低耦合。因此無論是物件導向設計的封裝,繼承,多型還是設計模式的原則和例項,都是在為了這兩個目標努力著。

學習設計模式時,需緊扣物件導向的特性和原則,圍繞這個核心進行分析,這樣才能在此基礎上對設計模式進行靈活運用和理解。

最後總結一下,為什麼要使用設計模式?

答: 使程式呈現高內聚,低耦合的良好特性,使程式的復用性,可擴充套件性以及穩定性都有大大提高。有效節省開發成本,提高軟體維護效率。

this的必要性

先看下面一段 lesson8 necessary of this class person show name public void showinfo class demo 8 1 this屬於乙個物件,代表的是物件,其實就是乙個物件的引用,只能在類定義的方法中使用。那麼它代表那個物件呢?答 哪個...

it 的必要性

for std vector iterator itlocal m vecsoftwareer.begin itlocal m vecsoftwareer.end else it 如上所示,c 98中map erase並沒有返回值為iterator的原型函式。那麼問題來了it map.erase i...

學習英語的必要性

當今社會是乙個經濟全球化化的時代。所以要想得到發展就必須和國外的經濟大國有經濟來往。所以必須有語言上的交流。只會說家鄉話,無法走出家門,只會說中國話,無法走出世界。英語是當今世界上最通用的語言之一,那麼英語作為最廣泛的語言就有其不可忽視的重要性。第一 從小培養良好的英語基礎,在相關企業迎接更為複雜困...