设计模式(六)J2EE 模式
前言
本章設計模式只挑了一些必要的加以講解,因為有的設計模式過于簡單或者根本用不到,可以不做了解。
MVC 模式
使用說明
MVC模式可以說是最有名的設計模式之一。它提出將軟件的數據模型Model、視圖Visual、控制器Controller三者分開封裝,通過彼此間通信,實現軟件功能。這樣分的好處是程序結構清晰,便于開發維護。
例如,Qt中的窗口類屬于C控制器,窗口類中的ui文件屬于V視圖,而Model數據模型交給用戶實現。
再比如,Qt中的Model/View Programming,實現了Model、View的分離,而控制器C,可以由其所在窗口類實現。
此模式在很多軟件的開發中都存在,影響巨大而深遠。
使用場景
一般在既有交互,又有數據處理的軟件系統中使用。
本質
MVC模式的本質是,它將一個軟件系統總體分成了三個邏輯部分,這三個邏輯部分耦合小,可以獨立封裝。它是一種更加粗粒度的設計模式,也是非常常用的設計模式。
數據訪問對象模式(DAO)
使用場景
把數據庫操作封裝成函數,上層業務使用者無需關心數據庫操作細節。
本質
數據訪問對象模式的本質是將數據庫操作封裝起來,將上層業務和底層數據操作解耦合。
攔截過濾器模式
使用場景
用于對應用程序的請求或響應做一些預處理/后處理,類似于Hook鉤子。不過這里的鉤子不是函數,而是對象。
使用說明
過濾器是埋在某些執行點的鉤子對象,當外部的過濾器安裝到指定位置以后,當程序執行到此位置,則會自動執行過濾器中的操作,實現了動態程序流程插入的效果,和鉤子的效果一樣。
過濾器需要通過安裝、卸載接口實現動態添加刪除。
Qt中使用此模式的部分有:Qt對象的QObject::eventFilter()虛函數,以及用于安裝卸載的QObject::installEventFilter()函數。
本質
攔截過濾器模式的本質是,它封裝了鉤子操作,并通過安裝卸載機制從指定調用位置動態增刪。
結語
本章的設計模式較少,但是都比較常見。
總結
以上是生活随笔為你收集整理的设计模式(六)J2EE 模式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 余额宝还信用卡手续费是多少 余额宝还信用
- 下一篇: 设计模式(一)预备知识