架构、框架和设计模式关系
????????在學習軟件工程的時候,第一次接觸到了架構這個概念。當初接觸的時候對其的理解是非常淺薄的,因為那時候工程經驗比較少,對這樣一個深層次的概念還是模糊不清楚的。
?
???????隨著學習的深入,開始接觸了設計模式,也就是那本令我愛上編程的書--《大話設計模式》,書中的小菜和大鳥的清晰的對白,讓我猶如身臨其境般,一點一點層層遞進的認識設計模式,認識面向對象的引以為傲的設計原則。經過了很長時間的學習,深刻的發現設計模式的迷人之處,也感覺到了編程的藝術之美。
?
???????在之后,開始學習了SSH框架,第一次感覺到框架的好用之處,也再一次感概那些聰明的人們讓編程變得更加輕松,也感慨那些聰明的人們對懶惰的執著和渴望。
?
???????其實以前學習的時候,對這三個東東的關系還真的不是非常清晰,總感覺他們非常像,卻不太好說清楚他們之間的關系。現在隨著不斷的學習,不斷的積累經驗,也對這三者的關系有了個清楚的認識。下面總結一下他們之間的關系。
?
1.????概念
???????架構:簡單的說架構就是一個藍圖,是一種設計方案,將客戶的不同需求抽象成為抽象組件,并且能夠描述這些抽象組件之間的通信和調用。
???????框架:軟件框架是項目軟件開發過程中提取特定領域軟件的共性部分形成的體系結構,不同領域的軟件項目有著不同的框架類型。框架不是現成可用的應用系統。而是一個半成品,提供了諸多服務,開發人員進行二次開發,實現具體功能的應用系統。
???????設計模式:是一套被反復使用、多數人知曉的、經過分類編目的、代碼設計經驗的總結,它強調的是一個設計問題的解決方法。
?
2.????框架與架構關系
???????首先說框架不是架構,應該說框架比架構更具體,更偏重于技術,而架構偏重于設計。還有一個關系就是架構可以通過多種框架來實現。
?
3.????框架與設計模式關系
???????設計模式研究的是針對單一問題的設計思路和解決方法,一個模式可應用于不同的框架和被不同的語言所實現;而框架則是一個應用的體系結構,是一種或多種設計模式和代碼的混合體雖然它們有所不同,但卻共同致力于使人們的設計可以被重用,在思想上存在著統一性的特點,因而設計模式的思想可以在框架設計中進行應用。
?
4.????架構與設計模式關系
???????兩者的關系也是很好區分的,設計模式主要是針對單一問題的解決方法,范疇比較小,而架構是高層次的針對體系結構的一種設計思路,范疇比較大。可以這么說,一個架構中可能會出現多個設計模式來解決多種架構中的問題。
?
5.????總結
???????通過上面的分析,我們能夠知道他們之間的區別還是有很多,首先架構應該是一個范疇最大的概念,是最高層次的設計。一個架構設計中可能會用到多個框架和多個設計模式;而框架是針對共性抽象出來的半成品,這里面可能包含著多個設計模式;而設計模式就是解決單一問題的設計思路和解決方法。
???????所以我們在做一個項目的時候首先出來的應該是架構,是對整個問題的一個總體上的設計,之后再會考慮運用什么樣的框架和設計模式來實現我們的架構;當然,只使用框架和設計模式中的一種也是經常遇到的。
???????他們三者的共同點都是解決現實生活中的問題而出現的,而且在架構設計和框架設計還有設計模式中都會表現出來的就是“高內聚,低耦合”的理念;所以他們的共同點就是讓我們的設計更面向對象化。
?
???????所以我們要想做好一個好的項目,那么架構設計、框架設計和使用、設計模式是非常重要的。
?
總結
以上是生活随笔為你收集整理的架构、框架和设计模式关系的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 团办信用卡审核要多久
- 下一篇: 深圳最先行动,个人破产征求意见稿发布后,