打造企業(yè)級應(yīng)用:HTML5,Hybrid,Native Dilemma對比
英文原文: Building Mobile App for Enterprise,編譯:牛秦勇
這篇文章主要關(guān)于如何開發(fā)企業(yè)級移動應(yīng)用。今天我讀了Charlie的關(guān)于移動應(yīng)用開發(fā)的文章,并且從企業(yè)的角度分析了hybrid應(yīng)用的情況。
總覽
最近我關(guān)于開發(fā)企業(yè)級移動應(yīng)用的交談大部分都是以“我是否該用Hybrid或者Native”這樣的問題開始。是的,很多組織出于成本上的考慮對 “Hybrid”方式很感興趣,但依我之見,任何決定都應(yīng)以用戶為導(dǎo)向而非成本。所以,要得出這個答案要這么去想“怎么才能給最終用戶最好的用戶體驗”, 而不是一直問“我們怎么才能降低成本”。不光企業(yè)級應(yīng)用,所有應(yīng)用都是這樣的。
另外,從企業(yè)的角度來說,我認為達到終端獨立是另一種降低成本和將來達到投資目的的方式。所以,選HTML5,Hybrid還是Native只是決定選擇的一個因素,這里還有一些當你討論移動策略時要考慮的因素:
設(shè)想階段要考慮的:
1,目標用戶分析
2,以一個簡單的框架開始,像Forrester的POST approach
3,差距分析和組合合理化
為移動應(yīng)用的開發(fā)和分發(fā)制定策略
1,移動web/純HTML/JSS
2,Hybrid 應(yīng)用(本地中的HTML5/JS應(yīng)用,像Phone Gap 或者Titanium中的本地部分或插件)
3.本地應(yīng)用
關(guān)于通用服務(wù)層的考慮:
1.創(chuàng)建或?qū)崿F(xiàn)一個可擴展的通用服務(wù)層
2.在服務(wù)層和傳統(tǒng)系統(tǒng)之間實現(xiàn)一個可擴展的中間層
3.確立保準(就像用REST)
4.為媒體分發(fā)確定和整合內(nèi)容分發(fā)網(wǎng)絡(luò)
測試模型
1.安全和性能
2. 基于設(shè)備的測試
提交管理
1. 支付模型
2. 已提交模型的跟蹤
3. 分析
4. 反饋跟蹤
5. 繼續(xù)開發(fā)
好了,這些就是移動開發(fā)策略的一部分,尤其當你討論企業(yè)移動應(yīng)用時,移動終端獨立是關(guān)鍵點,開發(fā)者要理解使產(chǎn)品有邏輯性和數(shù)據(jù)的有效性對多種終端的必要性。
在你周圍已經(jīng)存在的數(shù)據(jù)和智能中,REST已經(jīng)成為越來越多的創(chuàng)建公共服務(wù)層的默認選擇。
Hybrid對Native
現(xiàn)在關(guān)于Hybrid和Native,下面是我看到的主要的利弊兩方面的東西:
Hybrid 應(yīng)用:
有利的方面:
-
不需要為某一特定平臺開發(fā)
-
更好的投資回報率,代碼可在多個平臺重復(fù)使用
-
仍可以訪問設(shè)備的某些特性
-
可以打包到另外的渠道
不足的方面:
-
特殊化的UI很難做
-
響應(yīng)不夠快,且不像純本地應(yīng)用那樣富含多種特性
-
當實現(xiàn)特定的最優(yōu)化的特性時,可以遇到限制。
本地應(yīng)用
有利的方面:
-
高度訂制,能滿足邊界條件。
-
很高的可用性。
不足的方面:
-
平臺的多樣性
-
對每個平臺的投入
-
沒有統(tǒng)一的代碼庫及重用性
更多
當你在考慮企業(yè)級移動應(yīng)用時,再說一次,別在是用Hybrid還是Native之間考慮了。
從中間件的角度
1.選擇一種策略,以使存儲、計算你的移動應(yīng)用的資源可以在移動設(shè)備,本地存儲和云計算設(shè)施中實現(xiàn)。
2. 在移動應(yīng)用間連接,通信,代理時使用代理服務(wù),
-
· 在代理的最上層自定義實現(xiàn),就像Windows Azure Service Bus
-
· 創(chuàng)建面向web架構(gòu)的移動應(yīng)用,就像Marlabs Matrix平臺
-
· 第三方移動中間平臺,像Syclo等
3.如果需要支持多種認證機制,像Azure Federated Authentication.,那就用基于聯(lián)合的云認證服務(wù)。
4.采用基于push通知服務(wù)的云服務(wù)從你的移動設(shè)備發(fā)送和接受消息。
5.選擇一個支持比特率傳輸視頻內(nèi)容的合適的內(nèi)容分發(fā)網(wǎng)絡(luò),例如Azure CDN或者Limelight True Reach API.
6.使APIs支持擴展,跟蹤,反饋。
提交管理包括為支付模型,使用追蹤,分析和支持反饋制定一個合適的策略。提交管理應(yīng)該保證:
提交應(yīng)用到應(yīng)用商店時要有最少的條件
適當聽取用戶的建議—反饋和評分應(yīng)用來確定哪些可要哪些可不要
發(fā)布和更新要符合用戶的期望
所以,編碼快樂!