偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

C#和設(shè)計(jì)模式簡(jiǎn)單分析

開發(fā) 后端
這里介紹C#和設(shè)計(jì)模式,C#是一個(gè)現(xiàn)代的程序語(yǔ)言,它通過(guò)提供直接映射面向?qū)ο笤O(shè)計(jì)概念的句法結(jié)構(gòu)和語(yǔ)義支持來(lái)促進(jìn)面向?qū)ο筌浖_發(fā)。

在向大家詳細(xì)介紹C#和設(shè)計(jì)模式之前,首先讓大家了解下C#程序開發(fā),然后全面介紹C#和設(shè)計(jì)模式。

通過(guò)提供一個(gè)框架,設(shè)計(jì)模式可以解決應(yīng)用開發(fā)中的許多問(wèn)題。模式使得設(shè)計(jì)過(guò)程更加清晰高效,它特別適用于C#程序開發(fā),因?yàn)镃#是面向?qū)ο蟮恼Z(yǔ)言?,F(xiàn)有的設(shè)計(jì)模式為你自己的類的設(shè)計(jì)提供了優(yōu)秀的模板,使用模式可以縮短軟件開發(fā)周期。

正如任何一個(gè)老練的面向?qū)ο蟮能浖_發(fā)者所了解的那樣,缺乏對(duì)設(shè)計(jì)模式最起碼的了解而來(lái)討論軟件設(shè)計(jì)架構(gòu)是不可思議的。如果不是全部那也有大多數(shù)的軟件應(yīng)用、工具和系統(tǒng)至少使用了一種甚至更多種設(shè)計(jì)模式。設(shè)計(jì)模式是一種對(duì)一套相互作用的類的描述,這些類為解決特定上下文環(huán)境中的一般性問(wèn)題提供了框架。換句話說(shuō),模式為面向?qū)ο筌浖_發(fā)中的特定問(wèn)題提供了解決方案。此外,模式一般也重視限制其適應(yīng)解決方案的相關(guān)約束和其它因素。類和類之間的連接和通信以及上下文細(xì)節(jié)共同定義了一個(gè)模式,它為任何一個(gè)面向?qū)ο筌浖O(shè)計(jì)中在特性和必要條件方面與之匹配的問(wèn)題提供了解決方案。

我必須承認(rèn)我是設(shè)計(jì)模式的一個(gè)熱心的支持者。自從我閱讀了Gamma、Helm、Johnson和Vlissides合著的那本創(chuàng)造性的著作《設(shè)計(jì)模式》以來(lái),我就很少不用任何模式而設(shè)計(jì)軟件了。實(shí)際上,我在軟件設(shè)計(jì)的早期階段花了相當(dāng)可觀的時(shí)間來(lái)定奪可和將來(lái)架構(gòu)自然吻合的模式。畢竟,模式是經(jīng)過(guò)時(shí)間和應(yīng)用領(lǐng)域考驗(yàn)過(guò)的對(duì)一些問(wèn)題的解決方案,那些問(wèn)題已經(jīng)被經(jīng)驗(yàn)豐富的設(shè)計(jì)師、開發(fā)者和語(yǔ)言專家所解決。對(duì)任何一個(gè)正在進(jìn)行軟件設(shè)計(jì)的人員來(lái)說(shuō),善用可加以利用的知識(shí)和專家經(jīng)驗(yàn)是明智的。而采用一個(gè)已被反復(fù)證明是成功的解決方案而不是從頭發(fā)明一個(gè)新的往往是個(gè)好主意。

幾乎沒(méi)有開發(fā)人員能夠享受只寫小程序的奢侈了。現(xiàn)代的應(yīng)用軟件和系統(tǒng)是復(fù)雜的,它們往往由成千上萬(wàn)行代碼組成,并且在這些基礎(chǔ)代碼之上的代碼甚至更為龐大。僅僅對(duì)工具和語(yǔ)言的簡(jiǎn)單掌握是不足以勝任程序設(shè)計(jì)要求的,公司軟件開發(fā)一般都要求在設(shè)計(jì)和架構(gòu)上具有極大的彈性,以適應(yīng)在產(chǎn)品開發(fā)的不同階段客戶的不斷變化的需求,甚至在產(chǎn)品發(fā)布后也常常如此。這種動(dòng)態(tài)性要求軟件設(shè)計(jì)必須強(qiáng)健。它應(yīng)該能夠適應(yīng)變化并且不會(huì)帶來(lái)任何不必要的連鎖反應(yīng)—不應(yīng)該要求重寫潛在的、不相干的(子)系統(tǒng)。向不具備擴(kuò)展能力的模塊添加特性和組件是令人沮喪的和難以達(dá)到預(yù)期目標(biāo)的。封閉的、無(wú)彈性的設(shè)計(jì)遲早會(huì)被變化的壓力所壓垮。設(shè)計(jì)模式有助于彈性架構(gòu)的基礎(chǔ)鋪設(shè),而這,是每一個(gè)優(yōu)秀的面向?qū)ο笤O(shè)計(jì)的共同特點(diǎn)。

