真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

如何重構(gòu)PhoneGap架構(gòu)和代碼,支持軟硬整合開發(fā)

成都創(chuàng)新互聯(lián)公司是專業(yè)的都蘭網(wǎng)站建設(shè)公司,都蘭接單;提供成都做網(wǎng)站、網(wǎng)站制作、成都外貿(mào)網(wǎng)站建設(shè),網(wǎng)頁設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行都蘭網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來合作!

如何重構(gòu)PhoneGap架構(gòu)和代碼,支持軟硬整合開發(fā)如何重構(gòu)PhoneGap架構(gòu)和代碼,支持軟硬整合開發(fā)

ee                                                                        ee

歡迎訪問 ==>高老師的博客網(wǎng)頁

高煥堂:MISOO(大數(shù)據(jù).大思考)聯(lián)盟.臺北中心和東京(日本)分社.總教練


EE                                                                        EE

何重構(gòu)PhoneGap架構(gòu)和代碼,支持軟硬整合開發(fā)

1.  案例說明

1.1  目標(biāo)

這是支持智能家庭的<軟硬整合開發(fā)、硬硬結(jié)合銷售>商業(yè)模式的應(yīng)用軟件平臺架構(gòu)設(shè)計(jì)。在此商業(yè)模式里,TV/STB是扮演主角(主硬件角色),所以這個(gè)開源(Open Source)的軟件平臺會執(zhí)行于TV/STB里。我們稱此平臺為:<軟硬整合平臺>。當(dāng)用戶將小配件連接到TV/STB時(shí),此平臺就會啟動相對映的(軟件)插件(Plug-in)來掌控大、小硬件的通信;而且銜接到上層的應(yīng)用軟件(App)。隨著小配件的創(chuàng)新和數(shù)量增多,插件也會更新、數(shù)量也會增多。于是,此<軟硬整合平臺>里,需要開發(fā)一個(gè)軟件模塊來管理上述的眾多插件。這個(gè)軟件模塊,通稱為:<插件管理模塊>(Plug-in Manager)。它負(fù)責(zé)管理眾多的插件,這插件就是EIT造形里的。如圖-1里的Tc和Tn。

如何重構(gòu)PhoneGap架構(gòu)和代碼,支持軟硬整合開發(fā)
圖-1. 插件與小硬件是對映的

其中,Tc對映到Router而連接到Contec云平臺;而tn則對映到Router而連接到Neat云平臺。由于這是一個(gè)支持<硬硬結(jié)合銷售>的軟件平臺;其架構(gòu)設(shè)計(jì)必須考慮其跨(別人的)平臺的能力,以便擺脫被外來(軟、硬件)模塊的束縛。并進(jìn)而化被動為主動,隨時(shí)能順暢地抽換外來模塊,確保軟件平臺的新陳代謝,是軟件平臺持續(xù)成長的基礎(chǔ)。而其中的EIT造形就擔(dān)任這項(xiàng)任務(wù)。例如,圖-2里的透過插件來整合外掛的信息推送系統(tǒng),讓<軟硬整合平臺>能夠不受信息推送系統(tǒng)的束縛。

如何重構(gòu)PhoneGap架構(gòu)和代碼,支持軟硬整合開發(fā)
圖-2.  架構(gòu)設(shè)計(jì)必須考慮其跨(別人的)平臺

1.2  做法

在PhoneGap框架里有個(gè)<插件管理(Plug-in Manager)>模塊,由于PhoneGap是一個(gè)開源軟件,可以對它加以重構(gòu)而移植過來,做為我們開源開放的<軟硬整合平臺>里的<插件管理模塊>。原來的PhoneGap框架,其信息流向是承接來自WebView的事件。也就是它原來搭配的是HTML5-based的Web App;如圖-3所示。

如何重構(gòu)PhoneGap架構(gòu)和代碼,支持軟硬整合開發(fā)
圖-3.  原來PhoneGap框架的信息流向

由于我們的<軟硬整合平臺>上的應(yīng)用軟件,其形式包含傳統(tǒng)的Android App形式,以及HTML5-based的Web App形式。所以我們必須重構(gòu)PhoneGap框架,讓信息流向也能承接來自傳統(tǒng)(一般)Android App里的View事件;如圖-4所示。

