Skip to content
📖 Auto 版 TypeScript Handbook本书目录

简介 ​

欢迎阅读《Auto 编程语言 -- TypeScript 版》。本书面向已掌握 TypeScript 或 JavaScript 的开发者,教授 Auto 语言。Auto 提供与 TypeScript 同等的类型安全,但语法大幅精简,并通过 a2ts 转译器编译为 TypeScript,可直接集成到任何现有 TypeScript 项目中。

本书内容 ​

本书按照 TypeScript 手册的结构逐章展开。每个主题都提供 Auto 与 TypeScript 的对照代码,让你清楚地看到 Auto 如何映射到你已熟悉的语言。

各章节从基础到进阶依次递进:

  • 基础 -- 变量、原始类型和控制流。
  • 日常类型 -- 联合类型、交叉类型和常见类型模式。
  • 类型收窄 -- Auto 如何通过 is 关键字处理类型收窄。
  • 函数 -- 参数类型、返回类型和重载。
  • 对象类型 -- type 关键字、方法和属性。
  • 从类型创建类型 -- 映射类型、条件类型和泛型。
  • 类型运算符 -- keyof、typeof 及其他工具类型。
  • 类 -- Auto 如何用 type 替代 TypeScript 的 class。
  • 模块 -- 导入、导出和项目组织。
  • 理解错误 -- 阅读和修复编译器报错信息。

面向 TypeScript 开发者的 Auto ​

如果你了解 TypeScript,Auto 的大部分概念会让你感到熟悉。以下是贯穿全书你会遇到的主要差异:

  • type 替代 class -- Auto 使用 type 定义所有用户自定义类型。
  • spec 替代 interface -- Auto 的 spec 定义结构性契约。
  • is 替代 switch / 模式匹配 -- Auto 用 is 关键字统一条件逻辑。
  • let / var 替代 let / let mut -- Auto 的 let 默认不可变,var 可变。
  • print() 替代 console.log() -- 更短的表达,同样的效果。

如何使用本书 ​

建议从前到后按顺序阅读。后面的章节建立在前面章节的概念之上。如果你对某个主题已经熟悉,可以跳着读,遇到不明白的地方随时回来查阅。

关于代码示例的说明 ​

本书每个代码示例都同时展示 Auto 版本和等效的 TypeScript 版本。Auto 代码可以通过 a2ts 工具转译为 TypeScript,你可以自行验证输出结果。

学习 Auto 的一个重要环节是学会阅读编译器的错误信息。我们会展示一些故意无法编译的示例,以及编译器给出的错误信息。如果你单独运行某个片段时失败了,请查阅上下文文字以了解背景。

源代码 ​

本书的源文件可在项目仓库中找到。

基于 MIT 许可发布。