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

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

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