跳转至

结束语 愿你能做一个真正“懂”的程序员

我常常讲一个比喻,这个比喻是说有一座塔,塔门口有两尊石狮子。

如果有人登塔,那么进塔之前他固然是会看到这个狮子的,往上走,正好到塔后,石狮子就没有了,于是这个人说“就我一楼之所见,没有狮子”;绕到前面,一看,石狮子好好地在那儿,于是这个人又说“于我所见,有狮子”。如此行至二楼,他又会说“没有狮子”,而后又否定说“真真切切是有狮子在的”。

对于旁人来说:只听这个人讲“有,或没有”狮子,会知道他在几楼吗?又或者说,就算知道这个人在几楼,又能知道他说“有,或没有”狮子,是综览事实之所见,还是未见事实全貌时的一时所言?你其实并不知道。

我们只是要么相信了对方所在的高度,要么认可了对方所言的真假。而大多数时候,我们其实无从判断:那个人说的是不是对的,又或者他说的,究竟是在几层楼上看见的石狮子。

每一层可见的狮子,都是相同的狮子;但每一次的所见,却不相同。同样是真理,在初学者和大师的口中说出来,尽管字面上都是一样的,但是却包含着不同高度的理解。所谓大师,也不过是先行者,只是他处在的楼层,决定了他看得见下面所有的层次上的真相,也辨得清每一层所见的石狮子的样子。

所以,所谓“懂”,其实说的不是一个结果,而是一个状态:知道自己所在之位置的,才是真的懂;知道自己所见之局限的,才是真的懂;知道自己所向之湮远的,才是真的懂。

要知道自己所在的位置

我写过《程序原本》,250多页的内容,然而到了《我的架构思想》中,就只留下了一句“程序是可被组织的元素”。

只有有了这一句话的铺垫,架构思想才成立,否则所谓思想就成了空立在文字之上的东西,是空洞贫乏的呓语了。正是这些年来的经历,让我找到了自己在“程序”这个事物中的位置,从而找到了我在“架构”这个事物中的基础;前者的位置,决定了后者的高度。

而《JavaScript核心原理解析》这门课程一直在做的,就是帮你找到这样的一个铺垫,它无非是一个起点,这个起点是你构建语言体系时,所铺下的第一块基石。倘若它能帮助你以此为基点先行一步,那么这就是这门课的价值所在,也是你与众不同的价值所在。

要知道自己所见的局限

第22讲,也就是最后的一讲中,我写了9个NOTE,来指向此前在其它章节中所讲述的内容。我不知道你是否注意到了这一点,又是否理解这其中的用意。

其实每一个课程,乃至于每一篇文章,都是由更多的知识来组成的。你能读明白第22讲,是源自于前21讲的积累,并不是一蹴而就的。

然而读得明白第22讲,也并不是真的懂了。你要看得到前面的那些知识、那些细节,你还要把这些知识与细节归纳起来,形成结构,形成体系,形成一个简单的模型或概念。这些是你所见到的东西,而不再仅仅是我的讲述。你回忆得起来我的所述,只说明你的记性好;要构建得了自己的见识,才说明你开始懂了。

要有所见,但也不要固执于已见,那样就没有进步了。这个进步的过程,才是真的懂。所谓进步,不是否定别人,而是否定自己。

思考才是进步的本质

停下来,思考才是进步的本质!

这是李维先生十几年前同我说的。我把这句话写在了《大道至简》这本书的序里,也记在了我的思想中。因而我常常会停下来,不去急于得到结果,而是去看看我想要的是什么,期望的方向又是什么。我总觉得,这些往往是更重要的。

如果以“构建语言体系”作为目标,那么我很难向你描述那绝顶处的风光,我所能展示的,也仅仅是这个塔上某一层的所见而已。我仍前行不辍,仍然时有新思,我仍愿意将对于“石狮子”的每个点滴观察与你分享。风起了,起点越来越远,我回头望向石狮子的时候,它都渺远到几乎再也看不见了……但我知道,这意味着终点也就越来越近了。

