课程目录

开篇词 (1讲)

  1. 开篇词|从0开始,打造一个属于自己的Python引擎

导学|直播加餐:三小时掌握C++ (3讲)

  1. 导学|三小时掌握C++(上)
  2. 导学|三小时掌握C++(下)
  3. 导学|三小时掌握C++(中)

编程语言的发展历程与基本架构 (3讲)

  1. 01|源起:动态编程语言如何引爆虚拟机的革命?
  2. 02|编程语言全景图(上):编译器是如何把源代码翻译成字节码的?
  3. 03|编程语言全景图(下):虚拟机是如何执行字节码的?

控制流:最基本的编程语言要素 (4讲)

  1. 04|字节码文件:编译器与虚拟机的标准合约
  2. 05|分支语句:控制流让程序具备基本的运算能力
  3. 06|循环语句:控制流让虚拟机执行复杂的运算
  4. 07|类型标识:虚拟机支持对象自检的基础设施

函数:虚拟机支持函数成为第一类公民 (5讲)

  1. 08|函数和栈帧:深入区分函数的静态描述和动态记录
  2. 09|函数对象 :函数是依赖什么成为第一类公民的?
  3. 10|变量的作用域:哪些复杂规则是因函数而产生的?
  4. 11|函数的参数:赋予函数意义的关键特性
  5. 12|Native方法:打通底层软件与高层应用的关键

对象系统:面向对象编程的核心设施 (9讲)

  1. 13|列表(上):Python语言的核心数据结构
  2. 14|列表(下):列表所支持的基本操作
  3. 15|字典(上):关联式数据结构的基本表示
  4. 16|字典(下):位置参数和闭包依赖字典实现
  5. 17|函数闭包:函数式编程的重要支撑
  6. 18|类型对象:虚拟机如何识别对象的类型?
  7. 19|自定义类型:面向对象编程的基础设施
  8. 20|创建对象:支持对象创建和访问属性以完成基本对象系统
  9. 21|继承和多态:完善面向对象编程的两大特征

垃圾回收:解放心智,构建大型软件 (3讲)

  1. 22|自动内存管理:把程序员从内存缺陷的海洋里解放出来
  2. 23|复制算法:最简单高效的垃圾回收算法
  3. 24|标记和回收:完成对象的搬移以整理内存

现代语言:提升开发效率的若干特性 (5讲)

  1. 25|模块和库:构筑现代软件系统的基础材料
  2. 26|动态扩展库:Python大流行的最根本保障
  3. 27|异常(上):优雅高效地处理运行时发生的错误
  4. 28|异常(下):处理 finally 子句和 traceback 对象
  5. 29|Generator:一种无栈协程的简易实现

结束语 (2讲)

  1. 结束语|结束,只是新的开始
  2. 结课测试|一起挑战吧!