設(shè)計(jì)模式已經(jīng)被編目歸類以用于解決從細(xì)小問(wèn)題乃至大規(guī)模架構(gòu)級(jí)問(wèn)題。本文將介紹幾個(gè)流行的設(shè)計(jì)模式,在我自己的項(xiàng)目里,我發(fā)現(xiàn)它們很有用。盡管熟悉面向?qū)ο笤O(shè)計(jì)的概念有助于理解本文,但我并不假定你具備任何設(shè)計(jì)模式的預(yù)備知識(shí)。盡管任何適宜于面向?qū)ο箝_發(fā)的程序語(yǔ)言都可以用來(lái)闡明模式,但我將只用C#來(lái)編寫例子,也借此來(lái)展示這門語(yǔ)言的威力。我不會(huì)討論任何微軟.NET類庫(kù)細(xì)節(jié),相反,我將集中于使用C#語(yǔ)言作為設(shè)計(jì)面向?qū)ο筌浖墓ぞ摺?/P>

C#和設(shè)計(jì)模式

C#是一個(gè)現(xiàn)代的程序語(yǔ)言,它通過(guò)提供直接映射面向?qū)ο笤O(shè)計(jì)概念的句法結(jié)構(gòu)和語(yǔ)義支持來(lái)促進(jìn)面向?qū)ο筌浖_發(fā)。這和C++大不相同,C++同時(shí)支持面向過(guò)程、面向?qū)ο蠛头盒途幊獭km然如此,如果你是一名C++程序員,跟進(jìn)C#是非常容易的。對(duì)于C++程序員來(lái)說(shuō),這個(gè)學(xué)習(xí)曲線是相當(dāng)平坦的。即使你以前從未看過(guò)任何C#代碼,理解本文示例代碼也不應(yīng)該有任何問(wèn)題。事實(shí)上,如果你發(fā)現(xiàn)C#對(duì)設(shè)計(jì)模式的實(shí)現(xiàn)更為清晰,我也不會(huì)有任何驚訝,特別是如果你以前使用設(shè)計(jì)模式編寫過(guò)代碼的話。一般討論設(shè)計(jì)模式的書籍和文章都會(huì)詳細(xì)地描述模式所要解決的問(wèn)題和上下文細(xì)節(jié),并隨后提供一個(gè)規(guī)范的解決方案的描述。本文不會(huì)那么嚴(yán)謹(jǐn),我只關(guān)注模式本質(zhì),并輔以適當(dāng)?shù)腃#示例來(lái)加以說(shuō)明。

【編輯推薦】

  1. C#窗體里調(diào)用淺談
  2. C#調(diào)用ListEmployee命令
  3. C# CreateEmployeeDefinition()函數(shù)
  4. C#實(shí)現(xiàn)斷點(diǎn)續(xù)傳詳細(xì)剖析
  5. C# Employee對(duì)象淺談
責(zé)任編輯:佚名 來(lái)源: 博客園
相關(guān)推薦

2009-08-26 10:24:04

C# Observer

2009-09-01 18:05:17

C#類型聲明

2009-09-01 18:36:35

C#委托實(shí)例

2009-08-27 15:34:38

C#命名空間

2009-08-26 18:00:07

C#內(nèi)部類

2009-08-27 18:05:54

C#索引功能

2009-09-01 17:32:04

C#版本控制

2009-08-31 18:24:26

編譯C#文件

2009-08-27 18:02:22

C#事件處理

2009-08-26 16:26:37

C#迭代器模式

2009-09-02 16:23:27

C# Singleto

2009-08-19 10:09:21

C#和C++

2009-08-27 10:44:21

C#靜態(tài)變量

2009-09-04 10:07:42

C#完全限定名

2009-09-01 10:08:57

C#運(yùn)算符

2009-09-02 10:59:02

C#單路代理

2009-08-26 14:01:18

C#標(biāo)識(shí)符

2009-09-03 17:13:19

C#建立項(xiàng)目

2009-09-02 18:03:19

C#實(shí)現(xiàn)泛型類

2009-08-28 15:49:45

C#對(duì)INI文件操作
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)