這篇文章先談?wù)勎易约旱囊苿娱_發(fā)體會;然后具體談?wù)労螘r使用原生的移動應(yīng)用開發(fā),何時使用原生態(tài)的移動web開發(fā);最后提出一種軟件企業(yè)的移動開發(fā)策略,既滿足現(xiàn)在,又能把控未來。當(dāng)然自己是做企業(yè)級開發(fā),這里所說的軟件是指企業(yè)級軟件,并非互聯(lián)網(wǎng)軟件。

我與移動應(yīng)用開發(fā)

原生態(tài)的應(yīng)用我自己選擇了iOS學(xué)習(xí)了一段時間;隨后學(xué)習(xí)了jquery mobile開發(fā)框架;服務(wù)端是使asp.net webservice。 這三者的結(jié)合就可以很完美的開發(fā)一個移動應(yīng)用程序。在使用iOS開發(fā)應(yīng)用程序的時候,自己思考最多的是未來如何快速的移植到 Android ,Windows Phone上。后來發(fā)現(xiàn)jquery mobile這個web開發(fā)框架,隱隱感覺到這個才是未來,使用它開發(fā)出來的界面與iOS的界面并無二致,而且只需將jquery mobile開發(fā)的程序部署在服務(wù)器上,iOS 、Android 、Windows Phone上都可以使用。缺點是用戶體檢沒有原生應(yīng)用那么完美,前面說到web應(yīng)用主要是運行到服務(wù)端,解析之后發(fā)送到客戶端的瀏覽器上,加上手機的帶寬有限,響應(yīng)速度就沒那么快了。那么對于企業(yè)來說原生應(yīng)用和web應(yīng)用如何抉擇呢?

如何抉擇

對于下面幾種場景,建議使用原生的開發(fā)方式。

1、創(chuàng)建游戲:盡管你可以使用web的方式開發(fā)移動游戲,但是無論如何是不能跟原生態(tài)媲美的。

2、需要精確地定位:瀏覽器也可以定位,但是不精確。

3、使用攝像頭

4、使用加速計

5、需要訪問移動設(shè)備的本地文件系統(tǒng)

6、離線用戶

除了上面等幾種情況之外,建議都可以使用web 開發(fā)應(yīng)用程序。

企業(yè)的開發(fā)的策略

喬布斯說Web是未來,雖然現(xiàn)階段Native給了用戶更好的體驗。如果現(xiàn)在的開發(fā)者不有效的利用Web技術(shù),那他就落伍了。但如果過分依賴Web,完全不用Native那也未必就是好事。

那么企業(yè)現(xiàn)階段到底如何進行移動應(yīng)用的開發(fā)呢?個人覺得解決方案是使用webview。開發(fā)方式是原生+web。

webview是瀏覽器控件。可以使用在原生的應(yīng)用程序中內(nèi)嵌一個瀏覽器控件。

對于正在進行移動應(yīng)用原生態(tài)的開發(fā)的企業(yè)來說,建議盡量多使用此控件。盡量讓頁面使用jquery mobile等web框架實現(xiàn),然后用此控件去展示。對于上面提到的使用攝像頭、加速計、訪問本地文件可以使用原生態(tài)api去實現(xiàn)。這樣做的原因很簡單:用Jquery mobile實現(xiàn)的是共用的代碼,未來可以運行在多個平臺。

web app還是未來。但由這種方式的原生態(tài)app轉(zhuǎn)換到web app就不難了。

分享到

yangjin

相關(guān)推薦