atitit.軟件設計模式大的總結attialx總結

atitit.軟件設計模式大的總結attialx總結html

 

1設計模式的歷史 3web

2設計模式的數量(253個) 3ajax

3設計模式的結構 4數據庫

3.1. 應用場景and條件Context 4設計模式

3.2. Problem 4api

3.3. 解決 4緩存

3.4. 不適合領域 4閉包

3.5. 優缺點 4架構

4軟件模式並非僅限於設計模式。還包含架構模式、分析模式和過程模式 5app

5詳細的設計模式 5

5.1. Gof 23個模式 5

5.2. Api映射法代替 warp法。 5

5.3. async異步模式 6

5.4. AOP 6

5.5. Abstract 優對於  interface 6

5.6. Ast模式 6

5.7. Auto type convert本身主動進行類型轉換 6

5.8. biz業務化模塊 6

5.9. Compiler as a Service 6

5.10. Chain mode 6

5.11. Confirm模式(解除頁面跳轉的問題) 6

5.12. closure閉包模式 6

5.13. components組件化 7

5.14. DSL 7

5.15. Dwr vs AJAX 7

5.16. DSLparser 7

5.17. eventDriver事件驅動模式 7

5.18. Code behind 7

5.19. Cfg2ui (attilax 建立 7

5.20. Biz_index業務索引模式(attilax 建立, 7

5.21. dispater分發器模式 7

5.22. filter過濾器模式 7

5.23. Engeen+script引擎+腳本模式(託管) 7

5.24. frmwk框架化 7

5.25. generic泛型模式 7

5.26. -------------------h----n 7

5.27. Html5 ui 7

5.28. Hybrid 7

5.29. immediately 即時更新(熱部署)高速迭代 持續交付 8

5.30.  8

5.31. Ioc/di 8

5.32. Lazy load延遲初始化 cfg 8

5.33. Linq 8

5.34. microcore微內核 8

5.35. msg消息化 8

5.36. Mvc 9

5.37. ----o-------t 10

5.38. Orm 10

5.39. Pipe 10

5.40. Pipe 管道模式、流式。鏈式 10

5.41. platform 10

5.42. plugin插件模式 10

5.43. Reflection 10

5.44. refresh刷新模式(解決緩存and靜態的變量的值及時改動跟個讀取問題) 10

5.45. refresh刷新button模式...解決若干頁面不料條件..and 分頁.. 10

5.46. propCopy數據轉換器..propCopy 10

5.47. pool模式 10

5.48. Retry(attilax 建立,提高穩定性) 10

5.49. Stream 10

5.50. Self contain自包括,容器化隔離。

11

5.51. seri串口模式(attilax 建立,解除接口麻煩的) 11

5.52. spa ajax 11

5.53. Try catch 11

5.54. 決緩存不及時的問題) 11

5.55. Theardlocal模式 11

5.56. trigger觸發器模式(attilax 建立) 11

5.57. SOA 11

5.58. single單例目錄模式(解決模塊複製問題,提取問題) 11

5.59.  11

5.60. Timer 模式...解決同步問題兩個控件 11

5.61. Theardlocal模式 11

5.62. ----u----z 11

5.63. uapi 12

5.64. Vm模式 12

5.65. visual 12

5.66. webService/HttpService 12

5.67. workflow工做流 12

5.68. Winform 12

5.69. Webform 12

5.70. Weak/Soft references 12

6反模式 12

6.1. Reset web 12

 

 


1. 設計模式的歷史

軟件模式是在軟件開發中某些可重現問題的一些有效解決方法

有若干通用性的solu

 

2. 設計模式的數量(253個)

與很是多軟件project技術同樣,模式起源於建築領域,畢竟與僅僅有幾十年歷史的軟件project相比,已經擁有幾千年沉澱的建築project有太多值得學習和借鑑的地方。

      那麼模式是怎樣誕生的?讓咱們先來認識一我的——Christopher Alexander(克里斯托弗.亞歷山大),哈佛大學建築學博士、美國加州大學伯克利分校建築學教授、加州大學伯克利分校環境結構研究所所長、美國藝術和科學院院士……頭銜真多,,只是他另外一個暱稱」——模式之父(The father of patterns)Christopher Alexander博士及其研究團隊用了約20年的時間,對住宅和周邊環境進行了大量的調查研究和資料收集工做,發現人們對溫馨住宅和城市環境存在一些共同的認同規律Christopher Alexander在著做A Pattern Language: Towns, Buildings, Construction中把這些認同規律概括爲253模式。對每一個模式(Pattern)都從Context(前提條件)、ThemeProblem(目標問題)、 Solution(解決方式)三個方面進行了描寫敘述。並給出了從用戶需求分析到建築環境結構設計直至經典實例的過程模型。

 

   1990年,軟件project界開始關注ChristopherAlexander等在這一住宅、公共建築與城市規劃領域的重大突破。最先將模式的思想引入軟件project方法學的是1991-1992年以「四人組(Gang of Four,簡稱GoF,各自是Erich Gamma, Richard Helm, Ralph JohnsonJohn Vlissides)」自稱的四位著名軟件project學者。他們在1994年概括髮表了23種在軟件開發中使用頻率較高的設計模式,旨在用模式來統一溝通面向對象方法在分析、設計和實現間的鴻溝

做者:: 老哇的爪子 Attilax 艾龍,  EMAIL:1466519819@qq.com

轉載請註明來源: http://blog.csdn.net/attilax

 

3. 設計模式的結構

3.1. 應用場景and條件Context

3.2. Problem

3.3. 解決

3.4. 不適合領域

3.5. 優缺點

  軟件模式是在軟件開發中某些可重現問題的一些有效解決方法,軟件模式的基礎結構主要由四部分構成,包含問題描寫敘述【待解決的問題是什麼】、前提條件【在何種環境或約束條件下使用】、解法【怎樣解決】和效果【有哪些優缺點】,如圖1-1所看到的:

 

1-1 軟件模式基本結構

    軟件模式與詳細的應用領域無關,也就是說無論你從事的是移動應用

 

4. 軟件模式並非僅限於設計模式,還包含架構模式、分析模式和過程模式

GoF將模式的概念引入軟件project領域,這標誌着軟件模式的誕生。

軟件模式(Software Patterns)是將模式的通常概念應用於軟件開發領域,即軟件開發的總體指導思路或參照樣板。

軟件模式並非僅限於設計模式。還包含架構模式、分析模式和過程模式等。實際上。在軟件開發生命週期的每一個階段都存在着一些被認同的模式

 

5. 詳細的設計模式

5.1. Gof 23個模式

5.2. Api映射法代替 warp法。

相似於hbuilder,native api映射爲咱們的api

 

5.3. async異步模式

5.4. AOP

 

5.5. Abstract 優對於  interface 

 

5.6. Ast模式

5.7. Auto type convert本身主動進行類型轉換

Script

Jsp EL

Sql  str>>num

 

5.8. biz業務化模塊

業務化的業務模塊框架,類庫,模版,api

 

5.9. Compiler as a Service

5.10. Chain mode

5.11. Confirm模式(解除頁面跳轉的問題)

5.12. closure閉包模式

5.13.  components組件化

5.14. DSL

 

5.15. Dwr vs AJAX

5.16. DSLparser

5.17. eventDriver事件驅動模式

5.18. Code behind

5.19. Cfg2ui (attilax 建立

5.20. Biz_index業務索引模式(attilax 建立,解

5.21. dispater分發器模式

5.22. filter過濾器模式

 

5.23. Engeen+script引擎+腳本模式(託管)

5.24. frmwk框架化

 

5.25. generic泛型模式

5.26. -------------------h----n

5.27. Html5 ui

5.28. Hybrid化

 

5.29. immediately 即時更新(熱部署)高速迭代 持續交付

 

 (script+engine)模式

使用原生開發,從招聘、開發、上線各個環節的效率都慢一倍以上,而且參與的人越多。溝通效率每每拖慢不止一倍。

配置也應該使用dev模式,立刻更新..可以..不需要從新啓動app

 

5.30.  

5.31. Ioc/di

5.32. Lazy load延遲初始化 cfg 

5.33. Linq

贊成編寫C#或者Visual Basic代碼以查詢數據庫一樣的方式操做內存數據。

5.34. microcore微內核

5.35. msg消息化

這個圖,是改用消息模式結果,用戶註冊功能模塊,跟接收到消息處理各個任務直接,代碼沒有直接關聯。

假設需要添加一個接收註冊消息。給其餘人通知一下。僅僅需要新增一個模塊,訂製註冊消息,而後處理一個新流程就能夠。

眼下各種開源項目裏面,消息機制已經變得很常見了。 但在wordpress這個blog框架,它的消息主題很無缺。差點兒不論什麼動做都有消息主題發送消息。 這樣讓開發人員,僅僅要訂製相關主題。就可以,添加本身額外處理功能。 好比: 用戶發一個帖子後。檢測下用戶是否是有廣告信息,僅僅要訂製:發帖消息,而後,添加新功能。檢測內容。發現不知足。直接屏蔽帖子。

有人預計要說。這類功能。現在很是多框架有相似東西,好比,頁面開始有個start事件。結束有個end事件。 確實,消息概念在很是多框架裏面確實實用。 但是。沒有這麼完成的消息主題拋出。 差點兒作到整個系統不論什麼操做,都能有消息。這樣沒有什麼功能不能進行擴展了

 

5.36. Mvc


5.37. ----o-------t

5.38. Orm

5.39. Pipe

5.40. Pipe 管道模式、流式,鏈式

 

5.41. platform

5.42. plugin插件模式

 

5.43.  Reflection

5.44. refresh刷新模式(解決緩存and靜態的變量的值及時改動跟個讀取問題)

5.45. refresh刷新button模式...解決若干頁面不料條件..and 分頁..

 

5.46. propCopy數據轉換器..propCopy

5.47.  pool模式

5.48. Retry(attilax 建立,提高穩定性)

5.49. Stream

 

5.50. Self contain自包括。容器化隔離。

iframe

 

5.51. seri串口模式(attilax 建立,解除接口麻煩的)

5.52. spa ajax化

 

5.53. Try catch

 

5.54. 決緩存不及時的問題)

5.55. Theardlocal模式

 

5.56. trigger觸發器模式(attilax 建立)

5.57. SOA

5.58. single單例目錄模式(解決模塊複製問題,提取問題)

5.59.  

5.60. Timer 模式...解決同步問題兩個控件

控件的onchange事件不能生效..

5.61. Theardlocal模式

5.62. ----u----z

5.63. uapi

5.64. Vm模式

5.65. visual

5.66. webService/HttpService

5.67. workflow工做流

5.68. Winform

5.69. Webform

 

 

5.70. Weak/Soft references

 

6. 反模式

6.1. Reset web

 

 

 

 

 


相關文章
相關標籤/搜索