电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

JavaScript和JSON創建者對JavaScript未來的展望

瀏覽:118日期:2023-11-10 11:42:51

近期在倫敦召開的 FullStack大會 上, Brendan Eich 和 Douglas Crockford 分別做演講探討了JavaScript的未來。Eich是JavaScript的創建者;Crockford是JSON的創建者,也是《JavaScript語言精粹》(“JavaScript: The Good Parts”)一書的作者。Eich的大會演講主要聚焦于一些需迭代改進的語言特性。Crockford引導聽眾聚焦于JavaScript軟件工程的下一步發展,他稱之為一種全球分布的、安全的異步編程模式。

Crockford指出,包括JavaScript在內的所有編程語言目前都停滯于舊架構中,即單機的單地址空間中,這造成了一些不必要的麻煩。但是由于JavaScript在函數和對象上實現的一些有意義的探索,Crockford相信相比其它語言,JavaScript要更有益于推進架構的轉變。

Eich提及在創建JavaScript中的最大遺憾,就是在語言初次發布后不久就立刻對用戶有求必應,而不是考慮如何更好地解決用戶的問題。例如,12==’12’是使用相等運算符“==”做強制類型轉換,以便于處理通過HTTP將數據推送到服務器。

Crockford指出,JavaScript語言面臨著一個問題,它可能過分關注“整形手術缺陷”的修修補補,而不是清楚地指明未來的改進方向。

與十年前相比,我認為語言中好的部分更少了,但是這些部分也做得更好了。

Eich介紹了多年來JavaScript語言的改進情況,以及其中一些煥發了新活力的舊特性。例如,盡管E4X從未被JavaScript接受,但JSX,即“剔除了不好的XML部分的E4X”,卻深受React用戶的喜愛。

在本次演講中,Eich重點強調了asm和WebAssembly的價值。asm.js源自JavaScript靜態類型子集,實行以接近本機速度運行源代碼。達到如此的性能改進,是因為asm支持從即刻編譯(JIT)切換到預先編譯(AOT),直接從抽象語法樹(AST)轉換為機器代碼生成。

WebAssembly是一種加載更快的、采用更廣泛的asm.js版本。盡管WebAssembly仍然是同一JavaScript虛擬機的組成部分,但是它用單獨的進程運行,因此它可以具有比JavaScript更具表現力的語法。

Eich特別介紹了一些令他非常興奮的特性,這些特性最早可于明年出現在JavaScript中。包括:

TC39 BigInt:一種新的值類型,用于處理任意精度的整數,bigness提供對TypeArrays的支持。 動態import():默認情況下,ES模塊是靜態導入的。動態導入還支持預取(prefetching)。 Array.prototype.flat/flatMap:實現任意數組的展平,它是實現展平和smooshgate的解決方案。 更多的解析操作:用于任意對象和數組。 類中的私有方法和訪問器:在Eich看來,符號前綴“#”稍具爭議,不應再使用。 異步迭代:用于await語法。 正則表達式上的一些改進。

更多建議及細節內容,參見 TC39建議的完整列表 。

Crockford在演講中花了一些時間,質疑了聽眾的一些深層假設,并提出這些假設是如何影響大家的進步的。例如,計數是否應采用從“0”開始,還是從“1”開始?Crockford解釋了為什么他認為一切都應該從“0”開始。

Crockford指出,缺乏正確的尾調用和尾調用優化( tail call optimization )his目前為止在ES2015實現中的最令人失望之處。當前只有Safari實現了該部分規范。據Crockford介紹,尾調用是ES2015中添加的最重要特性,它有助于支持作為迭代替代功能的尾遞歸(tail recursion),以及后續傳遞(continuation passing)。

在Crockford看來,純函數(pure functions)是語言未來發展中至關重要的特性。任何會影響純函數的特性,都不應考慮在語言中采用。

目前JavaScript中也存在著不少Crockford不喜歡的特性,例如async/await特性。該特性有礙于開發人員對異步編程的理解,會使異步編程看起來就像是同步。

