1.一種基于IFML的Android開發(fā)建模方法,其特征是包括如下步驟:
1)IFML針對移動平臺進(jìn)行擴(kuò)展,基于移動平臺的擴(kuò)展進(jìn)一步針對Android平臺進(jìn)行擴(kuò)展,確定并抽象出Android平臺應(yīng)用的整體運(yùn)行流程;
11)確定Android應(yīng)用中整體運(yùn)行流程界面數(shù)量,界面間跳轉(zhuǎn)關(guān)系;
12)確定構(gòu)成整體運(yùn)行流程每個界面的控件類型;
13)確定所述控件是否綁定事件,并確定事件類型;
14)確定所述界面間跳轉(zhuǎn)由哪些控件觸發(fā)事件來完成;
2)使用交互流建模語言IFML針對移動平臺的擴(kuò)展,對步驟1)中Android應(yīng)用整體運(yùn)行流程進(jìn)行初步交互流建模;
21)對Android應(yīng)用中整體運(yùn)行流程的界面,使用擴(kuò)展了IFML中ViewContainer得到的Screen表示;
22)對整體運(yùn)行流程界面中的控件,使用擴(kuò)展了IFML中ViewComponent得到的MobileComponent表示;
23)對表示整體運(yùn)行流程界面中的控件的MobileComponent,如果控件上綁定了事件,擴(kuò)展IFML中Event得到MobileSystemEvent,進(jìn)一步對MobileSystemEvent擴(kuò)展得到具體事件類型,比如Click,使用具體事件類型放在MobileComponent元素邊界上;
24)從整體運(yùn)行流程界面中的控件的MobileComponent上綁定的事件引出一條Navigation Flow,指向IFML中的Action元素,表示事件觸發(fā)后進(jìn)行的業(yè)務(wù)邏輯,再從Action元素繼續(xù)引出Navigation Flow,指向目的界面Screen,表示處理完業(yè)務(wù)邏輯后跳轉(zhuǎn)到哪個界面;
3)IFML針對移動平臺擴(kuò)展,對Android應(yīng)用平臺進(jìn)行進(jìn)一步擴(kuò)展,使用針對Android應(yīng)用平臺擴(kuò)展的IFML,進(jìn)行面向?qū)崿F(xiàn)的交互流建模;
31)對Android應(yīng)用平臺中的界面,使用IFML擴(kuò)展了的Screen得到的Activity元素表示;
32)對界面Activity中的控件,使用針對Android應(yīng)用平臺中基于MobileComponent元素擴(kuò)展得到的各具體Android控件來表示,包括Button,TextView;
33)所述控件上綁定了事件,使用針對Android的基于MobileSystemEvent元素擴(kuò)展得到的各具體Android事件來表示,包括Click,Touch,LongPress;
34)從所述控件上綁定的事件引出一條Navigation Flow,指向表示事件處理業(yè)務(wù)邏輯的Action元素,從Aciton元素引出Navigation Flow指向目的Activity;
35)界面Activity元素間跳轉(zhuǎn)關(guān)系已經(jīng)使用擴(kuò)展了的IFML表示出來,Activity間進(jìn)行跳轉(zhuǎn)時如果需要對涉及了跳轉(zhuǎn)的源Activity和目的Activity進(jìn)行生命周期方法的編碼,在源Activity和目的Activity的Navigation Flow間添加表示源Activity和目的Activity的UML類圖;
4)對步驟3)中的Android應(yīng)用平臺的交互流模型,結(jié)合項(xiàng)目需求和Android版本信息,完成應(yīng)用開發(fā);
41)對模型中界面Activity,在項(xiàng)目中添加一個Java類,繼承自Android中界面Activity類;
42)對界面中的Android控件,在項(xiàng)目布局資源目錄中添加各界面的布局文件,即在界面布局文件中添加Android控件;
43)步驟41)中的Java類,在生命周期方法onCreate()中完成界面加載和初始化設(shè)置等編碼工作,獲取控件,為控件綁定事件,完成事件處理業(yè)務(wù)邏輯,添加界面跳轉(zhuǎn)代碼。