解讀四大移動web應用開發框架真相
【51CTO譯文】近來關於新的移動網頁框架及移動平臺存在不少爭論。平心而論,這些工具在條款內容方面的混亂與模糊也是造成大家誤解的原因之一。我希望通過幾條簡短的評述來儘量清理這種認識層面上的混亂狀態。
網頁移動應用程式並不等同於本地移動應用程式
許多人認為Titanium及PhoneGap與Sencha Touch及jQuery Mobile屬於競爭對手關係。事實上它們並不是同一類事物。我敢肯定在丟擲自己的觀點後,一定會有人對我進行駁斥。不過網頁移動應用程式更應該被看作一類網站,正如Basecamphq.com或是Twitter.com那樣。一款網頁移動應用程式執行於瀏覽器之上,而且其所呼叫的資源幾乎都是遠端的、儲存於伺服器端的。當然不排除有些資訊也會出現本地儲存的情況,但歸根結底,它的本質是網站應用程式。
本地應用程式執行於我們的裝置上,其全部資源都安裝在我們的本地裝置中。本地應用程式使用該裝置的平臺、語言以及特殊的本地API以與裝置接駁。比方說我們無法在網頁移動應用程式中執行NSString,因為只有本地應用程式才能訪問本地資源,而網頁移動應用程式做不到這一點。
“那麼它們之間到底有什麼區別呢?”區別如下: Sencha Touch 與 jQuery Mobile
它們具備網頁移動框架。我們可以使用這些技術以建立基於網頁的移動應用程式。它們無法訪問任何本地API。它們二者的執行都基於JavaScript。並且儘管它們是以完全獨立的方式處理類似的問題,但其仍然具有共同點,即它們為移動頁面服務。
大家可以在PhoneGap及Titanium上使用Sencha Touch與jQuery Mobile。如果我們能夠接受將html/js作為自己的本地應用程式,還可以將PhoneGap或Titanium嵌入瀏覽器中並將其放在應用程式線上商店或市場中。我想這可能正是誤解的根源。將Sencha Touch或jQuery Mobile進行本地化包裝並不能使其成為真正的本地應用程式。該過程只是使其在外觀上像是本地應用程式而已。我們可能從PhoneGap或Titanium中的API上獲得過一些功能,但這仍然不一定可以被稱為“本地”應用程式。它們充其量只能看作是執行在本地裝置上的網頁應用程式。這種將網頁技術引入本地化領域的應用技術相當了不起。 PhoneGap 與 Titanium PhoneGap及Titanium與Sencha Touch及jQuery Mobile之間並沒有太多相似之處。事實上,我可以說得直白一些——PhoneGap與Titanium之間也並不完全相似。當然它們二者都允許大家自由分配本地或類本地型應用程式。它們也都不需要為Sencha Touch或jQuery Mobile準備額外的“建立支援”。為什麼?因為它們所支援的裝置自帶瀏覽器。請記住,Sencha Touch與jQuery Mobile是執行在瀏覽器上的。因為PhoneGap及Titanium都允許我們在特定裝置的瀏覽器中執行程式,所以它們其實是通過這種方式實現了對Sencha Touch及jQuery Mobile的支援。
PhoneGap與Titanium之間最大的不同在於它們所提供的功能。PhoneGap的服務內容更像是一種依附於瀏覽器的外殼,它表現得近似於本地應用程式,但本質上卻是html/JavaScript應用程式。Titanium則通過“頁面預覽”實現了完全相同的功能,但卻更進一步,為Cocoa Touch在瀏覽器之外提供了大量的本地API。根據我的觀察,這兩款應用程式在線上商店中有95%都並不是基於網頁執行的。
在Titanium上我們通過JavaScript進行編碼、利用Titanium自身提供的獨特API。最終的結果是,應用程式在執行當中佔用的是本機效能以及本地使用者介面等等。概括來說:我們用JavaScript編碼,而其實際執行卻基於Objective-C(這裡指的是iOS類應用程式)。 我仍然對“徹底終止本地應用”所獲得的讚揚之聲持懷疑態度。在為瀏覽器及裝置分別製作過應用程式之後,我認為將二者相結合才是正確的選擇,且極具發展空間。瞭解了各種技術之間的差異,我想這對於搞清各類工具的本質應該有所助益。
相關文章
- 10個優秀的移動Web應用開發框架Web框架
- 移動APP開發框架盤點2:Web移動前端框架大全APP框架Web前端
- 構建 iOS 風格移動 Web 應用程式的8款開發框架iOSWeb框架
- 移動Web富應用框架RAIS釋出Web框架AI
- 10個Web移動開發JavaScript框架Web移動開發JavaScript框架
- 讀了《JavaScript Web 應用開發》JavaScriptWeb
- 11個移動應用開發的HTML5框架和應用HTML框架
- 移動 Web 開發的10個最佳 JavaScript 框架WebJavaScript框架
- 9 款極佳的 JavaScript 移動應用程式開發框架JavaScript框架
- 解讀什麼是小程式容器,讓移動應用開發不再有難題
- 《React Native跨平臺移動應用開發》讀後鬼扯React Native
- 移動應用程式開發簡介!
- 移動web——移動web開發簡介,WebStorgae簡介Web
- 移動Web單頁應用開發實踐——頁面結構化Web
- 移動裝置的Web應用程式開發----(事件和輸入) (轉)Web事件
- “Python Web應用開發框架Django速成”公開課PythonWeb框架Django
- 開發Web應用Web
- 移動web開發總結Web
- 移動web開發小貼示Web
- web移動開發總結(六)Web移動開發
- 移動web開發之touch事件Web事件
- web開發安全框架中的Apache Shiro的應用Web框架Apache
- 新移動框架中企業自建應用的來源是【移動輕應用管理】框架
- 機器學習與移動應用開發的未來機器學習
- 移動應用開發必備工具盤點
- 混合移動應用開發初級例項
- 移動開發必讀書單移動開發
- 移動web開發之移動端真機測試Web
- 移動 WEB 開發的佈局方式 ---- 響應式佈局Web
- 為什麼移動Web應用程式很慢Web
- Web APIs-07:本地儲存 + 移動端開發框架 + classList屬性WebAPI框架
- SAP打造開放性移動應用開發架構 助力移動開發者創新架構移動開發
- 移動端 Web 開發踩坑之旅Web
- 移動web開發之視口viewportWebView
- HTML5移動Web開發指南HTMLWeb
- 移動Web前端開發資源整合Web前端
- 基於HT for Web的Web SCADA工控移動應用Web
- 基於HT for Web的Web SCADA移動工控應用Web