淺談框架與模式的關係

weixin_33766168發表於2017-11-15
   在javaEE中的開源框架太多了,其實每個框架大部分都是有一些經典的模式演變而來。對大家最熟悉了應該是Struts框架,我們知道它是典型的MVC設計模式的化身。還有我們最熟悉的,也是比較流行的框架Spring。它其實是工廠模式和單例模式的充分應用。框架和模式到底有什麼關係呢?
      框架是一組相互協作的類,它構成了某類特定軟體的可複用設計。框架規定了應用體系結構,它定義了整體結構,類,和物件的分割,各部的主要責任,類,物件怎麼協作,以及控制流程。框架預定義了這些設計引數。以便於應用設計者或實現者能集中精力於應用本身的細節,因而框架更加強調設計複用。
     模式其實就是解決某一類問題的方法論。把解決問題的方法總結歸納到理論高度,這就是模式。
     框架和模式的主要區別:
 <1>.模式比框架更抽象,框架能夠用程式碼表示,而模式只有其應用例項才能表示為程式碼。框架的威力在於它們能夠使用程式設計語言寫出來,它們不僅能被學習,也能被直接執行和複用。而模式在每次被複用時,都需要實現。
<2>.模式是比框架更小的體系結構,一個典型的框架包括了多個模式,而反之並不如此。
<3>.框架比模式更加特例化,框架總是針對一個特定的應用領域。而模式幾乎能被用於任何應用。









本文轉自 weijie@java 51CTO部落格,原文連結:http://blog.51cto.com/weijie/66944,如需轉載請自行聯絡原作者

相關文章