每节课都是一段真实的代码。
每段代码都是一次英语练习。
选一个难度开始。持续更新,每周上新课程。
入门
8 节课零基础也能看懂。代码和英语同步讲解,没有废话。
变量与含义 — 为什么命名如此重要
Variables & Meaning — Why Names Matter
好的变量名就是等待被说出口的英语。在这节课里,你将学会 TypeScript 开发者如何命名,以及他们选用的词汇如何体现其思维方式。…
用简单英语理解函数
Functions in Plain English
函数是一种承诺。它接收某物,做某件事,然后返回某物。本课学习如何阅读 TypeScript 函数签名——这就像阅读一份英文合同。…
像母语者一样读懂错误信息
Reading Error Messages Like a Native
TypeScript 的错误信息是用英文写的,它们真的在试图帮助你。学会解读它们,每当出错时,就像有位高级工程师在你耳边低声提示。…
Interface vs Type — TypeScript 最热门的争论
Interface vs Type — The Great TypeScript Debate
每位 TypeScript 开发者都会问:「该用 interface 还是 type?」答案揭示了我们如何在代码和英语中描述「形状」。…
可选链 — 「如果存在,那么…」
Optional Chaining — 'If It Exists, Then...'
`?.` 运算符是 TypeScript 礼貌地问:「这存在吗?存在就继续,不存在就返回 undefined。」一个符号就是一个英语条件句。…
数组方法 — 代码里的英语动词
Array Methods — English Verbs in Code
JavaScript 数组方法读起来像英语句子:「找到用户」「筛选活跃用户」「把每个条目映射为标题」。学会这些词汇,代码自然就会写了。…
Git Commit Messages — 书写历史
Git Commit Messages — Writing History
你的 commit 历史是一个故事。学习 Conventional Commits 标准、祈使语气,以及如何写出让未来的自己(和队友)感谢的 message。…
写 README 文件 — 项目的门面
Writing README Files — Your Project's Front Door
一个好的 README 是人们使用一个项目和忽略一个项目之间的区别。学习开源 README 文件的结构、词汇和写作风格。…
进阶
13 节课你已经会写 TypeScript,现在学会用英语想TypeScript。
泛型 — 「随你带来什么类型」的艺术
Generics — The Art of 'Whatever Type You Bring'
泛型是 TypeScript 的说法:「我不在乎你用什么类型,但你给我什么,我就还给你什么。」这是抽象的概念,完美映射到自然英语中。…
Async/Await — 对话未来
Async/Await — Speaking to the Future
异步代码在现代开发中无处不在。学习 `async/await` 如何让你的代码读起来像自然英语故事,而不是层层嵌套的回调地狱。…
联合类型 — 代码里的「非此即彼」
Union Types — Either/Or in Code
联合类型允许一个值是几种类型之一。英语中的 'or' 直接对应 TypeScript 的 `|`。掌握它,你就能像母语者一样读懂复杂的类型签名。…
类型收窄 — 排除可能性
Type Narrowing — Ruling Out Possibilities
随着你写条件语句,TypeScript 会越来越聪明。「收窄」是指在 if 块内类型变得更具体——就像侦探排除嫌疑人。…
错误处理 — 清晰地谈论失败
Error Handling — Speaking About Failure Clearly
你处理错误的方式揭示你对失败的思考方式。TypeScript 的错误模式与日常英语中关于期望、失败和恢复的短语一一对应。…
React Props — 给你传递的东西加类型
React Props — Typing What You Pass
Props 是 React 组件之间沟通的方式。TypeScript 让这个沟通变得明确——每个 prop 都有类型,编译器强制执行这份合同。…
读 npm 文档 — 开发者英语的核心技能
Reading npm Docs — The Developer's English Skill
你使用的每个库都有 README。高效阅读它可能是开发者最有价值的英语技能。学习标准词汇和结构。…
泛型 — 写一次,到处用
Generics — Write Once, Use Everywhere
泛型让你编写灵活、可复用的函数,同时保持类型安全。本课探索泛型函数、约束和流行库中的实际模式。…
Async/Await — 驯服异步代码
Async/Await — Taming Asynchronous Code
掌握异步编程的英文词汇:promises、callbacks、竞态条件和并发执行。像读英文散文一样读异步模式。…
Enums vs 联合类型 — 选择正确的工具
Enums vs Union Types — Choosing the Right Tool
TypeScript 提供了枚举和字符串联合类型两种工具。学习何时使用哪种,理解 tree-shaking 的影响,阅读真实代码库模式。…
Zod — 带类型推断的运行时验证
Zod — Runtime Validation with Type Inference
Zod 弥合编译时类型和运行时数据之间的鸿沟。学习如何用类型安全的 schema 验证 API 响应、表单输入和环境变量。…
RESTful API 命名 — 流利地说 HTTP
RESTful API Naming — Speaking HTTP Fluently
好的 API 设计读起来像自然英语。学习资源命名、HTTP 动词、状态码背后的惯例,以及 REST 词汇如何映射到英语语法。…
Code Review 礼仪 — 给予和接受反馈
Code Review Etiquette — Giving and Receiving Feedback
Code Review 是对话,不是审判。学习代码审查中使用的专业英语短语,从请求修改到优雅地批准 PR。…
高级
4 节课真正的高手,英语和代码都能信手拈来。
工具类型 — TypeScript 内置的词汇表
Utility Types — TypeScript's Built-in Vocabulary
TypeScript 内置了一套「工具类型」库,用于转换已有类型。每一个都有英语名字,精确描述其作用:Partial、Required、Pick、Omit。…
写 PR 描述 — 你在团队中的声音
Writing PR Descriptions — Your Voice on the Team
优秀的 PR 描述就像一篇短文:改了什么、为什么改、如何验证。用英语掌握这个,让你成为任何开源项目更有影响力的贡献者。…
装饰器模式 — 优雅地包装行为
Decorator Pattern — Wrapping Behavior Elegantly
装饰器在不修改函数和类的情况下添加功能。学习元编程的词汇,以及装饰器如何像英语注解一样阅读。…
观察者模式 — 事件、信号和响应式
Observer Pattern — Events, Signals, and Reactivity
观察者模式无处不在:DOM 事件、React 状态、RxJS、Zustand。学习发布-订阅的词汇,以及响应式只是优雅的观察。…