設計模式,基本上是乙個經驗總結與策略選擇的過程。開發者將開發過程中可重複的設計技術手段總結出來,形成模式,然後在適用的場合應用它們。
作為一門新生的語言,c#吸取了既有技術的很多優點。並形成了自己的一些特色技術。在實現某些模式時,具有形式上的優勢。設計一些類庫(通常這會大量用到模式),c#有幾個比較令我滿意的地方:
1、類在命名空間中的可見級別是可以定義的,在實際工作中,我就大量使用internal級別的類和結構,有效保證了**的保護級別;
2、類成員可以選擇多種不同的可見級別,完整的可見層次分劃在類庫設計時非常有用。難以想象如果沒有私有和保護級別的建構函式,我如何定義嚴格的單例和工廠模式;
3、c#的一些特色語法確實可以減少編碼量,提高開發和執行效率,如委託(據說乙個委託實現在編譯後只需要兩行il**,效率非常高)、屬性(property)、屬性資訊(atrribute,這個老實講我還沒有用過,不過感覺在設計框架時會非常有用)……我們可以在以後的討論中涉及這些內容;
4、c#可以充分利用.net框架的資源,其實語言與平台的深度繫結到底是好是壞,一直也是有爭議的,不過既成事實,我們也就只有充分利用這一點,充分掌握.net框架,還是可以為我們的工作帶來很多便利的;
5、c#擁有方便實用的異常保護結構,這一點也許在類庫設計是不是很重要(擁有完整的異常定義能力更重要吧),但是我們知道異常可以得到有效管理後,也就可以放心的在需要的地方使用異常技術了。
其它技術點還有一些,在這裡就不一一說明了,討論中有涉及再慢慢討論。畢竟模式本身是一門語言無關的技術。我們討論的只是它具體在c#裡的應用而已。
設計模式開篇
1 什麼是設計模式?設計模式是一套被反覆使用 多人知曉 分類編目 設計經驗的總結。使用設計模式是為了可重用 保證 的可靠性,使 編制真正的工程化,能夠適應需求的變化。實現 功能的復用 1 繼承機制 uml中體現為泛化 2 組合 聚合 也可以是導航 3 多型,父類型別可以執行任何子類物件 4 類是對物...
設計模式開篇
a 物件導向的五大基本原則 object oriented design 1.單一職責原則 single responsibility principle 每乙個類應該只專注於做一件事。乙個類應該僅有乙個引起它變化的原因 最簡單,最容易理解卻最不容易做到的乙個設計原則 職員類例子 比如在職員類裡,將...
設計模式 開篇
什麼是設計模式?一說起設計模式,可能很多人都覺得很高大上的感覺,事實上,設計模式只是針對某一類問題的最佳解決方案而已,設計模式是由許多優秀的軟體系統中總結出來的可成功復用的設計方案。我們常說的23種設計模式來自 設計模式 一書,也就是我們常說的gof。模式分類 1.建立型模式 建立型模式涉及物件的例...