今天,web僅僅是另外一個原生平臺,展望未來,它不得不憑借自身的獨(dú)特優(yōu)勢與原生平臺進(jìn)行競爭,而不是憑借internet賦予它的優(yōu)勢,因?yàn)槠渌脚_也正在實(shí)現(xiàn)并擁有這些相同的優(yōu)勢。當(dāng)你決定你的下一個應(yīng)用是使用web平臺還是其他平臺時(shí),你要回答的一個棘手問題是,采用原生應(yīng)用來展現(xiàn)用戶界面,還是通過訪問URL和HTML服務(wù)器,著兩種方式那種更好。Web應(yīng)用也正在實(shí)現(xiàn)原生平臺的一些功能(像本地存儲和離線運(yùn)行模式),Web應(yīng)用和原生應(yīng)用之間的界限越來越模糊了。像Palm web和Google Chrome這樣的操作系統(tǒng)表面,原生技術(shù)就是web技術(shù)。
我們需要了解,運(yùn)行再這樣一個操作系統(tǒng)上的web應(yīng)用是一個原生應(yīng)用。這樣說來,我們知識要決定采用哪種原生操作系統(tǒng)和框架,選擇一個能夠提供良好用戶體驗(yàn)的操作系統(tǒng)。然后,我們還要選擇合適的原生編碼技術(shù):原生web應(yīng)用上的HTML、CSS和Javascript,原生IOS應(yīng)用上的Objective-C和Cocoa Touch,Android應(yīng)用上的Android SDK和Java,windows Phone應(yīng)用上的C#和.NET等。最后,無論哪一個平臺和技術(shù)贏了,很明顯地,將來的趨勢都是原生,web僅僅又是另一個客戶端?,F(xiàn)在,關(guān)鍵問題不是“我們是要web還是原生”,而是“我們的新產(chǎn)品應(yīng)該支持哪一個或哪幾個平臺,應(yīng)該采用哪種客戶端技術(shù)或那些客戶端技術(shù)”。
要回答這個問題,我們需要了解我們產(chǎn)品的本質(zhì),特別是,我們的產(chǎn)品介于文檔和應(yīng)用之間時(shí)。
Web產(chǎn)品- -般會被分為內(nèi)容型和行為型兩種。我們通常將內(nèi)容型的產(chǎn)品稱為一個網(wǎng)站,行為型網(wǎng)站的稱為一個應(yīng)用。你的產(chǎn)品可能不屬于這兩個類別中的任何一個,可能是處于這兩種類別之間的。當(dāng)一個產(chǎn)品更接近內(nèi)容型時(shí),我們會使用漸進(jìn)增強(qiáng)的技術(shù)分層實(shí)現(xiàn)基本功能和基于內(nèi)容的核心交互動作, .以此保證更多的人們能夠訪問到。這些漸進(jìn)增追的功能通常既不是先進(jìn)的格式或布局,也不是一些別出心 裁的導(dǎo)引類交互行為。我們可以使內(nèi)容適合于不同尺寸的屏幕,使有限的導(dǎo)引類交互行為適合于不同的輸入機(jī)制。這不是一-項(xiàng)簡 單的工程,但也不是不可能實(shí)現(xiàn)的。然而,當(dāng)產(chǎn)品從文檔型向應(yīng)用型轉(zhuǎn)變時(shí),實(shí)現(xiàn)漸進(jìn)增強(qiáng)將變得更加困難。事實(shí)上,這也可能會變得完全沒有意義或不可能。例如你將怎么優(yōu)雅降級一個圖片在線編輯器?再一個不能希納是圖形的功能型手機(jī)上,一個圖形編輯器應(yīng)如何工作?你將會使其顯示什么內(nèi)容?應(yīng)用不是內(nèi)容型的,而是行為型的。無論應(yīng)用程序是什么內(nèi)容,我們對其進(jìn)行優(yōu)雅降級將不總是有意義。應(yīng)用通常是完全由行為構(gòu)成的,這些行為促使用戶去創(chuàng)建內(nèi)容。再來看圖片編輯器的例子:圖片編輯器本身沒有任何內(nèi)容,但它能夠使用戶創(chuàng)建內(nèi)容。為了創(chuàng)建卓越的用戶體驗(yàn),我們需要保持專注,盡可能以最好的方式去滿足我們用戶的需求。假設(shè)時(shí)間和資源不受限制,我們可以優(yōu)化我們的應(yīng)用在每一個設(shè)備和平臺上的用戶體驗(yàn)。然而,假設(shè)在實(shí)際項(xiàng)目中我們的時(shí)間有限,預(yù)算也有限,我們就必須要選擇滿足哪些用戶,解決哪些問題,優(yōu)化哪些平臺和設(shè)備上的產(chǎn)品。我們這么做不是要去除不必要的用戶,而是因?yàn)槲覀円庾R到,為每個人提供卓越的用戶體驗(yàn)是不切實(shí)際的。畢竟,沒有哪個產(chǎn)品團(tuán)隊(duì)有足夠資源來創(chuàng)建一些能夠?yàn)槊總€用戶都提供卓越用戶體驗(yàn)的應(yīng)用。