可按Ctrl+D收藏众星平台
帮助中心

众星平台

热门搜索: 挖矿源码    小程序开发    直播带货    星创课堂    商标转让   

JSON 之父:“让 JavaScript 退休,是对它最好的事情”

  • 时间:2022-08-10 13:40 编辑:胡歌 来源: 阅读:106
  • 扫一扫,手机访问
摘要:编程语言界,纷争不断,争论不休。1 “让 JavaScript 退休!”近日,美国程序员、企业家、数据交换格式 JSON 之父,同时也是众多 JavaScript 语言开发工具的创造者 Douglas Crockford 在接受软件开发商 Evrone 采访时,发表的一个观点引发

编程语言界,纷争不断,争论不休。

1 “让 JavaScript 退休!”

近日,美国程序员、企业家、数据交换格式 JSON 之父,同时也是众多 JavaScript 语言开发工具的创造者 Douglas Crockford 在接受软件开发商 Evrone 采访时,发表的一个观点引发轩然大波。

Douglas Crockford,图源:https://www.crockford.com/about.html

其表示,「我们今天对 JavaScript 能做最好的事就就是让它退役。二十多年前,我是为数不多的 JavaScript 倡导者之一。它将嵌套函数和动态对象拼凑在一起的做法非常出色。随后,我花了十年时间试图纠正它的缺陷。我在 ES5 上取得了小小的成功。但从那时起,人们一直对进一步扩展语言而不是让它变得更好有着强烈的兴趣。」

因此,在他看来,如今的 JavaScript 与其他“恐龙”语言一样,已经成为进步的障碍。大家应该专注于下一种语言如 E 语言,而并非要抱着 JavaScript 不放手。

2 拥有 1750 万开发者的 JavaScript

不过,据开发者调查分析公司 SlashData 数据显示,全球有近 1750 万的开发者在使用 JavaScript。JavaScript 当前不仅被世界上的绝大多数网站所使用,而且被世界主流浏览器如 Chrome、IE、Firefox、Safari、Opera 支持。

同时,据多项调查报告显示,JavaScript 已霸榜多年。其中,根据今年早些时候的 Stack Overflow 发布的《2022 Developer Survey》报告显示,2022 年是 JavaScript 连续第十年成为最常用的编程语言。超过 65% 的开发人员使用 JavaScript,远远领先于排名第二占比 48% 的 Python(忽略 HTML、CSS 和 SQL,它们不是通用语言)。对于初学习编码的人员而言,他们最常用的语言是 HTML / CSS、JavaScript 和 Python,而专业开发者则是 JavaScript、HTML/CSS 和 SQL。

作为一门主流语言,想要让大家不用 JavaScript 来开发似乎非常难。

3 冲进一线语言的背后蕴藏 27 年的积累

回看 JavaScript 能有今天的成就,其成长历程也可以用「传奇」二字来形容。

如果在 1995 年诞生之初,有人说 JavaScript 会成为 20 年后世界上最流行的语言之一,有开发者 Matthew MacDonald 评价道,“你要么有通灵术,要么是个疯子。”

因为当初 JavaScript 的原型开发只花费了 10 天的时间。此前,CSDN 也在《仅用 10 天设计的 JavaScript,凭什么成为程序员最受欢迎的编程语言?》一文中,分享过 JavaScript 的成长历程:

在 1995 年,网络浏览器先驱网景(Netscape)公司意识到,他们需要为人们提供一个更简单的选择。那时候他们处境艰难,与微软的市场大战正在紧锣密鼓,即将与 Sun 微系统公司达成重大战略合作伙伴关系,时间紧迫。他们雇佣了布兰登·艾奇(Brendan Eich),要求他尽可能快地创造一种新的语言。他在 10 天内就完成了 JavaScript 的第一个版本,正好赶上了这个漂亮的浏览器——Netscape 2。

Netscape 2: JavaScript的首次登场

不过,Brendan Eich 真正想做的是构建一个像 Scheme 这样的学术编程语言的浏览器托管版本(网页脚本语言),但网景公司的愿景与此不同。他们想要一种看上去与 Java 足够相似,即使它的行为和 Java 不一样的语言。两个类似的名字:Java 和 JavaScript,导致了多年的混乱。

彼时,Brendan Eich 说道,“我是根据公司高层指令开发这门语言,让它看上去和 Java 足够相似,但又不要让它太大。它只是有那么点儿像这种愚蠢语言的弟弟,对吧? ”

如果说 JavaScript 之父 Brendan Eich 将这门语言取名为 JavaScript 是“碰瓷” Java,那么在此后的 26 年间,JavaScript 的成功发展,外媒 DevClass 将其归因主要有两重要素。

一是,Brendan Eich 的先见之明。JavaScript 设计得更加容易学习与上手,以及对许多语言中会出现错误的代码的容忍度,比如将字符串和数字进行比较并得到一个常识性的结果。虽然后来 Eich 本人将这个功能称之为“一个很大的遗憾,因为其打破了一个重要的数据属性”,但不影响 JavaScript 能够被用户接受。