Crockford解釋了他對簡單性的看法。“標準越簡單,需要達成一致之處也就越少,就越有可能實現互操作性”。他以JSON為例做了解釋。JSON作k為一種語法,它并不涉及行為,易于理解和使用。JSON的全部語法甚至可在一張名片背面放下。

Crockford正致力于實現一種稱為“neo”的新語言和Transpiler(源到源編譯器)。它以一種新語言的形式實現Crockford認可的JavaScript特性,并源到源編譯為定義良好JavaScript程序。Crockford有望于近期推出《JavaScript工作機制》(“How JavaScript Works.”)一書,介紹其中的技術細節。

在演講的問答部分,Eich被問及了 二進制抽象語法樹(binary-ast)提案 的情況。該提案介于傳統JavaScript和WebAssembly之間,為所有的JavaScript提供了二進制語法樹。

Eich認為,binary-ast是一種潛在的實效(pragmatic)方法,但其優點有待通過初始實施及后續性能指標驗證。Mozilla正在致力于初步實現。其潛在的風險在于它可成為另一種安全攻擊向量。此外,它會鼓勵開發人員編寫更大型的JavaScript代碼庫,而不是依靠工具和規則來優化代碼庫。

當被問及TypeScript等類型系統時,Eich認為動態編程有其便利性。不會對編程產生妨礙的類型形態,無疑是一種好的類型系統。Eich指出,“人們習慣于使用不需付出任何代價的類型系統。”

TypeScript非常出色,它是JS的一個嚴格超集。每個JS程序也是一個TS程序。Anders Hejlsberg是首屈一指的。

演講中,Crockford還被問及了一個關于TypeScript的負面問題:“它并沒有解決我所遇到的問題”。出現這一誤解的原因,在于TypeScript的主要優點是幫助定義接口。Crockford曾認定,“事情間的接口通常是產生錯誤之處”,而TypeScript有助于防止出現此類錯誤。

在被問及React之類特性是否可以標準化時,Eich介紹了Dojo和Prototype等早期的軟件庫是如何將其概念引入到更高版本的JavaScript中的。進而指明,“我們的工作并非去標準化React等軟件庫”,而是努力實現將基本原語從軟件庫中提升到核心語言中。Eich指出,過早做標準化會導致問題,尤其是對于類型系統等尚待時日的解決方案。

在被問及對基于RxJS Observables的Observables提案的看法時,Eich指出,該規范目前停滯不前,要在JavaScript語言中構建所需特性是一個挑戰,他也不確定是否應該將Observables添加到語言中。他并未提及的是, 用于流的WHATWG規范 是Observables提案的一個超集。或許正是這兩個提案之間的競爭,阻礙了Observables提案的推進。

最后在被問及對機器學習的看法時,Eich指出,盡管深度學習非常有用,但是該技術并沒有給出任何因果關系。目前的工作,只是一些高級形式的曲線擬合算法。

會議演講視頻免費提供,但需要注冊。注冊是開放的。

Eich的演講,“下一代JavaScript”( JavaScript: The Next Generation ); Crockford的演講,“JavaScript工作方式先睹為快”( How JavaScript Works: A Preview )。

查看英文原文: Eich and Crockford on the Future of JavaScript: Insight from the Creators of JavaScript and JSON

