编程范式,是程序语言的“设计本质”,也是“编程方法论”。学习这些范式,可以让你了解诸多不同类型的编程语言究竟各自是要解决个什么问题,此外了解这个问题可以让你从编程的表面直接看到本质,这对于指导我们提高编程技能,写出更优秀的代码,极具现实意义 。
陈皓,网名“左耳朵耗子”,资深技术专家,CoolShell.cn(酷壳)博客与极客时间专栏作者。在这个专栏中,他将从 5 类(过程式编程、泛型编程、函数式编程、面向对象编程、逻辑编程范式)主要的编程范式入手,辅以各种典型编程语言及应用代码,带你探寻编程的本质。
本专栏共 5 个部分,合计 11 讲。
- 第一部分:泛型编程,第 1 讲~第 3 讲,讨论了从 C 到 C++ 的泛型编程方法,并系统总结了编程语言中的类型系统和泛型编程的本质。
- 第二部分:函数式编程,第 4 讲和第 5 讲,讲述了函数式编程用到的技术,以及思维方式,并通过 Python 和 Go 修饰器的例子,展示了函数式编程下的代码扩展能力,以及函数的相互和随意拼装所带来的好处。
- 第三部分:面向对象编程,第 6 讲~第 8 讲,讲述与传统编程思想的相反之处,面向对象设计中的每一个对象都应该能够接受数据、处理数据并将数据传达给其它对象;列举了面向对象编程的优缺点,基于原型的编程范式,以及 Go 语言的委托模式。
- 第四部分:编程的本质,第 9 讲,探讨了编程的本质:逻辑部分才是真正有意义的,控制部分只能影响逻辑部分的效率。
- 第五部分:逻辑编程范式,第 10 讲和第 11 讲,结合 Prolog 语言介绍了逻辑编程范式,最后对程序世界里的编程范式进行了总结,对比了它们之间的不同。
学习本专栏,你不仅能了解到编程语言的整个发展史,还能对各种编程语言及其语言特性有更为深入的认识,并在此基础上提高编程技能,培养编写更简洁、更通用、更具可重用性代码和模块的能力。
本专栏节选自陈皓《左耳听风》专栏,专栏涵盖程序员练级攻略、全栈程序员的体系化学习路线与进阶底图。已经有超过 36000 人加入学习,可以说是程序员必备宝典。
我们还为你准备了 50 元学习奖学金,将于你学完《编程范式游记》专栏后,第二天 18 点前发送至你的极客时间账户,有效期为 7 天,记得查收!
戳下方图片,3 人组队,一起 0 元解锁专栏: