CHAPTER 15 · APPENDIX

Glossary & Study Plan

This chapter is a toolbox: a glossary to look things up any time, an 8-week plan that ties the guide together, and a checklist to test whether you've really got it.

Reference

Glossary

Grouped by area. The "Ch." column points to where each term is first explained in detail. The Chinese column is there if you work with Chinese-speaking teammates or read the Chinese edition.

Language and runtime

TermOne-line meaningCh.中文
RuntimeAn environment that executes JS and provides host APIs: browsers, Node, Bun, Deno, workerd01运行时
Type erasureTS types exist only at compile time and vanish at runtime01 / 04类型擦除
Type strippingTranspiling by deleting annotations without type-checking (built into Node)01类型剥离
BundlerMerges, tree-shakes, splits and minifies code: Vite / Rolldown, Turbopack01打包器
Tree shakingRemoving exported code that's never used01摇树
LockfileRecords exact dependency versions for reproducible installs01 / 02锁文件
Event loopSync code → drain microtasks → take one task, repeat03事件循环
Microtask / taskPromise callbacks / timer, I/O and event callbacks03微任务 / 宏任务
Floating promiseA promise never awaited or handled; its errors get swallowed03漂浮的 Promise
ClosureA function remembering variables from the scope it was created in03闭包
Immutable updateCreating new objects / arrays instead of mutating03 / 06不可变更新
ESM / CJSModern import/export modules / the old require system03ES 模块 / CommonJS

Type system

TermOne-line meaningCh.中文
Structural typingCompatibility decided by shape, not declared relationships04结构化类型
Union typeA | B: a value may be either04联合类型
NarrowingThe compiler gives more precise types at different points based on checks04类型收窄
Discriminated unionSeveral shapes told apart by a shared literal field04判别联合
Exhaustiveness checkUsing never to ensure every branch is handled04穷尽检查
GenericsStaying general over a type-to-be-decided while keeping type info04泛型
Type assertion (as)Telling the compiler "trust me", with no check at all04类型断言
Runtime validationChecking real data at boundaries with Zod and similar04运行时校验
Single source of truthDefine once, derive everything else04 / 08单一事实来源

Web and frontend

TermOne-line meaningCh.中文
Same-origin policy / CORSBrowsers restrict cross-origin reads; servers opt out via response headers05同源策略 / 跨源资源共享
Preflight requestThe OPTIONS check before a non-simple cross-origin request05预检请求
XSS / CSRFInjected script execution / requests riding the user's cookies05跨站脚本 / 跨站请求伪造
DOMThe object tree representing the page in the browser05文档对象模型
Accessibility (a11y)Making UI usable by keyboard, screen readers and more05可访问性
Responsive breakpointA screen-width threshold where layout changes05响应式断点
Component / props / stateA function returning UI / read-only inputs from the parent / data React keeps06组件 / 属性 / 状态
ReconciliationDiffing old and new element trees to compute minimal DOM changes06协调 / 比对
Lifting state upMoving shared state to the nearest common parent06提升状态
Derived stateA value computable from other data; don't store it separately06派生状态
Effect / cleanupSyncing with external systems after render / undoing the previous sync06副作用 / 清理函数
Controlled / uncontrolled inputValue driven by state / kept by the browser06受控 / 非受控输入
Optimistic updateShow the expected result before the server confirms; roll back on failure06乐观更新
Server stateA local cache of remote data (what TanStack Query manages)06服务器状态
Debounce / throttleRun only after input pauses / limit run frequency06防抖 / 节流

Rendering and full-stack

TermOne-line meaningCh.中文
CSR / SSRHTML produced in the browser / on the server07客户端 / 服务端渲染
SSG / ISRGenerated at build / generated then cached and periodically refreshed07静态生成 / 增量静态再生
Streaming SSRSend the shell first; slow parts stream in later07流式渲染
HydrationThe client reuses server HTML and attaches events07水合
Server / Client Components (RSC)Exist only on the server / code shipped to the browser07服务器组件 / 客户端组件
Server Function / Server ActionCallable from the client, runs on the server (really a network endpoint)07服务器函数
Request waterfallRequests that could run in parallel run in sequence03 / 07请求瀑布
Meta-frameworkA full-stack framework adding routing, rendering, data loading on top of a UI library01 / 07元框架
End-to-end type safetyTypes inferred from the database all the way to the UI08端到端类型安全
MigrationA versioned change to the database schema08迁移
Authentication / authorizationWho you are / what you may do08认证 / 授权
IDORChecking login but not resource ownership08不安全的直接对象引用
IdempotencyRepeating an operation doesn't repeat its effect08幂等
Exponential backoffRetry after waits that double each time08指数退避
Dead-letter queue (DLQ)Quarantine for messages that keep failing14死信队列

Deployment and engineering

