受到極具人氣的蘋果iPhone的影響,移動應(yīng)用開發(fā)已經(jīng)進(jìn)入新階段。設(shè)備和應(yīng)用的能力已經(jīng)遠(yuǎn)遠(yuǎn)超越了第一代的移動開發(fā)殺手應(yīng)用——電子郵件。好戲還在后頭。在銷售方面,智能移動設(shè)備已經(jīng)趕超傳統(tǒng)的計算機(jī)客戶端。此外,據(jù)Forrester Research計算,2010年全球智能手機(jī)和平板電腦上的付費(fèi)應(yīng)用所得收入為22億美元,預(yù)期至2015年的復(fù)合年增長率(CAGR)為82%。
盡管移動應(yīng)用開發(fā)仍然主要是做消費(fèi)應(yīng)用,但有跡象表明企業(yè)開發(fā)團(tuán)隊需要做好準(zhǔn)備,以便讓他們的應(yīng)用運(yùn)行在新的、更為智能移動設(shè)備上。各類應(yīng)用開發(fā)經(jīng)理及軟件架構(gòu)師都注意到了。
RESTful SOA服務(wù)經(jīng)常傾向于成為移動應(yīng)用集成中服務(wù)器端架構(gòu)的一部分。在細(xì)節(jié)上,移動應(yīng)用的服務(wù)器架構(gòu)與已有的三層架構(gòu)不一樣,但是并沒有像移動客戶端架構(gòu)的差異那樣顯著。有大量的設(shè)備,其行為跟典型的桌面或便攜式PC不同。取決于你的選擇,它們得益于或者說是受累于匆忙的創(chuàng)新步伐。
為了馴服這頭猛虎,開發(fā)領(lǐng)導(dǎo)需要迅速定義出一個既實際又靈活的策略。IT必須確保移動應(yīng)用快速投入市場,同時還要考慮到移動工具和平臺那令人炫目的變化節(jié)奏, Forrester Research的分析師Jeffrey Hammond如是說道。
Hammond強(qiáng)調(diào)了目前出現(xiàn)的若干移動應(yīng)用的主要范疇。理解這些東西是邁向?qū)崿F(xiàn)移動應(yīng)用開發(fā)策略的第一步。
他列出的基本類別是:本地類型,直接在移動設(shè)備上運(yùn)行;基于Web型,利用了設(shè)備的Web瀏覽器;本地和Web混合型;以及第三方移動中間件服務(wù)。
每一種類型的移動開發(fā)方案IT決策者都面臨著多種選擇,每一項決定都會受到移動客戶端異于企業(yè)傳統(tǒng)的桌面或筆記本客戶端這一事實的影響。
總的來看,F(xiàn)orrester的Hammond把成本問題、應(yīng)用創(chuàng)建和升級的敏捷性、性能以及用戶體驗視為決定移動應(yīng)用開發(fā)方式的關(guān)鍵因素。正如我們將會看到的,這些選擇并不互斥。如Hammond所述,移動應(yīng)用開發(fā)“是一門平衡的藝術(shù)”。
本地型移動開發(fā)
在Web瀏覽器登錄智能手機(jī)之前,編寫設(shè)備的本地操作系統(tǒng)是應(yīng)用的開發(fā)方式。這意味著開發(fā)人員不得不針對每一種制造商的設(shè)備學(xué)會一組獨(dú)特的工具和技巧。
本地型開發(fā)采用低級軟件語言,相對于主流的企業(yè)開發(fā)而言,這仍然類似于嵌入式系統(tǒng)的開發(fā)方式。但是移動設(shè)備已經(jīng)發(fā)生了演變。突破性的iPhone允許團(tuán)隊里有高級語言—Objective C進(jìn)行開發(fā),盡管這一語言尚未得到主流開發(fā)者隊伍的廣泛支持。Google則堅定地將其Android移動開發(fā)平臺置于流行的Java語言基礎(chǔ)上。
但是,對于每一種采用Android的移動設(shè)備,開發(fā)團(tuán)隊仍然面臨著特定的工作。這是因為屏幕大小、內(nèi)存補(bǔ)充以及其他元素在不同的Android之間均各不相同。
經(jīng)理的困境進(jìn)一步惡化,因為Android和iPhone加起來也僅占移動設(shè)備市場的一小部分。 為了支持大量的終端用戶,移植到許多設(shè)備類型上也許是必要的。 除了iPhone和Android以外,還有Windows Phone、蘋果的iPad、Rim BlackBerry以及Symbian等。
“如果你關(guān)注的重點在于提供一個很棒的體驗,想要進(jìn)行優(yōu)化,那么你有可能會選擇本地化,” Hammond在Forrester最近于波士頓舉辦的ADD論壇上說。但是,這不是老生常談。Hammond補(bǔ)充說某些移動中間件提供商能夠提供實現(xiàn)高度優(yōu)化的用戶體驗的應(yīng)用