日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
統(tǒng)治網(wǎng)絡(luò):JavaScript的勝利

JavaScript正憑借新型工具與功能提升以極度夸張的速度吞噬整個(gè)世界。我們是否應(yīng)該接受這一無(wú)法逆轉(zhuǎn)的趨勢(shì)?

[[86718]]

還記得那些舊日往事嗎?很多用戶因?yàn)閾?dān)心安全問(wèn)題而在瀏覽器中禁用JavaScript。如今這樣的擔(dān)憂已經(jīng)顯得相當(dāng)可笑——JavaScript已經(jīng)成為統(tǒng)治網(wǎng)絡(luò)世界的絕對(duì)王者。

在以平臺(tái)多樣性為標(biāo)志的計(jì)算時(shí)代之下,我們需要能夠運(yùn)行在任何設(shè)備瀏覽器當(dāng)中的應(yīng)用程序。原生應(yīng)用的運(yùn)行速度也許更快、對(duì)于特定平臺(tái)的功能利用效果也非JavaScript可及,但云時(shí)代的來(lái)臨顯著縮小了二者之間的差距。現(xiàn)在擺在開(kāi)發(fā)人員面前的道路有兩條:針對(duì)桌面系統(tǒng)或者移動(dòng)平臺(tái)開(kāi)發(fā)只能運(yùn)行在單一環(huán)境下的應(yīng)用,或者編寫能為任何用戶所使用的JavaScript應(yīng)用。

當(dāng)然,以上問(wèn)題的具體答案取決于應(yīng)用程序的具體特性。JavaScript擁有明顯的局限性——舉例來(lái)說(shuō),出于安全原因,JavaScript無(wú)法讀取或者寫入客戶端中的文件。而且“真正”的程序員更傾向于利用自身技術(shù)水平在應(yīng)用中使用大量快捷的開(kāi)發(fā)方式。不過(guò)JQuery及其它一系列框架的出現(xiàn)讓JavaScript具備了開(kāi)發(fā)高復(fù)雜性應(yīng)用程序的能力,而JSON(即JavaScript 對(duì)象表示法)能夠?qū)崿F(xiàn)除XML之外的全部數(shù)據(jù)傳輸需求。更不用提Node.js為JavaScript帶來(lái)的強(qiáng)大服務(wù)器端事務(wù)處理能力。

JavaScript還能走多遠(yuǎn)?

巧合的是,InfoWorld網(wǎng)站新技術(shù)論壇上的兩篇***博文都在討論JavaScript的未來(lái)發(fā)展?jié)摿Γ阂黄蒝isiCalc聯(lián)合創(chuàng)始人兼技術(shù)老鳥(niǎo)Dan Bricklin所撰寫,另一篇?jiǎng)t由Adobe公司的Divya Manian與Thibault Imbert撰寫。

在題為《JavaScript在移動(dòng)平臺(tái)擊敗原生代碼》的文章中,Bricklin針對(duì)JavaScript運(yùn)行速度低于原生代碼的假設(shè)提出質(zhì)疑:

盡管總體來(lái)說(shuō),原生代碼在數(shù)學(xué)計(jì)算方面的執(zhí)行速度確實(shí)要遠(yuǎn)遠(yuǎn)勝過(guò)JavaScript,但這種觀點(diǎn)忽略了眾多應(yīng)用程序之間彼此獨(dú)立的運(yùn)行狀態(tài)。在很多運(yùn)行過(guò)程中,JavaScript應(yīng)用程序的性能表現(xiàn)往往能夠贊同甚至優(yōu)于原生代碼。

為什么會(huì)這樣?根據(jù)Bricklin的解釋,這是因?yàn)楸姸嘟艹龅某绦騿T已經(jīng)花了數(shù)年時(shí)間對(duì)瀏覽器進(jìn)行調(diào)整,從而實(shí)現(xiàn)了運(yùn)行過(guò)程的極端優(yōu)化。另外,瀏覽器中已經(jīng)逐步出現(xiàn)多種先進(jìn)的運(yùn)行機(jī)制進(jìn)展,例如3D渲染。

作為Adobe公司的代言者,Manian與Imbert分析了JavaScript的未來(lái)前景并提到Mozilla公司的研究項(xiàng)目asm.js。該項(xiàng)目“定義了一套JavaScript子集,通過(guò)編譯器生成并利用JavaScript虛擬機(jī)實(shí)現(xiàn)高度優(yōu)化?!备钊伺d奮的是,他們還探討了RiverTrail這款由英特爾負(fù)責(zé)開(kāi)發(fā)的并行編程模型及API——當(dāng)然也是專為JavaScript所打造。兩位作者同時(shí)談到,Adobe公司建議為HTML 5功能引入新的標(biāo)準(zhǔn)化機(jī)制,其中包括Regions、Blend Modes以及Shapes等。

通過(guò)或明或暗的各種跡象,我們幾乎可以斷定,Manian與Imbert通過(guò)自己的博文給Flash及ActionScript的墳?zāi)褂痔砹艘话淹痢?/p>

JavaScript生態(tài)系統(tǒng)

