本文内容取自《TypeScript图形渲染实战之2D架构设计与实现》一书的第二章。主要实现一个解析id Software公司Doom3 引擎文本文件格式的词法解析器来了解 TypeScript的一些常用语言知识,总体来说分为三个方面:

1、TypeScript语言本身的内容非常多,但是在《TypeScript图形渲染实战之2D架构设计与实现》和《TypeScript图形渲染实战之3D架构设计与实现》这两本书中,将会限制使用本篇中涉及到的、如下所示的几个语言点:

  • 接口的定义和扩展。
  • 类的定义、继承及类成员的访问级别。
  • 显示断言赋值。
  • 类型别名。
  • 函数(方法)签名和回调函数(方法)。
  • 泛型编程。
  • 模块化编程(export / import)。

2、本篇涉及到如下两个设计模式:

  • 工厂设计模式。
  • 迭代器设计模式。

3、了解Doom3文本文件的词法规则以及从头开始,实现一个解析这些规则的Doom3词法解析器。


2.1 Token与Tokenizer


2.2 IDoom3Token与IDoom3Tokenizer接口的实现


2.3 使用工厂模式和迭代器模式