KEEL · 龙骨 · A CURRICULUM FOR THE AI ERA
Python 拔高 · 课程导读 — keel 龙骨
Python 拔高:生产代码里的高级写法与抽象 的参考信息:Python 拔高 · 课程导读
这门课的选材标准
不按教科书目录讲设计模式,只讲 生产级 Python 项目里真实出现、且值得展开的高级写法。每一个主题都是「先看问题 → 看代码怎么写 → 提炼出可迁移的套路」——所有例子都是能直接复制到 REPL 跑的通用代码,不绑定任何具体项目。
| 章节 | 主题 | 它解决什么真问题 |
|---|---|---|
| 00 | ContextVar:async 时代的请求级全局变量 | 几十层函数都要 user_id,层层传参太啰嗦、全局变量并发串数据 |
| 01 | 线程安全单例 + frozen dataclass | 全进程唯一的管理器谁来保证?创建后不许改的值对象谁来强制? |
| 02 | 模板方法与抽象基类 | 多种任务的「生命周期」一模一样,写两遍改两处 |
| 03 | 闭包与延迟导入 | 「只属于一次函数调用」的临时状态放哪?import 触发重资源/循环依赖怎么办? |
| 04 | 声明式鉴权 + 中间件管道 | 每个接口手写鉴权会漏写;中间件顺序反直觉 |
| 05 | Pydantic v2、StrEnum 与注册表工厂 | 跨进程数据怎么保证正确?类型会增长的分支怎么不写 if 链 |
| 06 | 动态分发与反射 | 任务名只是字符串,运行时怎么安全映射到真实函数?getattr / self.class / importlib / inspect 怎么用 |
前置要求
- 会用类、装饰器、异步(
async/await); - 建议先读 yield 详解课——00/02 章会直接引用那里的结论。