我們要實做的是黑白棋(Othello),做為一個簡單的棋盤回合制遊戲,加上使用者需要透過介面來進行操作,因此適合做為MVP的使用範例。
基於篇幅,範例分成2篇來編寫,本篇Part3與下一篇Part4。
Part3描述如何利用MVP來實現棋盤邏輯。Part4接著講解如何加入玩法邏輯,以及MVP區塊如何與其它程式邏輯來溝通。
閱讀全文〈MVP Pattern: Part 3 黑白棋範例 之一〉
Path of gameplay programming
我們要實做的是黑白棋(Othello),做為一個簡單的棋盤回合制遊戲,加上使用者需要透過介面來進行操作,因此適合做為MVP的使用範例。
基於篇幅,範例分成2篇來編寫,本篇Part3與下一篇Part4。
Part3描述如何利用MVP來實現棋盤邏輯。Part4接著講解如何加入玩法邏輯,以及MVP區塊如何與其它程式邏輯來溝通。
閱讀全文〈MVP Pattern: Part 3 黑白棋範例 之一〉
Supervising Controller與Passive View的不同點在於,它允許View直接獲取Model的資料,獲取的手段可以透過事件附帶的參數,或是透過事件通知後,再自行獲取資料。
雖然講是這樣講,但對於還不認識MVP的人來說,應該還沒理解到Supervising Controller的模糊地帶。
閱讀全文〈MVP Pattern: Part 2 Supervising Controller〉
MVP(Model-View-Presenter)模式,是MVC(Model-View-Controller)模式的變體,主要被使用在GUI的架構。其特徵是有個做為「中間人」的Presenter,負責協調Model和View之間的事件與資料變化。
閱讀全文〈MVP Pattern: Part 1 Passive View〉