语言特性

王垠在如何掌握所有的程序语言这篇文章写的很好,我再次受到启发,这是李笑来说提倡的「概念」在编程领域的应用。

王垠不会纠结于学习那种语言,而是所有的,他掌握了所有的语言。

学习语言的重点在于掌握语言特性,举一些语言特性的例子:

变量定义
算术运算
for 循环语句,while 循环语句
函数定义,函数调用
递归
静态类型系统
类型推导
lambda 函数
面向对象
垃圾回收
指针算术
goto 语句

这里我会将他所说的语言特性理解成编程语言中的最基本的元素,也就是概念,掌握这些概念之后,才具备灵活运用的基础。

有一个比喻非常好:

所有的程序语言,不过是像 Dell,联想一样的“组装机”。语言特性的设计者,才是像 Intel,AMD,ARM,Qualcomm 那样核心技术的创造者。

每种语言被组装之后,长得样子都不一样,但是他们内部遵守的特性其实是差不多的,说包含的核心概念也是相差无几。

这让我想起了最近看的几本书:《精进》、《刻意练习》、《深度工作》

这些书都写的很好,不过现在我意识到他们都是“组装机”,他们长着不同的外表,每一本书就相当于是用不同的编程语言写的。

为什么我们都可以理解呢(当然也有很多不容易理解的书)?因为我们大部分人都认识每本书中的每一个字,大部分时候,这些字连成一句话,也能够理解。

我们能够读懂每一本书的根本原因在于我们能够理解作者书中的每一个概念,每一句话,能够理解书中的基本元素,而这些基本元素没有多少,大部分都是日常交流用到的东西。

有的书写的浅显易懂就是因为大部分内容都运用了大家都掌握的概念,有些书写的艰难晦涩就是因为里面有很多陌生的概念。

很多不同的书,是在用不同的语言,讲同一个道理

我这里说的不同的语言应该这样理解:
写作就相当于编程,每个人用的语言都不一样,或者你可以认为一种文风代表一种语言。作者通过对概念的精心编排,创造了一门独特的、属于他自己的语言,比如《精进》、《刻意练习》、《深度工作》等

这些书都尝试解答这样一个问题:如何有所成就?

最后给到的答案也差不多:
把注意力持续的投入到有价值的事情上

有价值的事情在不同的书中采用了不同的说法,比如半衰期长,比如耗费全部心智

这和李笑来的所表达的含义一致,把注意力放在成长上,防止注意力被浮浅的事情所吸引。

你可能感兴趣的:(语言特性)