JavaScript發(fā)展路線圖:體積更小巧更新更頻繁
譯文ECMAScript將迎來更為頻繁的更新節(jié)奏,但每次更新帶來的新功能則相應(yīng)減少。
作為JavaScript的底層官方規(guī)范,ECMAScript的開發(fā)者們開始更進(jìn)一步調(diào)整其升級(jí)規(guī)劃,而2016版本也可能會(huì)在下個(gè)月與大家見面。而隨著流程的變更,未來的新版本亮相頻率將變得更高,但每次更新帶來的新功能則相應(yīng)減少。
作為計(jì)劃中的年度更新版本,即將到來的ECMAScript 2016規(guī)范將提供一項(xiàng)Array.Prototype.includes 方法,旨在檢測數(shù)組中是否存在元素及指數(shù)操作符。
技術(shù)博主Axel Rauschmeyer在最近發(fā)布的新規(guī)范中指出:“這兩項(xiàng)功能本身——是的,只有兩項(xiàng)——確實(shí)比較有限,但新版本還將進(jìn)行部分清理及bug修復(fù)工作。并沒有什么太明顯的升級(jí)要素。”
ECMA方面預(yù)計(jì)將在今年6月正式推出新的規(guī)范版本。Rauschmeyer表示:“ES2016的小巧體積值得贊賞,我們需要時(shí)間來消化上一代ES6/ES2015。這同時(shí)也是新流程已經(jīng)投入執(zhí)行的一項(xiàng)證明——我們從現(xiàn)在開始將以規(guī)模更小但更加頻繁的方式發(fā)布新版本。”
JavaScript***pendan Eich曾于去年透露其希望能夠加快版本的發(fā)布節(jié)奏,從而在瀏覽器中實(shí)現(xiàn)規(guī)范瘦身。Mozilla Research戰(zhàn)略主管兼ECMA TC39委員會(huì)成員Dave Herman指出:“這種快速發(fā)布模式,通常被稱為‘train model’,已經(jīng)由火狐等瀏覽器證明了其可行性。定期更新有助于解決大規(guī)模功能發(fā)布所帶來的進(jìn)度壓力,意味著開發(fā)人員能夠從緊迫的工作中解放出來提供更多小型調(diào)整與改進(jìn)。我們利用這種小規(guī)模升級(jí)戰(zhàn)略以確保瀏覽器及翻譯/編譯器能夠快速交付新功能,從而幫助開發(fā)者更快加以使用。”
目前討論ECMAScript 2017規(guī)范顯然還為時(shí)過早。Herman指出:“由于功能只會(huì)在準(zhǔn)備好時(shí)才會(huì)推出,而標(biāo)準(zhǔn)版的發(fā)布與功能開發(fā)狀態(tài)并無關(guān)聯(lián),因此現(xiàn)在談?wù)撨@一將在2017年發(fā)布的版本顯然不切實(shí)際。當(dāng)然,對(duì)于Web開發(fā)者來說,最重要的就是新功能何時(shí)才能交付使用。在新的發(fā)布計(jì)劃當(dāng)中,相關(guān)建議都將在一年之內(nèi)得以完成,這無疑是一項(xiàng)巨大的進(jìn)步。”
瀏覽器與翻譯/編譯器的實(shí)際推出時(shí)間可能遠(yuǎn)早于實(shí)際規(guī)范。Herman建議稱:“對(duì)Web開發(fā)者來說最重要的就是追蹤自己所需要的功能的具體進(jìn)度。”
ECMAScript為明年列出的備選功能清單中包含字符串填充(用于降低字符串處理難度)、單指令多數(shù)據(jù)(簡稱SIMD)能力以及異步迭代器(負(fù)責(zé)實(shí)現(xiàn)異步數(shù)據(jù)源間交互的通用數(shù)據(jù)訪問協(xié)議)。
有時(shí)候,某項(xiàng)功能在用戶們強(qiáng)烈建議納入后也會(huì)因?yàn)榉N種原因而遭到拋棄,object.observe就是一例。其原本計(jì)劃于今年被添加進(jìn)來,但最終卻由于周邊技術(shù)環(huán)境的變化而遭到否決。
原文標(biāo)題:JavaScript road map: Smaller, more frequent updates ahead
【51CTO譯稿,合作站點(diǎn)轉(zhuǎn)載請(qǐng)注明原文譯者和出處為51CTO.com】