JavaScript的內(nèi)部人士披露其未來發(fā)展方向
譯文【51CTO.com快譯】ECMAScript內(nèi)部人士表示,雖然新型功能目前仍存在一些復雜問題,但其對JavaScript在未來版本中將其納入繼續(xù)保持信心。
曾幾何時,JavaScript因發(fā)展速度緩慢而受到詬病。然而如今,其發(fā)展速度又開始突然加快,特別是在去年的ECMAScript 2015規(guī)范當中。在未來幾年中,開發(fā)者們也許會看到更多類似于類型系統(tǒng)及多線程機制的創(chuàng)新成果。
在本周一于舊金山召開的QCon會議上,Stefan Penner與Jafar Husain闡述了他們對于JavaScript未來發(fā)展的預期。Penner與Husain皆為ECMAScript規(guī)范流程中的關(guān)鍵性內(nèi)部人員; 而ECMAScript亦是JavaScript基礎之上的一套官方規(guī)范,并由Technical Committee 39委員會負責打理。
在被問及作為微軟旗下的JavaScript超級子集,TypeScript會對JavaScript的未來發(fā)展造成何種影響時,TC39委員會的領(lǐng)英公司代表Penner表示,他對此感到非常興奮,但該委員會卻對向JavaScript本身添加類型系統(tǒng)抱有疑慮。“這類工作很有可能引發(fā)問題,”他指出。雖然該委員會也承認這方面舉措能夠帶來的積極影響,但除了正面價值之外,潛在風險亦需要高度關(guān)注。
TC39委員會中Netflix公司代表兼高級開發(fā)者Husain亦表達了謹慎的態(tài)度,他表示“如果在類型系統(tǒng)當中犯下錯誤,那么Web就會出現(xiàn)嚴重問題。”該委員會目前正因更多復雜性元素的引入而對此抱保留意見,Husain解釋稱。
他們也在認真考慮多線程方面的提議,其核心基礎在于立足低級別原語在多個線程之間建立共享數(shù)組緩沖區(qū),Penner表示。亦有建議稱,各Web工作程序間可并行協(xié)作,從而使用于運行腳本的Web內(nèi)容在后臺線程中執(zhí)行,不過其同樣會帶來復雜性因素。Husain指出,盡管并行機制能夠利用多核心處理器實現(xiàn)性能提升,但其“是個非常復雜的問題,”與類型系統(tǒng)相似。
計劃已久的異步功能亦被提上議事日程。Husain提供了一份2018年的預估時間表,但他尚不確定這項功能何時才會真正實現(xiàn)。“大家可能會說,‘建立一套異步工作流,指定它做這、做那、再做這。’這雖然也屬于異步機制,但卻并不需要注冊回調(diào),”他解釋稱。這樣的代碼看似異步,但實際上卻仍然是在同步運行。
ES2015是一個龐大的工程,Penner表示。其升級主要集中在語法與結(jié)構(gòu)改進方面,但“其也使得一些人對JavaScript的快速演進感到疲勞”,因為一切變化都來得太快了,他指出。2015版本中的功能早在2010年就開始出現(xiàn),但該委員會并不希望簡單將這一切添加到JavaScript語言當中。因此,面向ECMAScript的功能需要經(jīng)過多級演進,其中0級代表著思路成形,而5級則代表著功能實現(xiàn)。而4級功能則意味著該功能確實擁有很好的發(fā)展與市場接納前景。
原文標題:JavaScript insiders predict its future features
原文作者:Paul Krill
【51CTO譯稿,合作站點轉(zhuǎn)載請注明原文譯者和出處為51CTO.com】