For investors
股價:
5.36 美元 %For investors
股價:
5.36 美元 %認真做教育 專心促就業(yè)
作者Steven Willmott是3scale網(wǎng)站的CEO,3scale為超過100家網(wǎng)絡提供API服務,其中包括Skype等,也擁有超過60000名開發(fā)者為其編程;此外,他還為programmableweb和Gluecon社區(qū)做貢獻。本文Steven為我們解讀了利用HTML+JavaScript編寫應用程序將引領下一代Web新趨勢。
在舊金山創(chuàng)業(yè)公司3scale網(wǎng)站上經(jīng)常有人會問道:“究竟什么樣類型的Web架構會成為最終的贏家?是HTML5還是App+API?”我們的答案非常簡單:“將兩者集合?!?來自Alexander Aghassipour和Shajith Chacko發(fā)表的這篇文章講述了單頁應用程序是如何創(chuàng)建而來的。文章講述了Web應用設計趨勢——利用JavaScript并訪問核心API將多頁的Web應用轉換成單頁的應用。開發(fā)單頁Web應用利器新的前端架構包括Backbone.js,Ember.js,Angular.js以及Meteor;使用Gmail和Google Docs對于單頁模式來說早已不是稀奇之事,Trello正是使用單頁面程序元素(比如infinite scrolling/loading,in-line content無限滾動/加載,內(nèi)鏈內(nèi)容);此外,像Twitter、Facebook、Pintrest這些大型的社交網(wǎng)站都使用了單頁面程序設計元素。
單頁面應用是指用戶通過瀏覽器加載獨立的HTML頁面并且無需離開此導航頁面,這也是其獨特的優(yōu)勢所在。對用戶操作來說,一旦加載和執(zhí)行單個頁面應用程序通常會有更多的響應,這就需要返回到后端Web服務器,而單頁面應用為用戶提供了更接近一個本地移動或桌面應用程序的體驗。
單頁Web應用程序的優(yōu)點:
首先,最大的好處是用戶體驗,對于內(nèi)容的改動不需要加載整個頁面。這樣做好處頗多,因為數(shù)據(jù)層和UI的分離,可以重新編寫一個原生的移動設備應用程序而不用(對原有數(shù)據(jù)服務部分)大動干戈。
單頁面Web應用層程序最根本的優(yōu)點是高效。它對服務器壓力很小,消耗更少的帶寬,能夠與面向服務的架構更好地結合。
單頁Web應用程序的缺點:
雖然還有一些歷史遺留問題(大部分是針對HTML5的改進)以及SEO。如果你看中SEO,那就不應該在頁面上使用JavaScript,你應該使用網(wǎng)站而不是Web應用。目前該技術還存在一些爭議,但這并不是重點,因為這種類型的體系架構為SAAS Web Apps提供了一個極大的可用性。
單頁Web應用程序的結構很簡單:首先傳遞HTML文檔框架;然后使用JavaScript修改頁面;緊接著再從服務器傳遞更多數(shù)據(jù)然后再修改頁面,如此循環(huán)。從性能的角度看,在現(xiàn)代瀏覽器中單頁面Web App已經(jīng)能夠和普通應用程序相媲美,而且?guī)缀跛械牟僮飨到y(tǒng)都支持現(xiàn)代的瀏覽器。使用HTML+CSS+Javascript編寫應用程序,能使更多的人們都加入到程序開發(fā)的行列。
這足以說明,在Web設計過程中標志著Web將呈現(xiàn)一種新的趨勢,它將一個分離的功能層作為API并將表示層用APP的形式體現(xiàn)出來 (HTML5或Native):
單頁面+API模式比基于應用程序的HTML多重頁面更加靈活,因為底層API可用于多種不同的上下文、形式因素和設備類型。一旦網(wǎng)頁內(nèi)置了API,能夠滿足客戶不同需求(比如合作伙伴vs最終用戶)。
該模式意味著本地Web應用能夠為用戶無論是基于什么平臺提供更接近一個本地移動或桌面應用程序的體驗。服務平臺的移動后端比如Stackmob、Parse、Appcelerator、Kinvey以及Kii借助一些標準的API后端元素可提供跨平臺用戶體驗。
協(xié)議(如openAuth (oAuth) 成為作為用戶授權的黃金標準已被廣泛采用,提供了一個共同的模式。從應用程序和內(nèi)容中將單獨登錄/授權問題分離出來。也就是說用戶的身份可以從內(nèi)容、功能和用戶體驗中清晰地分離出。
一個單頁面Web應用程序就是一個Web應用程序,但結構不同。其中最重要的是:在第一次請求的時候,所有的標記語言(HTML)就已經(jīng)傳輸?shù)娇蛻舳?,其余的請求都通過REST API獲取JSON數(shù)據(jù),數(shù)據(jù)的傳輸通過Web Socket API或遠程過程調(diào)用。單頁面應用程序可以說是分拆Web技術的最后一步——通過分離(css)內(nèi)容,改進架構(XML和 XSLT)上的靈活性,調(diào)用服務器(AJAX)再到解壓應用程序的導航頁面結構。因此,這在Web發(fā)展中是個歷史性的轉折點。
目前這只是單頁面Web應用開發(fā)的初期,但可以看出將單頁面應用、APIs以及JavaScript結合在一起將成為許多流行應用的規(guī)范。
所以,當被問到“HTML5是App+API?”,我們會說,“兩者皆是——將兩者結合在一起要比以往快很多。”單頁面應用是一個塊非常大的拼圖。當然,導航、歷史性和SEO等問題也成為單頁面Web應用的詬病。
【免責聲明】本文部分系轉載,轉載目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點和對其真實性負責。如涉及作品內(nèi)容、版權和其它問題,請在30日內(nèi)與聯(lián)系我們,我們會予以更改或刪除相關文章,以保證您的權益!