JavaScript的勝利宣言絕非憑空想象——幾乎每周都會(huì)出現(xiàn)新的JavaScript框架以及與編碼相關(guān)的其它工具。除了jQuery與Node.js,今年InfoWorld網(wǎng)站評(píng)選的***開(kāi)源軟件獎(jiǎng)中出現(xiàn)了七位JavaScript贏家的身影,它們分別是:

◆ AngularJS,一套用于將靜態(tài)HTML頁(yè)面轉(zhuǎn)化為JavaScript應(yīng)用程序的工具集,同時(shí)提供對(duì)MVC架構(gòu)的支持。

◆ Backbone.js,一套JavaScript庫(kù),幫助開(kāi)發(fā)人員將結(jié)構(gòu)作為模型添加到應(yīng)用程序及表示數(shù)據(jù)當(dāng)中。

◆ Bootstrap,一款響應(yīng)式Web設(shè)計(jì)框架,旨在與jQuery相結(jié)合。

◆ Enyo,一款面向?qū)ο蟮腏avaScript框架,能夠被用于創(chuàng)建HTMl 5/CSS應(yīng)用。

◆ D3,一套JavaScript庫(kù),能夠在無(wú)需涉及插件的前提下在瀏覽器內(nèi)實(shí)現(xiàn)矢量圖形處理。

◆ Ember.js,一款***發(fā)展前景的JavaScript框架,用于開(kāi)發(fā)具備豐富功能的MVC應(yīng)用程序。

◆ Emscripten,一款將C++代碼轉(zhuǎn)化為asm.js形式的編譯器,屬于由Mozilla公司推出的經(jīng)過(guò)高度優(yōu)化的JavaScript子集。

上述陣容可謂極度強(qiáng)大——而且這還只是JavaScript麾下力量的冰山一角。這些工具仍處于迅猛的發(fā)展態(tài)勢(shì)之中,且大部分屬于開(kāi)源項(xiàng)目,它們的存在將繼續(xù)推動(dòng)JavaScript的未來(lái)改進(jìn)。

但是……JavaScript能行嗎??

然而,經(jīng)驗(yàn)豐富的開(kāi)發(fā)人員對(duì)JavaScript仍然有些反感。InfoWorld網(wǎng)站的Andy Oliver就這樣闡明了自己的態(tài)度:

讓JavaScript實(shí)現(xiàn)全面普及并非不可能——我們只需要幫自己判斷,這到底是不是個(gè)好主意……我的頂頭上司就很喜歡這種方式,組織起一大群能夠利用jQuery以及Node.js的開(kāi)發(fā)人員——他們***還能簡(jiǎn)單用用MongoDB等輕量級(jí)數(shù)據(jù)庫(kù)。但我身邊的開(kāi)發(fā)人員顯然很抵觸這種成天跟JavaScript打交道的工作習(xí)慣……項(xiàng)目管理者也不希望把自己的寶貴數(shù)據(jù)庫(kù)交到一幫JavaScript開(kāi)發(fā)者的手中。

換句話來(lái)說(shuō),JavaScript是一種既簡(jiǎn)單易學(xué)、又有些拙手笨腳的編程機(jī)制——這將導(dǎo)致編寫代碼的開(kāi)發(fā)人員陷入混亂、甚至搞不清自己到底在做些什么。

不過(guò)杰出JavaScript程序員的隊(duì)伍正在不斷擴(kuò)張,其中不少人都能在asm.js或者英特爾RiverTrail并行編程模式的輔助下實(shí)現(xiàn)諸多先進(jìn)功能。值得一提的是,他們絕對(duì)不會(huì)受到工具缺乏這類難題的困擾。

當(dāng)然,市場(chǎng)上也存在著JavaScript的替代方案,其中***代表性的就是谷歌Dart——據(jù)說(shuō)該語(yǔ)言將在不久的將來(lái)推出1.0正式版本。不過(guò)Dart代碼需要經(jīng)過(guò)編譯才能轉(zhuǎn)化為JavaScript,從而運(yùn)行在大部分瀏覽器環(huán)境當(dāng)中。惟一的例外就是谷歌推出的Chromium,它提供Dart虛擬機(jī)、因而能夠直接與這種新語(yǔ)言相對(duì)接。

***的并不一定總能取得勝利。與x86指令集類似,有時(shí)候贏家往往是能夠堅(jiān)持到***的方案。我不知道JavaScript如何通過(guò)自身擴(kuò)展來(lái)迎合開(kāi)發(fā)人員創(chuàng)建應(yīng)用程序的需求(例如像微軟Office這樣積淀豐厚的應(yīng)用),但奇怪的是,通過(guò)瀏覽器窗口實(shí)現(xiàn)全平臺(tái)運(yùn)行似乎成了未來(lái)的必然趨勢(shì)。我個(gè)人可不想刻意跟這種趨勢(shì)進(jìn)行對(duì)抗。

英文原文:http://www.infoworld.com/t/application-development/the-triumph-of-javascript-227283


文章題目:統(tǒng)治網(wǎng)絡(luò):JavaScript的勝利
文章出自:http://www.5511xx.com/article/djiichg.html