跳转至

Stanford CS143: Compilers

课程简介

  • 来源:Stanford University
  • 先修要求:CS106B(数据结构)、CS107(计算机组成)同等水平
  • 编程语言:C++
  • 课程难度:🌟🌟🌟🌟
  • 课程网站:web.stanford.edu/class/cs143/

Stanford CS143 是 Stanford 的编译原理课程,也是全球最好的编译器课程之一。课程要求你用 C++ 实现一个完整的编译器,目标语言是一个名为 COOL(Classroom Object-Oriented Language)的教学语言。

课程覆盖编译器的完整流程:词法分析、语法分析、语义分析、中间代码生成、代码优化、目标代码生成。

课程资源

课程特点

  • 完整的编译器实现:从零开始实现一个完整的编译器
  • COOL 语言:专门设计的教学语言,语法简洁但覆盖所有核心概念
  • 4 个编程项目:每个项目实现编译器的一个阶段,最终组合成完整编译器

自学建议

先学 C++ 基础。 课程用 C++ 实现编译器,需要熟悉 C++ 的面向对象特性。

按顺序完成 4 个项目。 每个项目都依赖前一个项目的输出,不能跳着做。

阅读课程提供的阅读材料。 课程网站提供了详细的阅读材料,是理解理论的关键。

备注

CS143 是编译器入门的最佳课程之一。完成这门课后,你将能够理解任何编程语言的编译器是如何工作的。