1. 程式人生 > >MVC詳解:瞭解真正所謂的"框架"

MVC詳解:瞭解真正所謂的"框架"

    在這幅圖中,MVC三個框框各司其職,結構清晰明朗。不過我覺得這幅圖忽略了一個問題,就是資料是動的,資料在View和Control層一旦動起來,就會產生許多的問題:

    1. 資料從View層傳遞到Control層,如何使得一個個扁平的字串,轉化成一個個生龍活虎的Java物件

    2. 資料從View層傳遞到Control層,如何方便的進行資料格式和內容的校驗?

    3. 資料從Control層傳遞到View層,一個個生龍活虎的Java物件,又如何在頁面上以各種各樣的形式展現出來

    4. 如果你試圖將資料請求從View層傳送到Control層,你如何才能知道你要呼叫的究竟是哪個類,哪個方法?一個Http的請求,又如何與Control層的Java程式碼建立起關係來?

    除此之外,Control層似乎也沒有想象中的那麼簡單,因為它作為一個控制器,至少還需要處理以下的問題:

    1. 作為呼叫邏輯處理程式的facade門面,如果邏輯處理程式發生了異常,我們該如何處理?

    2. 對於邏輯處理的結果,我們需要做怎麼樣的處理才能滿足豐富的前臺展示需要?

    這一個又一個問題的提出,都基於對MVC的基本概念的挖掘。所以,這些問題都需要我們在寫程式的時候去一一解決。說到這裡,這篇文章開頭所提的問題應該可以有答案了:框架是為了解決一個又一個在Web開發中所遇到的問題而誕生的。不同的框架,都是為了解決不同的問題,但是對於程式設計師而言,他們只是jar包而已。框架的優缺點的評論,也完全取決於其對問題解決程度和解決方式的優雅性的評論。所以,千萬不要為了學習框架而學習框架,而是要為了解決問題而學習框架,這才是一個程式設計師的正確學習之道。