2013年,移動開發(fā)者必須考慮的4件事

2013/01/06 11:20     

許多科技公司明年都把移動戰(zhàn)略放在第一位了。移動設備,包括平板電腦,正在超越傳統(tǒng)PC,而成為更受歡迎的上網(wǎng)方式。

預計接下來的三年,移動項目的增長將以4:1的比例超越PC項目的增長。在2016年,全球移動設備數(shù)量有望超過人口數(shù)量。

對于開發(fā)團隊的挑戰(zhàn)是:如何調(diào)整“移動第一”或“移動先行”的心態(tài)。這要求開發(fā)者將用戶體驗放在第一位,并提供強大的內(nèi)容和個性化體驗。這也意味著需要積累跨多個平臺和設備的經(jīng)驗,了解其復雜性,掌握執(zhí)行移動項目所需的特殊技能以及搭建強大后臺基礎的專業(yè)知識。

現(xiàn)在的應用都需要將用戶多個平臺的信息融合起來。 你不可避免的將要面對多個客戶端操作系統(tǒng)平臺上的產(chǎn)品迭代更新,管理開發(fā)周期也越來越富有挑戰(zhàn)性。公司也會在移動策略上給予技術領導人更大的壓力。在接下來的這一年,如何以移動第一為口號,讓開發(fā)團隊和運營團隊更好的團結在一起,也變得比以往更加重要和具有挑戰(zhàn)性。

接下來是開發(fā)者在2013年需要考慮的,十分緊迫的4件事:

將“移動第一”的觀念帶給你的核心開發(fā)團隊

由于對跨平臺技術的需求越來越大,將移動開發(fā)業(yè)務外包正成為一種趨勢。然而隨著開放的網(wǎng)絡標準(如JavaScript 以及HTML5)的日益流行,將促使內(nèi)部移動開發(fā)變得更加容易。 這是非常幸運的,因為未來移動開發(fā)的周期將會越來越短,迭代更新越來越頻繁。如果沒有內(nèi)部移動開發(fā)人員,將會讓開發(fā)過程變得非常麻煩,還要將外部資源做好協(xié)調(diào)并整合進來。

你需要慎重考慮將移動開發(fā)業(yè)務托付于誰,比如很多網(wǎng)頁設計師是從PC端轉(zhuǎn)型過來,他們并沒有任何為移動用戶設計產(chǎn)品的經(jīng)驗。產(chǎn)品形態(tài)的變化、觸摸感以及內(nèi)容交互上的確需要不同的設計體驗。

為移動應用或網(wǎng)絡調(diào)整服務器架構

目前的復合應用對后臺架構的影響越來越大。大多數(shù)應用都基于一系列API,能夠使應用的用戶界面和后臺運行進行更好的交互,并實現(xiàn)跨平臺轉(zhuǎn)移。需要注意的是,這些后臺應用(復合應用)不只是用來表現(xiàn)原有后臺架構的,他們需要支持更個性化、更具互動性的移動應用功能。因此,原有的純粹傳遞技術之用,沒有經(jīng)過改造的架構不足以稱為真正的“移動先行”。

不過可喜的是現(xiàn)在越來越多的移動公司采用了云架構。

2013年選擇哪種后臺作為運行架構的確很重要。比如,你將如何應對由需求增長引起的海量移動設備訪問你的應用?這需要一個比以往更有彈性的后臺支撐系統(tǒng)。此外,你又將如何制定合理、靈敏的開發(fā)周期,以適應客戶端和服務器端兩個層面的變化?你又將如何保證應用后臺的容錯性和冗余度?

關鍵是要保證你已經(jīng)選擇了一個彈性的、有足夠容錯性的云架構平臺,以支撐你的移動網(wǎng)絡應用所產(chǎn)生的這一系列需求。

統(tǒng)一開發(fā)及運營

移動先行戰(zhàn)略給開發(fā)和運營團隊協(xié)作方面帶來了新的要求。

盡管“devops”(development+operation)這個詞在前幾年是作為一個熱點詞匯冒出來的,不過隨著關于“開發(fā)和運營團隊完美協(xié)作”的理念的流行,它現(xiàn)在不再是一個可有可無的關注領域,而是需要開發(fā)團隊給予足夠重視。

實際上,在移動應用失敗因素中,運營相關失誤是最重要的因素之一。來自Carnegie Mellon 大學的調(diào)研顯示,引起移動應用失敗的因素包括:軟件升級失敗、未能滿足潛在需求、資源匱乏、配置錯誤等。這說明在應用程序發(fā)布之前運維人員對應用安全性、可靠性的部署與開發(fā)人員對核心代碼的調(diào)試是一樣重要的。

舉例來說,在應用迭代開發(fā)環(huán)境中,需要對應用的客戶端和服務器端頻繁更新,你如何確保在應用的開發(fā)到發(fā)布過程中不出現(xiàn)配置錯誤?一般的做法是開發(fā)人員在這個過程中寫出詳細的編碼細則,讓運維人員在應用發(fā)布過程中有所指導,這些細則包括應用版本、安裝準則,以及具體執(zhí)行什么樣的命令。

在開發(fā)與運維人員工作轉(zhuǎn)換時保證不出差錯的關鍵是將其自動化。開發(fā)人員需要把已經(jīng)測試過的可自動執(zhí)行的文件包交給運維人員。

當軟件版本升級出現(xiàn)問題時,由新版本給已經(jīng)發(fā)布的軟件帶來潛在可能性錯誤時,你將如何處理?這需要更好的實時故障診斷工具,避免開發(fā)人員重復錯誤。另外,如果能讓軟件輕而易舉的回到初始版本,也是一個不錯的主意。

所以,應用程序的部署必須同時保障高效(支持頻繁迭代更新),以及高質(zhì)量產(chǎn)品。

讓“移動第一”戰(zhàn)略具有可實施性

盡管實施“移動第一”戰(zhàn)略聽起來很難,但如果你在重新思考應用的開發(fā)、部署和管理方式過程中,同時把團隊進行合理整合,事情會變得更容易些。

應用的開發(fā)和運維所需的技能和工具是全然不同的:無論是在設計用戶界面,搭建API云架構,建立彈性后臺基礎設施,還是避免“devops”協(xié)作不善出現(xiàn)的應用程序錯誤時。事實上,解決問題的方法不止是改進整個流程、提高自動化程度,還包括一個良好的老式的團隊協(xié)作。

(注:本文作者Andi Gutmans是Zend Technologies的聯(lián)合創(chuàng)始人兼CEO)

相關閱讀