TermOne-line meaningCh.中文
ServerlessInstances started on demand, pay per use, no servers to manage09无服务器
Edge computingRunning code at the node nearest the user09边缘计算
Cold startStartup delay when a new instance handles its first request09冷启动
V8 isolateAn execution-isolation unit lighter than a container (Cloudflare Workers)09隔离沙箱
BindingA resource injected into a Worker via env09绑定
Preview deploymentAn isolated environment created automatically per PR09预览部署
Definition of DoneThe checklist a task must satisfy to count as done10完成定义
E2E testA test simulating user actions in a real browser10端到端测试
CIAutomatically running checks on every commit10持续集成
ObservabilityLogs, metrics and traces for understanding production10可观测性

AI and agents

TermOne-line meaningCh.中文
TokenThe unit of text models process and bill by11词元
Context windowMax tokens one request can hold11上下文窗口
Time to first token (TTFT)Time from request to the first token arriving11首 token 时间
Structured outputConstraining the model to return schema-conforming JSON11结构化输出
Tool / function callingThe model asking your code to run a function11工具调用
EmbeddingMapping text to vectors; similar meaning, nearby vectors11嵌入向量
RAGRetrieve relevant material first, then generate from it11检索增强生成
Prompt cachingRepeated request prefixes processed cheaper and faster11提示缓存
EvalsMeasuring AI feature quality with sample sets and scoring rules11评估
Prompt injectionInstructions smuggled in data to hijack the model11提示注入
AgentA model using tools in a loop until the goal is reached12智能体
HarnessEverything around the model: instructions, tools, context management, permissions, feedback12挽具 / 外围框架
Context engineeringDeciding what goes into context on every turn12上下文工程
CompactionSummarizing earlier context to free space12压缩
SubagentA subtask worker with its own context12子智能体
MCPAn open protocol for plugging tools and data into agent hosts12模型上下文协议
Skills / hooksExpertise loaded on demand / scripts run deterministically at lifecycle events12技能 / 钩子
Human-in-the-loopKey steps require human confirmation12人在回路
Spec / acceptance criteriaWhat to build and how to judge it's done13规格 / 验收标准
Vertical sliceThe smallest end-to-end runnable increment13纵向切片

An 8-week study plan

Designed for 8–10 hours a week. Every week has a LinkNote milestone — shipping something that runs matters more than finishing chapters.

WkReadBuild (LinkNote milestone)This week's check
100, 01, 02Set up the environment; run hello.ts; create a Vite + React project; write a first AGENTS.mdExplain how tsc differs from node running .ts
203, 04A script that fetches page titles in bulk: concurrency limit, timeout, allSettled; a Zod discriminated union for BookmarkPredict event-loop output order; no any in your code
305, 06A list page on fake data: cards, tag filter (URL state), empty state, add formSay where each piece of state lives, and why
407, 08Move to Next.js or TanStack Start; add a database (Drizzle) and login; implement CRUDDraw a request's layers and where types come from; delete endpoint safe from IDOR
509, 10Deploy (any platform); set up CI; add unit tests and one E2E testA public URL exists; CI runs on PRs automatically
611Async summaries: queue + structured output + status updates; streaming "Ask my bookmarks" (read-only tool)A 20-sample eval set; you know the cost of one summary
712, 13Upgrade "Ask my bookmarks" to an agent; write a skill or hook for the project; ship a new feature with the six-element templateOne feature goes from spec to merge in one pass
814, reviewWrite a design doc for LinkNote (with estimates); practice 5 interview questions (record yourself answering)Present LinkNote's system design within 45 minutes
How to use the plan

It's a reference pace, not a strict syllabus. If you already have a real project, use it in place of LinkNote and follow the same order. The one principle that matters: ship something that runs every week — don't spend weeks reading without building, and don't spend a week "setting up the perfect learning environment".

Self-assessment checklist

Tick the items you can do without notes, in your own words (ticks are saved locally in your browser).

Deep (must have)

Practice

Official resources

Things change fast; for concrete APIs, trust the official docs. You can also hand these links to your agent and have it read the docs before writing code.

AreaResource
JavaScript / web platformMDN Web Docs
TypeScripttypescriptlang.org/docs (the Handbook)
Node.jsnodejs.org/docs
Reactreact.dev/learn (especially "You Might Not Need an Effect")
Next.jsnextjs.org/docs
TanStack (Start / Router / Query)tanstack.com
Vitevite.dev
Tailwind CSS / shadcn/uitailwindcss.com/docs · ui.shadcn.com
Zodzod.dev
Drizzle ORMorm.drizzle.team
Honohono.dev
Better Authbetter-auth.com
Vercelvercel.com/docs
Cloudflare Workersdevelopers.cloudflare.com/workers · Agents SDK
Vitest / Playwrightvitest.dev · playwright.dev
AI SDKai-sdk.dev
Claude APIplatform.claude.com/docs
Claude Codecode.claude.com/docs
Model Context Protocolmodelcontextprotocol.io
pi coding agentgithub.com/badlogic/pi-mono

Finally

Back to Chapter 00's analogy: from assembly to OOP, engineers wrote less code, but the demand for understanding "how the system works" didn't drop — it expanded to a higher level. Today's shift is the same. Agents will keep getting stronger, but knowing what you want, saying it clearly, and judging right from wrong — those three stay yours.

Go build what you want to build.