基于react-native的原型設(shè)計(jì)開(kāi)發(fā)工具的設(shè)計(jì)與實(shí)現(xiàn)
發(fā)布時(shí)間:2021-12-19 03:29
近幾年來(lái),前端技術(shù)發(fā)展迅猛。前端日趨組件化和復(fù)雜化,并且隨著手機(jī)端混生開(kāi)發(fā)的興起和桌面程序框架如electron的出現(xiàn),前端幾乎覆蓋了由服務(wù)器到瀏覽器到手機(jī)端再到桌面程序如此巨大的開(kāi)發(fā)范圍。但是,問(wèn)題也出現(xiàn)了,對(duì)于日趨飽滿(mǎn)甚至過(guò)剩的前端組件、框架,在進(jìn)行開(kāi)發(fā)人員的過(guò)渡時(shí),都需要重新掌握這些知識(shí),增加了學(xué)習(xí)成本。而往往由于每個(gè)人的內(nèi)在知識(shí)體系不同,對(duì)于框架的選擇也是偏重不同,增加了框架變動(dòng)的機(jī)率,這對(duì)于繼承過(guò)往封裝、開(kāi)發(fā)出的優(yōu)秀組件,無(wú)疑是沒(méi)有幫助的。本文通過(guò)對(duì)上述問(wèn)題和開(kāi)發(fā)需求的分析,設(shè)計(jì)并實(shí)現(xiàn)了基于react-native的原型設(shè)計(jì)開(kāi)發(fā)工具,采用菜單輔助團(tuán)隊(duì)管理、維護(hù)組件,并通過(guò)內(nèi)部實(shí)現(xiàn)的GUI模塊透明化應(yīng)用框架,使得同一個(gè)團(tuán)隊(duì)可以采用一個(gè)工具完成多個(gè)端的開(kāi)發(fā)任務(wù)。開(kāi)發(fā)人員可以采用該原型設(shè)計(jì)工具,借由該工具內(nèi)的gui輔助設(shè)計(jì)模塊快速完成手機(jī)app或者網(wǎng)頁(yè)的原型設(shè)計(jì)并生成代碼,節(jié)省技術(shù)調(diào)研的學(xué)習(xí)成本;趓eact-native的原型設(shè)計(jì)工具采用electron框架提供運(yùn)行時(shí)環(huán)境,electron由主線程和ui線程構(gòu)成,彼此通過(guò)消息轉(zhuǎn)發(fā)進(jìn)行交互。對(duì)于需要操作本地資源以及權(quán)限需求的業(yè)務(wù)分...
【文章來(lái)源】:山東大學(xué)山東省 211工程院校 985工程院校 教育部直屬院校
【文章頁(yè)數(shù)】:80 頁(yè)
【學(xué)位級(jí)別】:碩士
【部分圖文】:
圖2-1系統(tǒng)架構(gòu)圖??8??
樹(shù)的形式進(jìn)行組織,同時(shí)分析源代碼的組件標(biāo)簽,將每個(gè)組件標(biāo)簽的位置以及??相應(yīng)結(jié)點(diǎn)的屬性、樣式映射到語(yǔ)法樹(shù)的對(duì)應(yīng)結(jié)點(diǎn)屬性。??源代碼語(yǔ)法解析流程如下圖2-2所示:???語(yǔ)法綱?流程????■Sgtfg?g染進(jìn)g?文件樓鐵?reduxSflgjS????(—)?XX?N?,?,?,?,??rK^orcfchJ^?衫6Pars"?hH?baby丨如進(jìn)行邊法分祈?I—??丨卜耐的丨?Y?i?||>rtaWr.S8W?.?ttg??16進(jìn)獅8?|?g?絲達(dá)式糊n?,??|?析組件衍s的文本位g?1??|?Ca膝奴勘??★?:????|條降g達(dá)式》這JSX眾達(dá)it腔祈|??丨h?卜仏一叫卜一—纖?????圖2-2源代碼語(yǔ)法解析流程圖??首先,開(kāi)發(fā)人員在文件樹(shù)上進(jìn)行文件打開(kāi)操作,隨后文件模塊在redux的??文件緩存數(shù)據(jù)中進(jìn)行命中檢測(cè)。文件緩存數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)如下表2-1所示:??10??
??ipc消息交互時(shí)序如下圖2-3所示:??丨主謝S:mamjt?|?|?filcHandler?|?|?Bndg??|?[?Re<;uestEmitter?|?|?:?Reuqest?|??:?j?ipcRender.on??:?jSItfHRB?主撕輸?JB??門(mén)?.I?門(mén)■■…??register?/■--—>?丨糰????對(duì)m?*?s?s?*?g?e丨d進(jìn)行itfS??constructor?;?初觸?「_??????1?ipcMain.on??Bridg?.on?tt?聽(tīng)來(lái)?SilRftiSiESSS?’??SEW?來(lái)gnodejs的濟(jì)*?嚅?I??一?ex?回qap??ipc*ao??n〇dejsij!i?越ipcjflje??圖2-3?ipc消息交互過(guò)程??2.?1.3本地資源操作過(guò)程??主線程的本地資源操作模塊是用于解決ui線程對(duì)于本地資源操作的權(quán)限??問(wèn)題而設(shè)計(jì)的。本地資源操作可劃分為文件內(nèi)容讀取、文件保存、文件新建、??文件刪除、文件重命名、npm組件安裝、react-native工程新建。??文件內(nèi)容讀取的過(guò)程涉及到ui線程的文件模塊、主線程的ipc消息轉(zhuǎn)發(fā)模??塊和編輯器模塊,如下圖2-4所示:??ui銀呈文辦1^ ̄|?丨ipc;?肖思轉(zhuǎn)雄丨本地資觸作iiT|?|?s法解析f莫塊??^緩存檢測(cè)??????繯存命中.交由??編鋁器進(jìn)行顯示?:??緩存
【參考文獻(xiàn)】:
期刊論文
[1]SWT搭建仿Eclipse框架界面[J]. 張健. 電腦編程技巧與維護(hù). 2012(19)
[2]基于Java的GUI設(shè)計(jì)與實(shí)現(xiàn)[J]. 曾雅琳,郭斌. 計(jì)算機(jī)與現(xiàn)代化. 2005(10)
碩士論文
[1]基于Qt的圖形用戶(hù)界面的研究與實(shí)現(xiàn)[D]. 繆雨潤(rùn).東南大學(xué) 2015
[2]Eclipse平臺(tái)GUI測(cè)試插件的設(shè)計(jì)與實(shí)現(xiàn)[D]. 趙旭.大連海事大學(xué) 2012
[3]基于SWT/JFACE可定制的TABLE控件設(shè)計(jì)與實(shí)現(xiàn)[D]. 馬月花.北京郵電大學(xué) 2012
[4]基于Eclipse RCP的應(yīng)用系統(tǒng)研究與實(shí)現(xiàn)[D]. 金星善.武漢理工大學(xué) 2011
[5]基于Eclipse的可視化工作流編輯器的研究與實(shí)現(xiàn)[D]. 石一峰.電子科技大學(xué) 2009
[6]基于故事板的用戶(hù)界面原型工具的研究與實(shí)現(xiàn)[D]. 王蓓.西北大學(xué) 2008
[7]WEB快速應(yīng)用開(kāi)發(fā)框架的研究[D]. 秦長(zhǎng)春.重慶大學(xué) 2008
[8]Eclipse中工具界面集成的研究[D]. 馬釗.西安電子科技大學(xué) 2007
[9]基于IBM Workplace架構(gòu)的企業(yè)應(yīng)用的研究與實(shí)現(xiàn)[D]. 黃瑋.浙江大學(xué) 2006
[10]基于Eclipse的WEB應(yīng)用快速開(kāi)發(fā)工具的研究與實(shí)現(xiàn)[D]. 甘樹(shù)滿(mǎn).中國(guó)地質(zhì)大學(xué)(北京) 2006
本文編號(hào):3543683
【文章來(lái)源】:山東大學(xué)山東省 211工程院校 985工程院校 教育部直屬院校
【文章頁(yè)數(shù)】:80 頁(yè)
【學(xué)位級(jí)別】:碩士
【部分圖文】:
圖2-1系統(tǒng)架構(gòu)圖??8??
樹(shù)的形式進(jìn)行組織,同時(shí)分析源代碼的組件標(biāo)簽,將每個(gè)組件標(biāo)簽的位置以及??相應(yīng)結(jié)點(diǎn)的屬性、樣式映射到語(yǔ)法樹(shù)的對(duì)應(yīng)結(jié)點(diǎn)屬性。??源代碼語(yǔ)法解析流程如下圖2-2所示:???語(yǔ)法綱?流程????■Sgtfg?g染進(jìn)g?文件樓鐵?reduxSflgjS????(—)?XX?N?,?,?,?,??rK^orcfchJ^?衫6Pars"?hH?baby丨如進(jìn)行邊法分祈?I—??丨卜耐的丨?Y?i?||>rtaWr.S8W?.?ttg??16進(jìn)獅8?|?g?絲達(dá)式糊n?,??|?析組件衍s的文本位g?1??|?Ca膝奴勘??★?:????|條降g達(dá)式》這JSX眾達(dá)it腔祈|??丨h?卜仏一叫卜一—纖?????圖2-2源代碼語(yǔ)法解析流程圖??首先,開(kāi)發(fā)人員在文件樹(shù)上進(jìn)行文件打開(kāi)操作,隨后文件模塊在redux的??文件緩存數(shù)據(jù)中進(jìn)行命中檢測(cè)。文件緩存數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)如下表2-1所示:??10??
??ipc消息交互時(shí)序如下圖2-3所示:??丨主謝S:mamjt?|?|?filcHandler?|?|?Bndg??|?[?Re<;uestEmitter?|?|?:?Reuqest?|??:?j?ipcRender.on??:?jSItfHRB?主撕輸?JB??門(mén)?.I?門(mén)■■…??register?/■--—>?丨糰????對(duì)m?*?s?s?*?g?e丨d進(jìn)行itfS??constructor?;?初觸?「_??????1?ipcMain.on??Bridg?.on?tt?聽(tīng)來(lái)?SilRftiSiESSS?’??SEW?來(lái)gnodejs的濟(jì)*?嚅?I??一?ex?回qap??ipc*ao??n〇dejsij!i?越ipcjflje??圖2-3?ipc消息交互過(guò)程??2.?1.3本地資源操作過(guò)程??主線程的本地資源操作模塊是用于解決ui線程對(duì)于本地資源操作的權(quán)限??問(wèn)題而設(shè)計(jì)的。本地資源操作可劃分為文件內(nèi)容讀取、文件保存、文件新建、??文件刪除、文件重命名、npm組件安裝、react-native工程新建。??文件內(nèi)容讀取的過(guò)程涉及到ui線程的文件模塊、主線程的ipc消息轉(zhuǎn)發(fā)模??塊和編輯器模塊,如下圖2-4所示:??ui銀呈文辦1^ ̄|?丨ipc;?肖思轉(zhuǎn)雄丨本地資觸作iiT|?|?s法解析f莫塊??^緩存檢測(cè)??????繯存命中.交由??編鋁器進(jìn)行顯示?:??緩存
【參考文獻(xiàn)】:
期刊論文
[1]SWT搭建仿Eclipse框架界面[J]. 張健. 電腦編程技巧與維護(hù). 2012(19)
[2]基于Java的GUI設(shè)計(jì)與實(shí)現(xiàn)[J]. 曾雅琳,郭斌. 計(jì)算機(jī)與現(xiàn)代化. 2005(10)
碩士論文
[1]基于Qt的圖形用戶(hù)界面的研究與實(shí)現(xiàn)[D]. 繆雨潤(rùn).東南大學(xué) 2015
[2]Eclipse平臺(tái)GUI測(cè)試插件的設(shè)計(jì)與實(shí)現(xiàn)[D]. 趙旭.大連海事大學(xué) 2012
[3]基于SWT/JFACE可定制的TABLE控件設(shè)計(jì)與實(shí)現(xiàn)[D]. 馬月花.北京郵電大學(xué) 2012
[4]基于Eclipse RCP的應(yīng)用系統(tǒng)研究與實(shí)現(xiàn)[D]. 金星善.武漢理工大學(xué) 2011
[5]基于Eclipse的可視化工作流編輯器的研究與實(shí)現(xiàn)[D]. 石一峰.電子科技大學(xué) 2009
[6]基于故事板的用戶(hù)界面原型工具的研究與實(shí)現(xiàn)[D]. 王蓓.西北大學(xué) 2008
[7]WEB快速應(yīng)用開(kāi)發(fā)框架的研究[D]. 秦長(zhǎng)春.重慶大學(xué) 2008
[8]Eclipse中工具界面集成的研究[D]. 馬釗.西安電子科技大學(xué) 2007
[9]基于IBM Workplace架構(gòu)的企業(yè)應(yīng)用的研究與實(shí)現(xiàn)[D]. 黃瑋.浙江大學(xué) 2006
[10]基于Eclipse的WEB應(yīng)用快速開(kāi)發(fā)工具的研究與實(shí)現(xiàn)[D]. 甘樹(shù)滿(mǎn).中國(guó)地質(zhì)大學(xué)(北京) 2006
本文編號(hào):3543683
本文鏈接:http://sikaile.net/kejilunwen/ruanjiangongchenglunwen/3543683.html
最近更新
教材專(zhuān)著