二是,Google 决心让基于浏览器的应用程序与桌面应用程序竞争,并开发了 JavaScript 运行时 V8 引擎(2008 年)。同时,Google 还与 Mozilla 的 SpiderMonkey(世界上第一款 JavaScript 引擎)和苹果的 JavaScriptCore(Safari 浏览器的 JavaScript 引擎)一起为 JavaScript 开发了惊人的 JIT。这也极大地促进了 JavaScript 的广泛应用。

4 霸榜多年的 JavaScript 为何惨遭嫌弃?

就是这样一款较为实用且主流的编程语言,为何一步一步惨遭嫌弃?为此,Douglas Crockford 在采访中提到,随着能力的提高,JavaScript 变得越来越复杂,这与 Eich 的原始概念相差甚远。

这也如同今天的 jQuery 技术一样,“在开发 jQuery 时,文档对象模型是一团糟。有必要有一个层来纠正它的错误、局限性和 Bug,并提高可移植性。但从那时起,更好的标准被开发出来,浏览器制造商也终于被说服遵守这些标准,IE 浏览器也终于退役了。与此同时,jQuery 变得臃肿。”

简单来看,复杂性、功能不断膨胀,让不少开发者不得不弃用 JavaScript。“JavaScript 在短短几年内爆发式发展,是的,生态系统复杂得可怕。即使对全职 JS 开发者而言,这也是一种困扰,JavaScript 已经变得非常疯狂,我们都无法跟上它的脚步”,一位开发者在 HN 评论区说道。

也有人表示,“试图让一个普通的新开发者在现代 JS 环境中跟上开发速度是非常困难的。JavaScript 里面覆盖的东西太多了,就像一个大泥球。不过,作为一个大泥球,却又真的很难被取代掉。”

5 JavaScript 真的能被取而代之吗?

Douglas Crockford 在文章伊始提到取代 JavaScript 的 E(http://erights.org/),是他与 Mark Miller 共同开发而成,为安全计算而设计。这并非是一门新的编程语言,而是早于 1997 年就被开发出来,后来,Mark Miller 对 E 进行了重新设计,消除了 Java 许多不良的部分,主要目标的支持安全的分布式系统的开发。

除了 E 之外,不少网友也提出了几种可能在一定程度上替代 JavaScript 的语言或技术:

TypeScript。TypeScript 是由微软的 Anders Hejlsberg 发明的,它是 JavaScript 的严格语法超集,提供了可选的静态类型检查,可用于开发大型应用。“作为一名 Typescript 开发人员,我早就放弃了对 JavaScript 的使用......除非必须,否则我不会碰它(在这种情况下,我可能会转换它)”,一名开发者分享道。

WebAssembly。作为一种二进制格式,可以被包括 C、C++、C# 和 Rust 在内的语言作为目标,它的出现是另一个可能破坏 JavaScript 主导地位的创新。

“我希望用 Ruby 来取代 JavaScript,将其嵌入到浏览器中”;

Dart 可能是目前“替换” JavaScript 的最佳竞争者。Dart 的类型和空安全,内置对 JIT 和 AOT 编译的支持,出色的开发工具以及快速增长的生态系统,使其成为了一种可能性。

不过,虽然想让 JavaScript 早点退休,Douglas Crockford 指出,还是有些不太现实,“目前主要有两个困难。首先,我们还没有下一种语言,这种语言是一种基于最小能力的参与者语言,专门为安全的分布式编程而设计,不应再考虑其他任何事情。其次,我们需要所有的浏览器制造商都采用它,同时用精心设计的界面取代 DOM。祝你好运。”

参考链接:

https://evrone.com/douglas-crockford-interview

https://devclass.com/2022/08/04/retire_javascript_says-json-creator-douglas-crockford/

https://news.ycombinator.com/item?id=32367589

本文来自微信公众号“CSDN”(ID:CSDNnews),整理:屠敏,转载请联系原作者。


  • 全部评论(0)
最新发布的资讯信息
【百科知识|微信开发】微信悄悄更新了这几大功能(2022-09-30 11:33)
【计算机/互联网|】字节跳动又做了一个独立站,这次能抢到SHEIN蛋糕吗?(2022-09-30 11:32)
【百科知识|】资深私域运营必知的100个专业名词(2022-09-29 14:09)
【计算机/互联网|】这里有一份“十一”宅家指南,请查收(2022-09-29 14:02)
【计算机/互联网|】开源要正式写进法律了?(2022-09-28 09:32)
【金融/投资|】加速下跌,英镑还有多久跌破美元平价?(2022-09-28 09:31)
【计算机/互联网|】美团转舵?(2022-09-27 10:45)
【计算机/互联网|】那些快乐的人从来不会做这4件事(2022-09-26 14:07)
【金融/投资|】初创品牌拿到千万融资,今年这个赛道火了(2022-09-26 14:06)
【计算机/互联网|】阿里、美团、京东、拼多多:都认命了?还得搏“大运”(2022-09-24 11:30)

统一客服热线

023-67897994

邮箱

1807586565@qq.com

客服QQ

1807586565

客服微信

18996274797
友情链接
联系客服
网站客服 联系客服
023-67897994
手机版

扫一扫进手机版
返回顶部