Antlr 实战: 动手做一个语言解释器
体系课

Antlr 实战: 动手做一个语言解释器

  • C/C++

专业大牛自制编程语言综合实战

¥1000
本课程包括
  • 24小时11分钟的视频随时观看
  • 可在APP随时观看
  • 结业证书
课程合作品牌
海贼宝藏
你将收获
  • 深入了解编程语言的设计原理和实现方法,提升编程能力和代码质量
  • 培养创新能力,掌握自己设计和实现一门编程语言的能力
  • 学习如何使用C++等高级编程语言来实现一个解析器和执行引擎,提升编程技能
  • 提升代码设计能力,有效应对各类场景的工作内容

数千家企业正在使用三节课企业版学习

无限制学习5000+门课程,200+精选学习专题

免费申请体验>
课程介绍

语法设计:确定语言的语法结构,如变量声明、表达式、控制结构等。这部分可以参考已有的编程语言的语法设计。

语义设计:定义语言中各个结构的含义和行为,如运算符的优先级、变量作用域、类型转换规则等。这部分需要考虑语言的目标和使用场景。

运行时环境:定义语言的运行时环境,包括内存管理、异常处理、多线程支持等。这部分需要了解操作系统的相关知识。

适合人群
  • 有编程基础和经验的学生和程序员,包括熟悉C++语言的人
  • 对编程语言设计和编译器原理有浓厚兴趣的开发者或学生
  • 希望深入理解计算机底层工作原理的技术人员
  • 有意愿设计和开发自己的编程语言或编译器的爱好者和工程师
  • 希望在软件开发领域有更广泛的应用和技能的学生和程序员
讲师介绍
软通教育旗下高端IT就业品牌,专注于提升IT职业技能课程研发与交付、高效学习平台研发与运营
擅长领域:
  • 深度学习
  • 机器学习
“海贼宝藏”是软通教育旗下高端IT就业品牌,专注于提升IT职业技能课程研发与交付、高效学习平台研发与运营 。专用线上OJ刷题平台可以不断强化编码能力,让参与“软通·海贼班”的同学终将成为就业神话!
ACM亚洲区金牌 高级算法研发工程师 C++学科扛把子
擅长领域:
  • 自然语言处理(NLP)
课程大纲
共0节 时长0分钟 全部收起
第1章 初识 Antlr:再看表达式求值程序
共5节 | 1小时22分钟
  • 1-1 初识Antlr
    6分钟
  • 1-2 ANTLR的下载和安装演示
    12分钟
  • 1-3 抽象语法树讲解
    16分钟
  • 1-4 EBNF 文法文件的作用
    23分钟
  • 1-5 基于 Antlr 的表达式求值程序
    25分钟
第2章 添砖加瓦:从0到1认识开发流程
共12节 | 4小时15分钟
  • 2-1 增加除法功能支持
    12分钟
  • 2-2 作用域语法性质设计
    6分钟
  • 2-3 文法文件:作用域文法支持
    35分钟
  • 2-4 解释器:作用域功能支持
    33分钟
  • 2-5 if 语法文法设计
    21分钟
  • 2-6 条件表达式文法设计
    11分钟
  • 2-7 工程目录结构认识
    13分钟
  • 2-8 工程源码解读
    38分钟
  • 2-9 强类型与弱类型
    6分钟
  • 2-10 作用域中 map 映射的思考
    9分钟
  • 2-11 IValue 接口代码演示
    36分钟
  • 2-12 修改加法操作的代码演示
    34分钟
第3章 迈出第一步:封装与实现解释器程序
共10节 | 6小时33分钟
  • 3-1 Antlr 树型结构封装
    42分钟
  • 3-2 封装作用域类
    18分钟
  • 3-3 IValue 通用类型接口设计
    33分钟
  • 3-4 解释器整体执行架构搭建
    1小时8分钟
  • 3-5 master 与 factory 的完善
    31分钟
  • 3-6 添加责任链模式
    27分钟
  • 3-7 解决编译错误
    55分钟
  • 3-8 设计IValue类型操作入口
    26分钟
  • 3-9 完善 IntValue 相关操作
    40分钟
  • 3-10 补全 Float 与 String 类型操作
    53分钟
第4章 走好第二步:分支与循环功能
共7节 | 3小时7分钟
  • 4-1 字符串转移功能完善
    20分钟
  • 4-2 条件表达式功能逻辑搭建
    27分钟
  • 4-3 IValue 类型中的条件运算符重载
    41分钟
  • 4-4 实现分支与循环语句
    24分钟
  • 4-5 for 语句的 BUG 修复
    17分钟
  • 4-6 修复 IValue 的内存泄露
    43分钟
  • 4-7 修复 Parameter 的内存泄露
    14分钟
第5章 第三步:实现函数功能
共22节 | 8小时54分钟
  • 5-1 关于 break 语句的思考
    7分钟
  • 5-2 状态机的基础介绍
    17分钟
  • 5-3 分支与循环的状态机结构
    20分钟
  • 5-4 DFA 相关类设计
    39分钟
  • 5-5 ASTree 由引用改地址
    18分钟
  • 5-6 添加 ConditionDFANode 类
    5分钟
  • 5-7 分支与循环的状态机构建
    52分钟
  • 5-8 break 的状态跳转
    13分钟
  • 5-9 break 功能初步实现
    55分钟
  • 5-10 break 功能 bug 修复
    28分钟
  • 5-11 continue 功能设计与实现
    37分钟
  • 5-12 函数的抽象语法树设计
    7分钟
  • 5-13 函数的文法文件编写
    8分钟
  • 5-14 函数调用的抽象语法树设计
    3分钟
  • 5-15 函数调用的文法文件编写
    9分钟
  • 5-16 FunctionValue 类设计
    11分钟
  • 5-17 FunctionValue 类的初步实现
    37分钟
  • 5-18 函数定义功能实现
    23分钟
  • 5-19 函数调用功能实现
    35分钟
  • 5-20 return 功能实现
    52分钟
  • 5-21 function 作用域访问 Bug
    6分钟
  • 5-22 修复 function 作用域访问 Bug
    51分钟
购课须知

课程有效期:

自购买课程之日起 365 天,部分参与营销活动产品以活动规则为准,请同学在有效期内学习、观看课程。

上课模式:

课程采取录播模式,请注意自学课无班级微信群、班主任带班及助教批改服务。

注:自学课不支持退款,确保你是真的需要再进行报名,报完名之后还请认真学习。