JavaScript 语言精粹

JavaScript 语言精粹

当我还是一个初出茅庐的程序员时,我想了解所有用到的语言每个特性。我写程序的时候,会尝试使用所有的特性。这似乎是一个特别值得炫耀的好方法,而我也的确出了不少风头,因为我对各种特性了如指掌,谁有问题都能解答。

最终,我认定这些特性中有一部分特性带来的麻烦远远超过它们的价值。其中,一些特性是因为规范很不完善,从而导致代码可移植性的问题;一些特性会导致生成难以理解和修改的代码,一些特性会促使我的代码风格过于复杂且易于出错,还有一些特性就是设计错误,有时候语言的设计也会犯错。

大多数编程语言都有精华部分和鸡肋部分。我发现如果只使用精华部分而避免使用鸡肋的部分,我可以成为一个更好的程序员。毕竟,用糟糕的部件怎么能构建出好东西呢?

标准委员会想要移除一门语言中的缺陷部分,这几乎是不可能的,因为这样做会损害所有依赖于那些鸡肋部分的糟糕的程序。除了在已存在的一堆缺陷上堆积更多的特性,他们通常无能为力,并且新旧特性并不总是能和谐相处。可能产生出更多的鸡肋部分。

但是,你有权利定义你自己的子集。你完全可以基于精华部分去编写更好的程序。

JavaScript 中鸡肋部分的比重超出了预料。在短到令人吃惊的时间里,它从不存在发展到全球采用,它从来没有在实验室被试用和打磨。当它还非常粗糙时,它就被直接集成到网景的 Navigator 网页浏览器中。随着 JAVA TM 的小应用程序(Java TM applets)的失败,JavaScript 变成了默认的「网页语言」。作为一门编程语言,JavaScript的流行几乎完全不受它的质量的影响。

好在 JavaScript 有一些非常精华的部分。在 JavaScript 中,美丽的、优雅的、富有表现力的语言特性就像珍珠和一堆鱼目混杂在一起一样。JavaScript 最本质的部分被深深地隐藏着,以至于多年来对它的主流观点:JavaScript 有一些非常精华的部分,在 JavaScript 中,美丽的,优雅的,富有表现力的语言特性就像是珍珠和一堆鱼目混杂一起一样。 JavaScript 最本质的部分被深深地隐藏着,以至于多年来对它的主流观点是: JavaScript 就是一个丑陋的、没用的玩具。

我要切除那些不好的特性直到这门语言的真实本质自我显露出来。我相信我精雕细刻出来的优雅子集大大地优于这门语言的整体,它更可靠、可易读,更易于维护。

只学习精华的部分最大的好处就是你可以不用考虑鸡肋部分,忘掉不好的模式是非常困难的。这是一个非常痛苦的工作,我们中的大多数人都会很不愿意面对。有时候,制定语言的子集是为了让学生更好的学习。但在这里,我制定的 JavaScript 子集是为了让专业人员更好的工作。

为什么要使用 JavaScript

JavaScript 是一门重要的语言,因为它是 web 浏览器的语言。它与浏览器的结合使它成为世界上最流行的编程语言之一。同时,它也是世界上最被轻视的编程语言之一。浏览器的 API 和文档对象模型(DOM)相当糟糕,导致JavaScript 遭受不公平的指责。在任何语言中处理 DOM 都是一件很痛苦的事情,它的规范制定的还拙劣并且实现互不一致。

JavaScript 是最被轻视的语言,因为它不是所谓的主流的语言。如果你擅长某些主流语言,但却在一个只支持JavaScript 的环境中编程,那么被迫使用 JavaScript 的确是相当令人厌烦的。在那种情况下,大多数人觉得没必要先学好 JavaScript ,但结果它惊讶的发现, JavaScript 跟他们使用的主流语言有很大的不同,而且这些不同至为关键。

JavaScript 令人惊异的是,在对这门语言没有太多的了解,甚至对编程都没有太多的了解的时候,你也可以用它来完成工作。它是一门拥有极强表达能力的语言。当你知道要开始做什么时,它甚至能变现得更好。编程是很困难的事情,绝不应该在对此一无所知时便开始你的工作。

你可能感兴趣的:(javascript前端)