來自:http://www.infoq.com/cn/news/2018/08/eich-crockford-js-future

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 不锈钢/气体/液体玻璃转子流量计(防腐,选型,规格)-常州天晟热工仪表有限公司【官网】 | 房在线-免费房产管理系统软件-二手房中介房屋房源管理系统软件 | 雨水收集系统厂家-雨水收集利用-模块雨水收集池-徐州博智环保科技有限公司 | 淘气堡_室内儿童乐园_户外无动力儿童游乐设备-高乐迪(北京) | 磁力加热搅拌器-多工位|大功率|数显恒温磁力搅拌器-司乐仪器官网 | 宁波普瑞思邻苯二甲酸盐检测仪,ROHS2.0检测设备,ROHS2.0测试仪厂家 | 温州富欧金属封头-不锈钢封头厂家| 上海佳武自动化科技有限公司 | 东莞注册公司-代办营业执照-东莞公司注册代理记账-极刻财税 | PSI渗透压仪,TPS酸度计,美国CHAI PCR仪,渗透压仪厂家_价格,微生物快速检测仪-华泰和合(北京)商贸有限公司 | 南京试剂|化学试剂|分析试剂|实验试剂|cas号查询-专业60年试剂销售企业 | 带式压滤机_污泥压滤机_污泥脱水机_带式过滤机_带式压滤机厂家-河南恒磊环保设备有限公司 | 多米诺-多米诺世界纪录团队-多米诺世界-多米诺团队培训-多米诺公关活动-多米诺创意广告-多米诺大型表演-多米诺专业赛事 | 罐体电伴热工程-消防管道电伴热带厂家-山东沃安电气 | 懂研帝_专业SCI论文润色机构_SCI投稿发表服务公司 | 同学聚会纪念册制作_毕业相册制作-成都顺时针宣传画册设计公司 | 色谱柱-淋洗液罐-巴罗克试剂槽-巴氏吸管-5ml样品瓶-SBS液氮冻存管-上海希言科学仪器有限公司 | 带式过滤机厂家_价格_型号规格参数-江西核威环保科技有限公司 | 智能型高压核相仪-自动开口闪点测试仪-QJ41A电雷管测试仪|上海妙定 | 济南展厅设计施工_数字化展厅策划设计施工公司_山东锐尚文化传播有限公司 | 聚合甘油__盐城市飞龙油脂有限公司 | 柴油机_柴油发电机_厂家_品牌-江苏卡得城仕发动机有限公司 | 金属波纹补偿器厂家_不锈钢膨胀节价格_非金属伸缩节定制-庆达补偿器 | 上海乾拓贸易有限公司-日本SMC电磁阀_德国FESTO电磁阀_德国FESTO气缸 | 泰州物流公司_泰州货运公司_泰州物流专线-东鑫物流公司 | 阳光模拟试验箱_高低温试验箱_高低温冲击试验箱_快速温变试验箱|东莞市赛思检测设备有限公司 | 智能风向风速仪,风速告警仪,数字温湿仪,综合气象仪(气象五要素)-上海风云气象仪器有限公司 | 东莞猎头公司_深圳猎头公司_广州猎头公司-广东万诚猎头提供企业中高端人才招聘服务 | 英超直播_英超免费在线高清直播_英超视频在线观看无插件-24直播网 | 复合肥,化肥厂,复合肥批发,化肥代理,复合肥品牌-红四方 | 5L旋转蒸发器-20L-50L旋转蒸发器-上海越众仪器设备有限公司 | 合肥地磅_合肥数控切割机_安徽地磅厂家_合肥世佳电工设备有限公司 | 信阳市建筑勘察设计研究院有限公司 | 送料机_高速冲床送料机_NC伺服滚轮送料机厂家-东莞市久谐自动化设备有限公司 | 箱式破碎机_移动方箱式破碎机/价格/厂家_【华盛铭重工】 | 直读光谱仪,光谱分析仪,手持式光谱仪,碳硫分析仪,创想仪器官网 | 房车价格_依维柯/大通/东风御风/福特全顺/江铃图片_云梯搬家车厂家-程力专用汽车股份有限公司 | Magnescale探规,Magnescale磁栅尺,Magnescale传感器,Magnescale测厚仪,Mitutoyo光栅尺,笔式位移传感器-苏州连达精密量仪有限公司 | 焊锡丝|焊锡条|无铅锡条|无铅锡丝|无铅焊锡线|低温锡膏-深圳市川崎锡业科技有限公司 | 洁净实验室工程-成都手术室净化-无尘车间装修-四川华锐净化公司-洁净室专业厂家 | 五轴加工中心_数控加工中心_铝型材加工中心-罗威斯 |