“俯仰叹山低天小”,这句诗讲的便是登临山顶的快意。彼时彼处,汝可在否?!

谢谢你的收听,愿你能做一个真正“懂”的程序员。

精选留言(15)
  • Geek_7bfb5b 👍(15) 💬(1)

    老师讲的很好, 老师后续还会出其他相关的课程吗? 期待, 谢谢。🙏

    2020-01-09

  • 潇潇雨歇 👍(8) 💬(1)

    2020,再学一遍专栏。

    2020-01-06

  • 亦枫丶 👍(3) 💬(1)

    从前几节课的疑惑,到后面几节课的承上启下,再到最后的浑然一体,这门课不仅让我学到了知识,也让我学到了体系,见识到了不一样的学习角度,老师真实让我大开眼界。 老师的文字如艺术品般,印证了那句“好的东西都是美的”。 谢谢老师

    2020-01-07

  • 墨灵 👍(2) 💬(1)

    真的非常希望看到周爱民老师的后续的专栏,这个专栏是越品越有味。

    2020-04-09

  • 晓小东 👍(2) 💬(1)

    老师,你的下一课程啥时候出啊,有点等不及了

    2020-01-11

  • 行问 👍(2) 💬(1)

    我不知道你是否注意到了这一点,又是否理解这其中的用意。 不止是注意到了,也领悟到了。

    2020-01-06

  • Geek_eabef5 👍(1) 💬(1)

    这套专栏课程终于听完了,但还没有学完!仍然需要回炉再造,再过几遍! 期间,前几篇似乎听懂了,但却不明深意,越往后越找不到方向了,直到最后,经过老师的反复点拨,才恍然大悟,原来老师讲的就不是给普通程序员听的,就不是在教你如何编写程序那么简单,而是站在架构师的角度,以JavaScript语言为背景,教我们如何理解程序开发语言的核心原理,意在塑造架构师级的程序员。谢谢老师倾囊相授!课程内容还需要对照文字版本再学习。

    2024-05-05

  • Geek_885849 👍(1) 💬(1)

    有种相见恨晚的感觉,这课我听了不下5遍,每次感觉都有新的收获,市面上的书基本都是讲语法,没有这种深度的解析,期待老师后续的课程

    2020-08-06

  • 天魔狂戦 👍(1) 💬(1)

    谢谢爱民老师,课程看了一遍,懂一些,又不懂了一些,之后再读一遍应该会有更多收获~

    2020-06-20

  • .Alter 👍(1) 💬(1)

    第一遍学完啦,虽然有的章节还是一头雾水,但也是收获颇丰。感谢老师的分享,引领我们思考、建立体系!期待老师的后续课程 O(∩_∩)O

    2020-02-17

  • 水木年华 👍(1) 💬(1)

    这个专栏真不是一两遍就能弄明白的, 我会时不时的翻阅。 谢谢周老师提供这么好的课程。

    2020-01-12

  • 仿生狮子 👍(0) 💬(2)

    我就在想老师咋还不推荐绿皮书呢,都到结尾了 hhhh~

    2020-12-28

  • 偏执 ゝ 👍(5) 💬(0)

    第一遍没看懂,就看第二遍,还没看懂第三遍…总有嚼烂的时候

    2020-01-21

  • 小童 👍(2) 💬(0)

    知道自己所在之位置的,才是真的懂;知道自己所见之局限的,才是真的懂;知道自己所向之湮远的,才是真的懂。 老师写的真好 好好想想自己的位置!

    2020-01-18

  • 海绵薇薇 👍(1) 💬(0)

    一直都在的。 现在不懂的文章慢慢读,不放弃就有希望。 我相信通过专栏一定会让我更加看清JS这个石狮子。 显然初见成效。 感谢老师。

    2020-01-15