討論了那么多,究竟什么是Web App?
你是否知道什么是Web App?你知道Web App是怎樣產(chǎn)生的嗎?Web.AppStorm對Web App的定義看起來有點復(fù)雜。Web App中使用了各種不同的技術(shù):Flash、 JavaScript、HTML5、PHP、 Java、Silverlight、Web服務(wù)以及具體的應(yīng)用程序…Web App必須滿足哪些條件?又有哪些條件并不是Web App所必須具備的?
我有時會看到一些評論指出某些Web App并非真正意義上的Web App,但事實上這些程序的確是Web App。因此,我想在此給出我們對“究竟什么是Web App”這一問題的看法。
我們對Web App 的簡單定義
要給出完整的Web App的定義是一件很復(fù)雜的事情,因此我們在此只給出一個簡單的定義:
Web Application是指通過使用Web和Web瀏覽器技術(shù),跨越網(wǎng)絡(luò)完成一個或多個任務(wù)的應(yīng)用程序,通常需要使用Web瀏覽器。
具體分析
◆ 應(yīng)用[軟件]:“應(yīng)用軟件也就是通常所說的Application或是‘App’,它是用來幫助用戶完成某個單獨的或是一組相關(guān)的工作的計算機軟件。”——Wikipedia給出的定義
◆ Web技術(shù):Flash, Silverlight, JavaScript, HTML & CSS, Java,以及許多其他的編程語言和跨網(wǎng)絡(luò)的電腦技術(shù)
◆ 網(wǎng)絡(luò):因特網(wǎng)或是內(nèi)聯(lián)網(wǎng)??梢詤⒖季S基百科的介紹
◆ 瀏覽器:Firefox,Chrome,Safari ,Opera, Internet Explorer以及許多其他的瀏覽器??梢詤⒖季S基百科的介紹
Chrome Web Store的困惑
隨著Chrome Web Store(CWS)的推出,Web App將以一種更加有組織、更加正式的方式呈現(xiàn)在用戶面前,但是到目前為止,人們對“Web App”還沒有一個全面的認識,因此很容易將它與桌面應(yīng)用程序混淆。
自從CWS推出以來,經(jīng)常有人向我反映CWS上列出的某些應(yīng)用程序?qū)嶋H上只是一些書簽,并不是真正的應(yīng)用程序,因為它們不使用Chrome運行。這些聽起來多么可笑啊!
這些人所說的應(yīng)用程序,和那些只能在Chrome上運行的應(yīng)用程序一樣,都是Web App!
這不過是一個Flash游戲

很多人認為Flash 游戲并不是Web App,即使是CWS已經(jīng)收錄了的Flash游戲。
隨著HTML5的發(fā)展和成熟,F(xiàn)lash已經(jīng)出現(xiàn)了一點下降的勢頭,但是Flash仍然是Web中的核心技術(shù)之一,許多Web App都是基于Flash開發(fā)的。
Adobe AIR & 桌面程序
與Flash一樣,很多人難以判斷Adobe AIR究竟是Web App還是一個桌面應(yīng)用程序。雖然AIR在電腦桌面上運行,但是通常它還是被當(dāng)做Web App,因為它使用了Flash、HTML、JavaScript等等Web技術(shù)。
TweetDeck是一個非常流行的AIR程序,現(xiàn)在它也開發(fā)了一個支持Chrome的版本。

TweeDeck for Chrome
雖然TweetDeck的AIR版本是在桌面上而非通過瀏覽器運行的,但是它仍然被視為Web App。10 Kick Ass Adobe AIR Apps上有更多相關(guān)的例子。
Web服務(wù) vs Web應(yīng)用程序
撇開各種不同的Web技術(shù)不談,弄清楚Web Apps定義最困難的是如何從各種紛繁復(fù)雜的Web App中提取出他們的共同特征。當(dāng)用戶登錄一個網(wǎng)站(如Pixlr.com),大家很容易理解這是在訪問一個Web App。但是對那些僅僅提供基礎(chǔ)服務(wù)(如電話查詢或是信息查詢)的網(wǎng)站,區(qū)分用戶是否在訪問Web App就變得相當(dāng)困難了。
其實這些服務(wù)大多都是Web App。我常常這樣問自己“這個程序是否完成了某個任務(wù)?”。即便它只完成了某個非常小的任務(wù),那么它也是一個Web App。Google的搜索引擎就是一個Web App,它本質(zhì)上和電話查詢服務(wù)沒有什么區(qū)別。
這樣說來,也并非所有的網(wǎng)站都是Web App。如果這個網(wǎng)站并沒有執(zhí)行任何任務(wù),那么它就并不是Web App。
總結(jié)
通常人們將Web App和桌面應(yīng)用程序混淆的主要原因是不熟悉它們之間的技術(shù)差異,尤其是在Web App越來越強大,甚至發(fā)展到桌面上了以后。雖然我并不奢望能夠讓所有人了解甚至是關(guān)心兩者的區(qū)別,但是我還是希望這篇文章能夠幫助到一部分人。
原文:What Is a Web App? Here’s Our Definition
譯文來源:http://www.webapptrend.com/
WebAppTrend是一個獨立的技術(shù)博客,關(guān)注Web App前瞻和實踐,以及智能瀏覽器發(fā)展
【編輯推薦】