JavaScript 和 HTML 、CSS 同属前端工程师必须掌握的三大技能,重要性不言而喻。这几年,随着行业的发展,JavaScript 更是变得无所不能,毫不夸张地说,现在我们看到的基本所有的主流互联网应用,它的前端都有大量的 JavaScript 代码。
但是,入行 20 多年,我发现很多人对 JavaScript 的印象都只是“简单易学”,对其掌握也仅仅停留在“会用就好”,以至于不求甚解、迷失于 JavaScript 。究其原因,他们从来都只是“写代码”,而没有去真正去了解、去探索“什么是语言”。
其实,JavaScript 作为一门语言,虽然易上手,但却有着诸多复杂微妙的机制,想要真正掌握绝非易事。而这些机制,正是语言的精髓。只有当你深入理解语言内部的实现原理,才能做到无论出现什么新技术、新框架,都能轻松应对。
这也是为什么我一直认为:每个工程师都应该构建一个语言知识结构。因为,一旦你建立了你的体系性,你对代码的洞察力绝对会随之而提升,让你可以在纷繁的代码中快速找到性能、组织、逻辑等方面的关键所在,并在语言层面给出合理的解释。这就相当于你创建了游戏规则,拥有了“编程游戏”中的上帝视角。你将会有一种切实的、万物如一的操控感。
在过去的二十年中,我一直不断探索 JavaScript 语言背后的机制:一面研究它的语言精髓,一面做编程实践。在我和极客时间合作的《JavaScript 核心原理解析》专栏中,我希望把我找到的答案分享给你。我将以“语言”为核心,和你一起讨论我对 JavaScript 各种语言特性的理解。
你会发现,这个专栏和其他不同,每一讲的标题都是一行代码,并且,这些代码在表达多种语言特性的同时,都指向一个核心的内容讲述方向。
我希望通过这个专栏,你能找到自己对语言的认识,构建一个语言知识结构。因为我始终认为,“构造认识”对你是极致重要的事情,并且越早越好。
也欢迎你在专栏中跟我一起探讨 JavaScript,我会知无不言言无不尽。
我是谁?
我是周爱民,目前是南潮科技(Ruff)首席架构师。和你一样,我是个喜欢 JavaScript 的人。很多人认识我,可能都是通过我写的《JavaScript 语言精髓与编程实践》一书。
从业二十多年,我深入研究过 JavaScript、Delphi、Erlang,也专注于软件开发与架构、项目管理,曾担任盛大网络平台架构师、支付宝业务架构师和豌豆荚首席架构师。
我也特别热爱写作与分享,出过《Delphi 源代码分析》、《大道至简:软件工程实践者的思想》、《大道至易:实践者的思想》、《程序原本》以及《我的架构思想:基本模型、理论与原则》等书。
你将获得什么?
专栏分为以下 4 个模块。
1.从零开始
第一部分我会主要讲述构成 JavaScript 语言的基础——JavaScript 语言的静态结构,主要包括词法环境、块级作用域、语句、声明、字面量、变量环境、模块(名字空间)等等。
2.从表达式到执行引擎
第二部分我会主要讲述 JavaScript 的执行过程,包括执行栈、执行队列、执行上下文、函数(函数对象/闭包)作为执行结构如何参与运算等等,还将讲述表达式(运算符+操作数)与优先级这个体系,说明表达式运算与语句运算间的不同。
3.从原型到类
第三部分我会讲述 JavaScript 面向对象编程体系中最核心的一些设计,包括类继承、原型继承、属性表的使用、内部方法等等,并对索引数组和关联数组在 JavaScript 中的应用与整合做深度的分析。
4.从粗通到精通的进阶之路
最后,我会讲述 JavaScript 作为动态语言的主要特性,包括动态的类型、动态的执行过程和动态的环境上下文等等。
专栏目录👇
限时订阅福利
1.早鸟拼团价 ¥55,原价 ¥68,戳我订阅
2.分享海报,邀请好友订阅即可获得 ¥18 返现,多邀多得,上不封顶。
评论