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

来源: OSCHINA
2022-08-08 08:25:00

今年 6 月份发布的 Stack Overflow 2022 开发者调查报告曾指出,JavaScript 已经连续第十年成为最流行的编程语言,现有超过 65% 的开发人员在使用。但 JSON 之父 Douglas Crockford 却在最近的一次采访中表示,JavaScript 已经成为了进步的障碍。

“我们今天可以对 JavaScript 做的最好的事情就是让它退役。20 年前,我是 JavaScript 的少数拥护者之一。嵌套函数和动态对象的组合非常出色。我花了十年时间试图纠正它的缺陷。我在 ES5 上取得了小小的成功。但从那时起,人们对进一步扩充Stack Overflow 2022 开发者调查报告语言而不是使其变得更好产生了浓厚的兴趣。所以 JavaScript 和其他古早语言一样,已经成为了进步的障碍。我们应该专注于下一种语言,它应该看起来更像 E 而不是 JavaScript。

Crockford 选择取代 JavaScript 的 E 是一种面向对象的语言,为安全计算而设计;该语言由他自己、Mark Millerde 等共同创建。用 Crockford 的话说,它"消除了 Java 许多不好的部分"。

根据介绍,Brendan Eich 在 1995 年仅用时 10 天为 Netscape 发明了 JavaScript;“5 月份,我做了 10 天的艰苦工作,我没怎么睡觉”。Eich 称,“我去做了……一种用于 HTML 的编程语言,供网页设计师和程序员使用,直接嵌入到网页中……这个名字完全是个谎言。它与 Java 的关系并不大,而是在语法上与一个共同的祖先 C 有关”。并表示,这是“一项匆忙的工作,我知道会有错误,会有差距,所以我把它做成了一种非常具有可塑性的语言。这使得 Web 开发人员能够使其成为他们想要的样子。”

但一路发展至今,Crockford 指出,随着功能的增加,JavaScript 已经变得越来越复杂,与 Eich 的原始概念相去甚远。此外,许多 Web 开发人员并不编写 JavaScript,相反还编写了可编译为 JavaScript 的 TypeScript。TypeScript 由 Microsoft 的 Anders Hejlsberg 发明,理由是 JavaScript 的可塑性和缺乏类型安全性使其不适合大型应用程序。

TypeScript 在 Stack Overflow 的调查中也名列前茅。WebAssembly 则是一种二进制格式,可以被包括 C、C++、C# 和 Rust 在内的语言作为目标,它的出现是另一项可能破坏 JavaScript 主导地位的创新。

有开发者在 Hacker News 上的一次讨论中表示,“JavaScript 在短短的几年里已经爆炸性地流行起来。是的,这个生态系统复杂得可怕。即使是在全职的 JS 开发者中,这也是一个令人啼笑皆非的现象,它变得多么疯狂。我们都跟不上。”

Crockford 还指出,JavaScript 将很难转换,特别是因为它是每个浏览器都支持的用于 DOM(文档对象模型)操作的语言。当被问及在可预见的未来是否有什么可以取代它时,Crockford 表示,自己也一直希望可以做到,但事实上存在两个困难:“首先,我们还没有一种语言。它需要是专为安全分布式编程而设计的基于最小能力的参与者语言。其次,我们需要所有的浏览器制造商都采用它,同时用设计良好的界面替换 DOM。”

对此,Reddit 上也有网友发表观点称:

正如 Douglas 之前所说,DOM 是一种用于创建应用程序的可怕的抽象概念。它是为文本文档设计的。网络的现代用例被一项技术入侵,而这项技术从根本上说是为了适当地支持一个更有限的目的。

真正的解决方案是将每个浏览器的 DOM API 替换为用于渲染 2D/3D 图形的东西,并将可发现性、可访问性和机器可读性考虑在内。这个新的引擎可以使用任何为处理这种用例而适当设计的新语言。概念或网站将以这种方式改变。它可以成为通过 udp/tcp 的应用程序。

我相信 JS 是一个症状,而不是问题。浏览器概念本身的局限性才是问题所在,它与我们使用它的目的不匹配。

展开阅读全文
点击加入讨论🔥(49) 发布并加入讨论🔥
本篇精彩评论
这个不是自称,JSON格式是Douglas Crockford构想和设计的一种数据格式,1999年恰好被加入到js的规范中中并沿用至今,要说是js之父发明的也太不合理了
2022-08-08 11:35
6
举报
WebAssembly 可以用c/c++,c#等语言来代替js,听上去挺厉害的,但是任然会受到浏览器限制,不能发udp请求,不能访问文件,甚至还要受跨域限制,那我吃饱了撑的么😂
2022-08-10 18:18
3
举报
json = javascript son
2022-08-10 12:40
3
举报
JS是我所有了解到的语言当中,出生最随便的语言。
2022-08-09 15:38
3
举报
JavaScript之父Brendan Eich还没有说话,你个自称JSON之父是个什么鬼,JSON是Javascript的一部分,相当于也是javascript之父发明的
2022-08-08 10:42
3
举报
49 评论
8 收藏
分享
返回顶部
顶部