2015年12月28日 星期一

Chapter 10 -- Model 進階項目

The Model as a Macro-Pattern
在MVC架構中,Model 元件內嵌了許多的功能,其負責的功能如下:
  • 展現一個介面給 Controller
  • 執行商業邏輯
  • 展現一個 JavaBean 合適的資料觀點給 View 元件!對 View 元件而言,是個方便使用的形式!
The View Helper Pattern
通常,OO(物件導向)原則之下,每個物件應該都是被設計成最好的狀態!但是,實情上卻不儘然如此,一定會有修改的時候!使用OO設計出來的物件,理論上是可以達成最小化的修改!
所以,依據規則,在設計 Model 時,不應考慮到 View 的展現!而 View 的設計,應該使用 EL 語言,一種非程式化的語言!另外,在純 Model 程式轉換或其他流程的轉換,View 可以提展現的介面!不過,必須注意 EL 並非是最佳的解決方案!
在設計專案過程中,每個 Model 本身的設計,可以忽略 View !等到設計好 Model 時,再利用 View ,將 Model 串接起來!所以 View Helper 是方便的做法,設計一個合適的介面給 View,然後,可連結到幾個純 Model 物件!

Database and Resource Access
  • Data Access Object(DAO) 樣式

  • DAO 樣式的好處

    • 物件與商業邏輯可以分開!
    • 在改變系統時,DAO 樣式物件可提供程式可重複利用性與彈性!
    • 無論是 Servlet 或 JSP 的客戶端程式,均可重複利用相同的資料存取程式!
    • 前端程式不用改變任存已經存在的取存資料程式,即可改變 web 層次的元件!
    • 後端程式不用改變任何前端程式,即可加入不同的資料來源!
  • JDBC API

    • JDBC API 是 Java 用來連結關連式資料庫的技術
    • 開發連結資料庫程式時,重點是:如何管理從 Web 到資料庫的通訊!