如何重構(gòu)PhoneGap架構(gòu)和代碼,支持軟硬整合開發(fā)
圖-4. 重構(gòu)后,PhoneGap框架所添加的信息流向

于是,我們的<軟硬整合平臺>就能管理上述兩種Android App所需要的插件了;透過這些插件來將上層的App與底層硬件驅(qū)動(Driver)銜接,來控制外加的小配件;而實(shí)踐了<軟硬整合開發(fā)、硬硬結(jié)合銷售>的商業(yè)目標(biāo)。[歡迎光臨 高煥堂 網(wǎng)頁:  http://www.cnblogs.com/myEIT/ ]  

2.  重構(gòu)設(shè)計(jì)的經(jīng)驗(yàn)分享與討論

2.1    從<重構(gòu)設(shè)計(jì)>到<重構(gòu)代碼>的過程

◆  議題:PhoneGap目前只搭配HTML5的Web App
★ 如何重構(gòu)PhoneGap的架構(gòu)和代碼
★ 讓PhoneGap也能搭配一般的Native App

◆  現(xiàn)況:目前PhoneGap的架構(gòu)設(shè)計(jì)
★ HTML5 & PhoneGap可以讓UI更容易跨平臺
★ 其依賴Browser和PhoneGap的插件來吸收平臺的差化
★ 如果插件很多時(shí),PhoneGap里的PluginManager負(fù)責(zé)管理之
★ UI事件是從WebView傳送到PhoneGap的插件

◆  目標(biāo):
★ 即使不采用HTML5,也能使用PhoneGap來管里插件
★ 一旦不使用HTML5,PhoneGap就不再搭配WebView
★ 于是,PhoneGap轉(zhuǎn)而搭配一般的View,如Button等
★ UI事件(Event)改從一般的傳送到PhoneGap的插件

◆  收獲:
★ 如何攔截App的啟動事件(onCreate事件)和UI事件
★ 以EIT造形加快理解PhoneGap框架的結(jié)構(gòu)
★ 深刻領(lǐng)悟的設(shè)計(jì)要領(lǐng):如IPlugin接口設(shè)計(jì)
★ 熟悉從<重構(gòu)設(shè)計(jì)>到<重構(gòu)代碼>的過程

2.2   重構(gòu)的設(shè)計(jì)思考

     ◆  重構(gòu)范圍內(nèi)共有3個(gè)EIT造形的美妙組合
★ 第1個(gè)造形:{ Activity-DroidGap }
★ 第2個(gè)造形:{ WebView-CodavaWebView }
★ 第3個(gè)造形:{ PluginManager-Plugin-}
★ 熟悉從<重構(gòu)設(shè)計(jì)>到<重構(gòu)代碼>的過程
     ◆  因?yàn)椴辉俅钆鋀ebView,所以前兩個(gè)EIT造形都必須重構(gòu)
     ◆  第3個(gè)造形最復(fù)雜
     ◆  上上策是:不重構(gòu)第3個(gè)造形,其內(nèi)涵和接口代碼都保持不變
     ◆  成功地讓第3個(gè)造形跨到重構(gòu)的新平臺(即前兩個(gè)造形)

2.3   案例的成功關(guān)鍵和啟示

     ◆  關(guān)鍵:在于上述的設(shè)計(jì)思考
     ◆  洞悉:心懷EIT造形去觀察架構(gòu)
     ◆  技巧:從觀察重構(gòu)的變動震幅,找出上上之策
     ◆  啟示:優(yōu)越架構(gòu),帶來易于重構(gòu)的機(jī)會,創(chuàng)造了系統(tǒng)未來性

=========================================================

相關(guān)文章:

~ End~

**                                                                     **

如何重構(gòu)PhoneGap架構(gòu)和代碼,支持軟硬整合開發(fā)


網(wǎng)站名稱:如何重構(gòu)PhoneGap架構(gòu)和代碼,支持軟硬整合開發(fā)
標(biāo)題網(wǎng)址:http://weahome.cn/article/jjpjho.html

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部