基於PhoneBook的MVC模式學習

2021-05-24 02:22:05 字數 1257 閱讀 4373

mvc設計模式,即模型-檢視-控制的設計模式,下面的這個例子是mvc模式在使用者介面導航開發中所應用的開發框架,在下面這個例子中,將以**簿為例,這個基於midlet的**薄應用允許使用者瀏覽,新增,編輯和刪除聯絡人。

因為這個例子中midlet類在生命週期內只有乙個例項,所以讓其類實現controller介面。

首先,定義我們需要的資料型別,即聯絡人entry類:

public class entry

public entry(string name,string mobile,string phone,string email)

public int getid()

//工廠模式

public string getname()

public void setname(string updatename)

.......

public boolean equal(object obj)

return false;

}public int hashcode()

}在定義了需要的資料entry後,我們在model類實現對entry的管理,model類

public class model

//讀取聯絡人資訊

public entry getentry(int index)

//更新聯絡人資訊

public void updateentry(entry e)

現在我們讓midlet這個類實現這個介面,並具體化介面的方法,實現不同檢視的切換:

最後對於各種不同的檢視類,我們可以根據需要實現:

this.addcommand(cmdok);

this.addcommand(cmdcancel);

this.setcommandlistener(this);

}public void load(entry e)

public void commandaction(command c,displayable d)

if(c==cmdcancel)}}

其他檢視:

listentryui

addentryui

detailui

總結:對於mvc模式用於導航介面的框架,讓程式更易於維護,並且很容易新增新的介面而不影響model類,但是這種模式使得對每乙個事件都需要乙個唯一的標記,而且控制器中的switch-case語句會隨著介面的增加而增加變得難以維護,還有controller類引用了所有的view類,使得在程式啟動的時候就被初始化,導致了較大開銷。

基於MVC的Flex framework比較

原文出處 當我打算選用一種mvc framework開發flex應用時,我想我得看看目前有哪些框架可供選擇。rob已經使用cairngorm做了一些實際專案,cairngorm是adobe推薦的解決方案,但還存在著一些別的框架,包括puremvc,model glue和guasax,再加上一些我以前...

基於MVC的Flex framework比較

關鍵字 mvc framework 原文出處 url url 當我打算選用一種mvc framework開發flex應用時,我想我得看看目前有哪些框架可供選擇。rob已經使用cairngorm做了一些實際專案,cairngorm是adobe推薦的解決方案,但還存在著一些別的框架,包括puremvc,...

基於MVC的RESTful風格的實現

紅塵 1.restful風格闡述 rest服務是一種roa resource oriented architecture,面向資源的架構 應用。主要特點是方法資訊存在於http協議的方法中 get,post,put,delete 作用域存在於url中。例如,在乙個獲取裝置資源列表的get請求中,方法...