网络安全|JavaScript 语言精粹

网络安全|JavaScript 语言精粹

JavaScript 语言精粹当我还是一个初出茅庐的程序员时 , 我想了解所有用到的语言每个特性 。 我写程序的时候 , 会尝试使用所有的特性 。 这似乎是一个特别值得炫耀的好方法 , 而我也的确出了不少风头 , 因为我对各种特性了如指掌 , 谁有问题都能解答 。
最终 , 我认定这些特性中有一部分特性带来的麻烦远远超过它们的价值 。 其中 , 一些特性是因为规范很不完善 , 从而导致代码可移植性的问题;一些特性会导致生成难以理解和修改的代码 , 一些特性会促使我的代码风格过于复杂且易于出错 , 还有一些特性就是设计错误 , 有时候语言的设计也会犯错 。
大多数编程语言都有精华部分和鸡肋部分 。 我发现如果只使用精华部分而避免使用鸡肋的部分 , 我可以成为一个更好的程序员 。 毕竟 , 用糟糕的部件怎么能构建出好东西呢?
标准委员会想要移除一门语言中的缺陷部分 , 这几乎是不可能的 , 因为这样做会损害所有依赖于那些鸡肋部分的糟糕的程序 。 除了在已存在的一堆缺陷上堆积更多的特性 , 他们通常无能为力 , 并且新旧特性并不总是能和谐相处 。 可能产生出更多的鸡肋部分 。
但是 , 你有权利定义你自己的子集 。 你完全可以基于精华部分去编写更好的程序 。
JavaScript 中鸡肋部分的比重超出了预料 。 在短到令人吃惊的时间里 , 它从不存在发展到全球采用 , 它从来没有在实验室被试用和打磨 。 当它还非常粗糙时 , 它就被直接集成到网景的 Navigator 网页浏览器中 。 随着 JAVA TM 的小应用程序(Java TM applets)的失败 , JavaScript 变成了默认的「网页语言」 。 作为一门编程语言 , JavaScript的流行几乎完全不受它的质量的影响 。
好在 JavaScript 有一些非常精华的部分 。 在 JavaScript 中 , 美丽的、优雅的、富有表现力的语言特性就像珍珠和一堆鱼目混杂在一起一样 。 JavaScript 最本质的部分被深深地隐藏着 , 以至于多年来对它的主流观点:JavaScript 有一些非常精华的部分 , 在 JavaScript 中 , 美丽的 , 优雅的 , 富有表现力的语言特性就像是珍珠和一堆鱼目混杂一起一样 。 JavaScript 最本质的部分被深深地隐藏着 , 以至于多年来对它的主流观点是:JavaScript 就是一个丑陋的、没用的玩具 。
我要切除那些不好的特性直到这门语言的真实本质自我显露出来 。 我相信我精雕细刻出来的优雅子集大大地优于这门语言的整体 , 它更可靠、可易读 , 更易于维护 。
只学习精华的部分最大的好处就是你可以不用考虑鸡肋部分 , 忘掉不好的模式是非常困难的 。 这是一个非常痛苦的工作 , 我们中的大多数人都会很不愿意面对 。 有时候 , 制定语言的子集是为了让学生更好的学习 。 但在这里 , 我制定的 JavaScript 子集是为了让专业人员更好的工作 。
为什么要使用 JavaScriptJavaScript 是一门重要的语言 , 因为它是 web 浏览器的语言 。 它与浏览器的结合使它成为世界上最流行的编程语言之一 。 同时 , 它也是世界上最被轻视的编程语言之一 。 浏览器的 API 和文档对象模型(DOM)相当糟糕 , 导致JavaScript 遭受不公平的指责 。 在任何语言中处理 DOM 都是一件很痛苦的事情 , 它的规范制定的还拙劣并且实现互不一致 。
JavaScript 是最被轻视的语言 , 因为它不是所谓的主流的语言 。 如果你擅长某些主流语言 , 但却在一个只支持JavaScript 的环境中编程 , 那么被迫使用 JavaScript 的确是相当令人厌烦的 。 在那种情况下 , 大多数人觉得没必要先学好 JavaScript, 但结果它惊讶的发现 ,JavaScript 跟他们使用的主流语言有很大的不同 , 而且这些不同至为关键 。