当前位置: 首页 > 科技观察

JSON之父:我们能为JavaScript做的最好的事情就是让它退休

时间:2023-03-20 21:34:30 科技观察

今年6月发布的StackOverflow2022开发者调查报告指出,JavaScript已连续第十年成为最流行的编程语言,目前超过65%的开发人员使用。但JSON的创造者DouglasCrockford在最近的一次采访中表示,JavaScript已经成为进步的障碍。“我们今天对JavaScript能做的最好的事情就是让它退役。20年前,我是少数JavaScript拥护者之一。嵌套函数和动态对象的结合非常棒。我花了十年时间试图纠正它的缺陷。我有ES5取得了一些微不足道的成功。但从那以后,人们对进一步扩充StackOverflow2022开发人员调查报告语言产生了很大的兴趣,而不是让它变得更好。因此,JavaScript和其他古老的语言一样,它已成为进步的障碍。我们应该专注于下一种语言,它应该看起来更像E而不是JavaScript。”Crockford选择用来替代JavaScript的E是一种面向对象的语言。专为安全计算而设计;该语言由他和MarkMillerde共同创建。用Crockford的话来说,它“消除了Java的许多不好的部分”。根据,BrendanEich在1995年仅用了10天就为Netscape发明了JavaScript;“五月份,我做了10天的辛苦工作,却没有睡多少觉”。根据Eich的说法,“我制作了……一种用于HTML的编程语言,供网页设计师和程序员使用,直接嵌入到网页中……这个名字完全是个谎言。它与Java无关,相反,它们是在句法上与共同的祖先C"相关。并说,这是“一项仓促的工作,我知道会有错误,会有差距,所以我把它变成了一种可塑性很强的语言。这让网络开发人员可以把它变成他们想要的样子。”但在此过程中,Crockford指出,随着功能的添加,JavaScript变得越来越复杂,这与Eich最初的概念相去甚远。此外,许多Web开发人员不编写JavaScript,而是编写可编译为JavaScript的TypeScript。TypeScript是由Microsoft的AndersHejlsberg发明的,理由是JavaScript的可延展性和缺乏类型安全性使其不适用于大型应用程序。TypeScript也在StackOverflow的调查中名列前茅。WebAssembly的出现是一种二进制格式,可以被包括C、C++、C#和Rust在内的语言作为目标,这是可能削弱JavaScript主导地位的另一项创新。一位开发人员在HackerNews的讨论中表示,“JavaScript在短短几年内流行起来。是的,生态系统复杂得可怕。即使在全职JS开发人员中,这也是一个具有讽刺意味的现象,它变得多么疯狂。我们谁都跟不上。”Crockford还指出,JavaScript将很难转换,尤其是因为它是每个浏览器都支持的DOM(文档对象模型)中使用的语言操作语言。当被问到在可预见的未来是否有东西可以替代它时,Crockford表示他一直希望可以做到,但实际上有两个困难:“第一,我们还没有语言。它需要是一种“专用语言。一种为安全分布式编程而设计的基于最小能力的actor语言。其次,我们需要所有浏览器制造商都采用它,并用设计良好的界面替换DOM。”对此,Reddit上的一些网友也发表了自己的看法。:正如Douglas之前所说,DOM是创建应用程序的糟糕抽象。它专为文本文档而设计。网络的现代用例被一种从根本上设计用于适当支持更有限的目的的技术所侵入。真正的解决方案是用能够呈现2D/3D图形的东西替换每个浏览器的DOMAPI,同时考虑到可发现性、可访问性和机器可读性。这个新引擎可以使用任何经过适当设计来处理这个用例的新语言。概念或网站将以这种方式改变。它可以是通过udp/tcp的应用程序。我相信JS是一种症状,而不是问题。问题在于浏览器概念本身的局限性,这与我们使用它的目的不相符。