【小谈】编程语言的学习
编程语言既然也叫语言,那么其本质作用就是作为思维的载体,用以交流。
编程语言承载的思维就是数据结构和算法,而其交流的对象有二:计算机和人类。
编程语言是人类与计算机之间的桥梁,或者说是人类语言与机器语言之间的桥梁,同时也像数学语言一样,方便人与人之间的沟通。
学习任何编程语言主要的步骤都大同小异:
- 这个编程语言如何处理各种各样的数据结构:可能它只提供了各种数据结构的存储结构,也有可能它实现了一些逻辑结构方便我们使用;运算符也包括在这里,因为运算其实就是各种数据结构的操作
- 这个编程语言如何表示各种控制流程,也就是如何把算法表达出来
- 这个编程语言预先实现了哪些功能:这些功能其实就是已经封装好的算法,这些功能和编程语言是一体的,一般被叫做“内建函数”或“内置函数”
- 这个编程语言的官方实现了哪些功能:也就是所谓的“官方库”、“标准库”,这些“库”封装了一群常用的功能,以可选的外置文件形式出现,这些文件一般在安装编程语言时会自带,但是想要使用的时候必须“导入”(也有叫做“include”等)
- 如何制作自己的“库”:这也就是所谓的“封装”,编程者入门的标志是把常用的语句封装成函数,而脱离入门的标志就是把常用的功能封装成“库”或者“包”,以使其能够在不同的项目中重复使用。
- 如何使用别人的“库”:这其实已经有点脱离编程语言本身了,使用别人封装好的功能,在实际开发中能够大大减轻自己的负担,但是如何找到自己需要“库”,看懂别人写的文档也是让人头痛的事情
- 使用编程框架:所谓的框架,其实就是别人封装好的一群“库”、一堆工具和一整套规则,使用框架,在特定的开发场景下,能够极大减轻开发难度,使我们更专注于我们需要开发的核心功能,学会看文档是使用编程框架的最核心能力。使用框架,我们需要关注的是这个框架是针对那种场景的、与同类型的框架相比有哪些优点以及如何使用框架
- 实际的项目:编程语言永远只是工具,而我们需要用它来完成什么目标才是最重要的事情,学习一个编程语言其实并不难,最难的是如何使用这个编程语言来解决实际的问题和需求,这也是为什么有很多人说自己“入门了XXX语言”,却少有人敢说自己“精通了XXX语言”,因为你要精通的并不是编程语言本身,而是解决问题的能力