你将获得
- 系统掌握编译器核心技术;
- 手动实现解释型和编译型语言;
- 4 大案例剖析编译技术的实际应用;
- 编译技术的趋势解读。
课程介绍
编译原理是一门经过长期实践的,有着悠久历史的计算机经典课程。作为一名工程师,在实际工作中你经常会碰到需要编译技术的场景,比如:
- 编写界面模板引擎;
- 为项目编写各种各样的 DSL;
- 深度理解甚至编写 Spring、Hibernate、阿里巴巴 Druid 这样的工具。
那如何才能真正掌握编译原理呢?是搜集市面上的教材,埋头苦读吗?要知道,教材往往过于抽象和理论化,如果你没有系统化的学习体系,做不到学以致用,掌握再多的理论知识,也不会形成章法,事倍功半。因此,学习编译原理最关键在于掌握其关键知识点以及核心思维方法,即学即用。
在宫文学看来,优秀的工程师要保持长期的竞争力,需要提升自身的专业素养。而了解与学习基础技术理论并加以实践是一种行之有效的方式。
在这个课程里,他从前端与后端两个层面来讲解编译原理的核心技术点,用具体的案例带你理解抽象的原理,帮助你建立信心,克服畏难情绪,让你在这个过程中一步步趟过雷区,在工作中真正用到编译技术。
你能通过这门课,实现写出一个编译器的愿望,还能通过 SQL 解析器、报表工具、字节码生成等小练习锻炼自己的动手能力。当然了,你还可以解锁更多应用编译原理的业务场景,将知识活学活用。相信只要沉下心去学习研究,掌握编译技术指日可待!
实现一门脚本语言:通过具体实例,带你了解词法分析、语法分析、语义分析的原理,实现一门脚本语言,并用工具提升效率。
实现一门编译型语言:带你了解如何生成目标代码和对代码进行优化,并引入 LLVM 工具,最后生成可执行的文件能支持即时编译,并经过了多层优化。
面向未来的编程语言:人工智能与编译技术结合是否会出现人工智能编程?这部分是对编译技术发展趋势的一些分析,这些分析会帮助你更好地把握未来技术发展的脉搏。
课程目录
查看更多
免费试读
![](https://static001.geekbang.org/resource/image/b2/19/b20af4ba18ec81d2580e15c754911319.png)
编辑推荐
![](https://static001.geekbang.org/resource/image/86/73/866ef165163dbceb12903b2596741273.jpg)
讲师的其他课程
![](https://static001.geekbang.org/resource/image/a2/0f/a25b92d571a4b96caf668a8dc40de20f.jpg)
![](https://static001.geekbang.org/resource/image/56/e3/561653e85b453e6b4abc5a1a44287ae3.jpg)
包含这门课的学习路径
![](https://static001.geekbang.org/resource/image/0a/4e/0a03a1e02f4a4bee36989b5a8183274e.jpg?x-oss-process=image/resize,m_fill,h_74,w_74)
计算机基础知识
12门课程 96.5w人学习
看过的人还看了
![](https://static001.geekbang.org/resource/image/65/c0/65dc525140a25af39b780aaae65821c0.jpg)
![](https://static001.geekbang.org/resource/image/e2/be/e2ca3fac4ce89053602b9e7a6d9c02be.jpg)
![](https://static001.geekbang.org/resource/image/d4/74/d46d28c922505c8070eff6daa3192d74.jpg)
![](https://static001.geekbang.org/resource/image/23/d2/2343d8a9e059816c0f8c3d89b70583d2.jpg)
![](https://static001.geekbang.org/resource/image/be/19/be6dbe464ff32a17ae5d45de1cd40e19.png)
![](https://static001.geekbang.org/resource/image/61/da/61908d6e098e3b848ec97dd20ac1e9da.jpg)