初識C 設計模式

2021-06-21 05:34:31 字數 1027 閱讀 2658

利用設計模式可以使我們的**更靈活,更容易擴充套件,更容易維護。各種物件導向的程式語言都提供了基本相同的機制:比如類、繼承、派生、多型等等。但是又有各自的特色,c# 中的反射機制便是乙個很重要的工具,好好地利用就可以在實際中發揮很大的作用。

我們來看乙個例子:

我們都看設計模式,很多人都在那裡鼓吹他們是如何如何的棒,我們看看怎麼樣利用他們來解決問題。目標明確了,那我們看看哪個能夠符合我們的要求。《設計模式》似懂非懂的看了一些,那我們看看能夠不能夠「湊」上去呢?嗯,我們的程式考慮的是物件怎麼建立的,建立型模式應該符合要求吧。然後我們瀏覽一下各模式的「意圖」部分。第乙個好像就撞到彩了,抽象工廠,我們看看吧,「提供乙個建立一系列相關或相互依賴物件的介面,而無需指定它們具體的類」,至少「無需指定它們具體的類」符合我們的要求。來看看它的結構吧:

下面的一些東西顯然是我們需要的:

public inte***ce ifruit

public class orange:ifruit

}}

我們的fruitfactory應該是怎麼樣呢?上面的結構圖中它給的是createproducta,那好,我就makeorange,還有乙個createproductb,我makeorange還不行??

public class fruitfactory

}

怎麼使用這個工廠呢?我們來寫下面的**:

string fruitname = console.readline();

ifruit myfruit = null;

fruitfactory myfruitfactory = new fruitfactory();

switch (fruitname)

編譯執行,然後在控制台輸入想要的東西,呵呵,成功了。沉浸在幸福中的你得意忘形了吧。

——部分材料整理於網路文章

設計模式 初識

大致將設計模式看了一遍,雖說是第一遍看,但是好像也有些精讀的嫌疑,沒有掌握快速閱讀的精髓,但這個不是重點。大話模式 首先想到的是 大話西遊 確實這本書有些這樣的傾向,就像書中敘述的,這不是一本程式集,這不是一本故事集,這是一本通過故事講述查詢如何設計的方法集。故事都太經典了,以至於看完書之後,問模式...

設計模式 初識

從何而來?說到模式,我就有一種專業自豪感了。因為學的專業是工程管理,和建築方面打交道比較多,以至於每次有人問我學的什麼專業,我都會開玩笑的說,其實就是搬磚的。那麼為什麼說到模式,我就有一種專業自豪感呢?因為模式的思想就是基於建築的思想而產生的。在建築過程中,慢慢發現人們對於舒適住宅和城市環境存在一些...

設計模式 初識

開閉原則就是說對擴充套件開放,對修改關閉。在程式需要進行拓展的時候,不能去修改原有的 而是要擴充套件原有 實現乙個熱插拔的效果。所以一句話概括就是 為了使程式的擴充套件性好,易於維護和公升級。想要達到這樣的效果,我們需要使用介面和抽象類等,後面的具體設計中我們會提到這點。不要存在多於乙個導致類變更的...