下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
基于模板的BREW應(yīng)用可視化界面設(shè)計(jì)及代碼生成
摘要:本文提出了一種基于模板技術(shù)的BREW應(yīng)用程序可視化用戶界面設(shè)計(jì)以及代碼自動(dòng)生成的方法,從而改變了手工編寫B(tài)REW應(yīng)用的現(xiàn)狀。本系統(tǒng)為提供一個(gè)可視化的圖形界面設(shè)計(jì)工具,開發(fā)人員可以進(jìn)行所見即所得的界面設(shè)計(jì),同時(shí)根據(jù)用戶的設(shè)計(jì)生成XML文件,接下來利用該XML文件及BREW程序框架模板自動(dòng)生成應(yīng)用代碼??梢暬慕缑嬖O(shè)計(jì)及自動(dòng)代碼生成提高BREW應(yīng)用的開發(fā)效率。
關(guān)鍵詞:模板;自動(dòng)代碼生成;可視化
1引言
隨著時(shí)代的發(fā)展,手機(jī)用戶群體越來越大,人們對(duì)手機(jī)應(yīng)用軟件的需求也隨之增大。2008年我國(guó)電信行業(yè)重組、以及3G牌照的發(fā)放,標(biāo)志這3G時(shí)代的到來。手機(jī)應(yīng)用程序的開發(fā)面臨著更為巨大的市場(chǎng)。快速變化的市場(chǎng)要求開發(fā)人員能夠快速開發(fā)出豐富多彩的應(yīng)用程序。以往BREW應(yīng)用程序的開發(fā)仍然處于手工編寫的狀態(tài)。當(dāng)開發(fā)人員開發(fā)應(yīng)用的界面部分時(shí),需要在編輯環(huán)境中將代碼寫好,經(jīng)過編譯鏈接后在模擬器中執(zhí)行以觀察界面實(shí)際效果,如若不滿意,需要再回來修改源代碼,如此反復(fù),效率非常低下。
可視化的開發(fā)環(huán)境在目前已經(jīng)較為普遍,但在BREW應(yīng)用開發(fā)中還屬空白。本文提出一個(gè)可視化用戶界面設(shè)計(jì)及基于模板的代碼自動(dòng)生成的方法。在可視化的圖形用戶界面設(shè)計(jì)環(huán)境中,開發(fā)人員可以為自己的應(yīng)用程序設(shè)定一個(gè)圖形手機(jī)屏幕進(jìn)行界面設(shè)計(jì)。我們將BREW中主要界面接口進(jìn)行封裝,以界面元素控件的形式提供給用戶。用戶可以通過鼠標(biāo)拖拽將各種圖形界面元素控件添加到手機(jī)屏幕的相應(yīng)位置,通過調(diào)整達(dá)到理想的效果,同時(shí)在該環(huán)境中對(duì)個(gè)控件的相關(guān)屬性進(jìn)行設(shè)置,完成“所見即所得”的界面設(shè)計(jì)。
在完成可視化的、所見即所得的界面設(shè)計(jì)后,系統(tǒng)根據(jù)用戶設(shè)計(jì)的結(jié)果生成一個(gè)XML文件。該XML文件記錄的用戶所設(shè)計(jì)界面的各種參數(shù)。接下來根據(jù)XML文件及BREW應(yīng)用程序模板文件自動(dòng)生成BREW應(yīng)用框架代碼。用戶即開發(fā)人員可以在生成的代碼上進(jìn)行進(jìn)一步的完善,得到最優(yōu)的代碼。
2系統(tǒng)總體設(shè)計(jì)
本系統(tǒng)包括一個(gè)可視化的用戶界面設(shè)計(jì)工具和一個(gè)代碼自動(dòng)生成引擎。如圖1所示。
BREW應(yīng)用的代碼有其自身特點(diǎn),其代碼的自動(dòng)生成是由代碼自動(dòng)生成引擎根據(jù)BREW應(yīng)用程序框架模板文件和用于描述界面信息的XML文件進(jìn)行的。其中BREW應(yīng)用程序框架模板文件是事先根據(jù)BREW應(yīng)用代碼的特點(diǎn)設(shè)計(jì)而成的XML文件;用戶通過使用一個(gè)可視化的用戶界面設(shè)計(jì)工具對(duì)用戶界面進(jìn)行設(shè)計(jì),該工具包括各種界面控件,用戶通過鼠標(biāo)拖拽對(duì)界面布局進(jìn)行設(shè)計(jì)并對(duì)空間屬性進(jìn)行設(shè)置。該圖形設(shè)計(jì)工具最終生成一個(gè)XML文件,該文件描述了用戶界面的各種信息。
代碼自動(dòng)生成引擎根據(jù)XML文件的信息在BREW應(yīng)用程序框架模板文件中搜索相應(yīng)的標(biāo)簽,并根據(jù)界面控件的屬性在模板文件中添加相應(yīng)代碼,從而生成BREW程序。
3BREW應(yīng)用的可視化界面設(shè)計(jì)及代碼自動(dòng)生成
3.1圖形界面控件的封裝及可視化設(shè)計(jì)環(huán)境
目前BREW應(yīng)用的用戶界面設(shè)計(jì)仍然是手工編寫代碼的方式,編程人員需要多次運(yùn)行修改才能達(dá)到滿意的效果,效率十分低。
本文開發(fā)一個(gè)包含有界面設(shè)計(jì)環(huán)境及多種圖形界面控件的可視化界面設(shè)計(jì)工具。利用該工具,開發(fā)人員可以為自己的應(yīng)用程序創(chuàng)建一個(gè)圖形手機(jī)屏幕,并可以通過鼠標(biāo)拖拽將各種圖形界面元素添加到手機(jī)屏幕的相應(yīng)位置,進(jìn)行“所見即所得”的界面設(shè)計(jì)。
該工具實(shí)現(xiàn)的關(guān)鍵是將BREW中相關(guān)接口進(jìn)行抽象并封裝為圖形界面元素控件。例如將BREW中的IImage接口封裝為圖片控件,將ITextCtl控件封裝為文本框控件等等。當(dāng)用戶將該控件拖拽到屏幕區(qū)域并進(jìn)行調(diào)整時(shí),需要記錄下該控件對(duì)應(yīng)接口的各種表象屬性參數(shù),如x、y坐標(biāo),寬、高等。此外,對(duì)于控件對(duì)應(yīng)接口的其他屬性需要用戶進(jìn)行設(shè)置。
本系統(tǒng)中的可視化界面設(shè)計(jì)工具可以使人們從從繁瑣的界面設(shè)計(jì)編碼工作中解脫出來,從而將主要精力放在應(yīng)用程序業(yè)務(wù)邏輯的設(shè)計(jì)與實(shí)現(xiàn)上,從而提高了開發(fā)效率。
3.2用戶界面XML文件
可視化界面設(shè)計(jì)工具根據(jù)用戶的設(shè)計(jì)要生成一個(gè)XML文件,該文件記錄了程序界面的各種設(shè)計(jì)信息,是自動(dòng)代碼生成中數(shù)據(jù)來源之一,代碼自動(dòng)生成引擎根據(jù)該文件及程序模板生成最終代碼。在這里,用戶界面信息是以XML文件的格式保存用戶在向?qū)е休斎氲男畔ⅰV圆捎肵ML文件的格式保存用戶輸入的信息,是由XML文件的特點(diǎn)決定的。XML是被設(shè)計(jì)用來存儲(chǔ)數(shù)據(jù)、攜帶數(shù)據(jù)和交換數(shù)據(jù),并且XML可以從多種類型的數(shù)據(jù)存儲(chǔ)方式中分離數(shù)據(jù)。
XML數(shù)據(jù)定義文件中的標(biāo)簽名為待替換的參數(shù),也是模板文件中的特殊的標(biāo)簽,標(biāo)簽值為用戶輸入的信息,用于代替模板中的待替換的參數(shù)。
在本文中,用戶界面XML中定義了每一種界面元素的名稱、類型、所屬窗口、尺寸、坐標(biāo)等等信息。例如:3.4BREW應(yīng)用代碼自動(dòng)生成引擎
代碼自動(dòng)生成引擎用于解析XML定義文件和讀取指定的模板文件,并將定義文件中解析得來的數(shù)據(jù)信息,在引擎中進(jìn)行保存,然后對(duì)模板文檔中的標(biāo)記及變量進(jìn)行匹配及替換,從而產(chǎn)生源代碼輸出。根據(jù)上面的流程將引擎的設(shè)計(jì)分成三個(gè)步驟:
●解析XML數(shù)據(jù)文件,讀取其中相關(guān)的信息;
●解析模板文件,找到要添加代碼的位置并添加代碼;
●根據(jù)需要,對(duì)已替換的模板進(jìn)行總體的調(diào)整。
例如引擎對(duì)用戶界面XML文件分析得知在窗口上設(shè)計(jì)了一個(gè)圖片,引擎將在程序模板的結(jié)構(gòu)體初始化部分生成圖片實(shí)例指針的定義:
IImage*pIImage_pic1;
在初始化函數(shù)中生成圖片接口示例代碼:
pMe->pIImage_pic1=ISHELL_LoadImage(pMe->pIshell,“/pic/test1.jpg”);
在事件處理函數(shù)的EVT_APP_START事件中生成加載圖片的代碼:
IIMAGE_Draw(pMe->pIImage_pic1,picX,picY);
在終了函數(shù)中生成釋放圖片實(shí)例的代碼:
if(pMe->pIImage_pic1!=NULL)
{
IIMAGE_Release(pMe->pIImage_pic1);
pMe->pIImage_pic1=NULL;
}
4結(jié)束語
本文提出了一種基于XML模板的BREW代碼自動(dòng)生成技術(shù)。在本系統(tǒng)中,通過對(duì)BREW接口的封裝,為BRE
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 健全金融服務(wù)體系的理論基礎(chǔ)
- 2025年度跨境電商物流與倉(cāng)儲(chǔ)服務(wù)合同2篇
- 二零二五年個(gè)人旅游貸款及還款協(xié)議3篇
- 2024年版:分公司依據(jù)母公司標(biāo)準(zhǔn)進(jìn)行建筑材料采購(gòu)合同
- 2024年軟件開發(fā)與購(gòu)買使用許可合同
- 明挖法施工方案
- 2025年度醫(yī)療設(shè)備采購(gòu)與安裝包清工合同3篇
- 2024河南試驗(yàn)機(jī)制造市場(chǎng)前景及投資研究報(bào)告
- 2024-2030年中國(guó)吻合器行業(yè)市場(chǎng)調(diào)查研究及投資潛力預(yù)測(cè)報(bào)告
- 2019-2025年中國(guó)練針織衫衣褲行業(yè)發(fā)展趨勢(shì)及投資前景預(yù)測(cè)報(bào)告
- 鐵路工程-軌道工程施工工藝及方案
- 福建省福州市各縣區(qū)鄉(xiāng)鎮(zhèn)行政村村莊村名明細(xì)及行政區(qū)劃代碼
- 《高中語文文言斷句》一等獎(jiǎng)優(yōu)秀課件
- 上海市中小學(xué)生學(xué)籍信息管理系統(tǒng)
- (完整版)自動(dòng)感應(yīng)門施工方案
- [QC成果]提高剪力墻施工質(zhì)量一次合格率
- 8站小車呼叫的plc控制
- _ 基本粒子與宏觀物體內(nèi)在聯(lián)系
- 象棋比賽積分編排表
- 小學(xué)贛美版六年級(jí)美術(shù)上冊(cè)第二十課向往和平課件(16張)ppt課件
- DPP4抑制劑比較篇PPT課件
評(píng)論
0/150
提交評(píng)論