专栏: AI时代的程序员修养

这个专栏不把重点放在“怎样让 AI 多写几行代码”,而是回到计算机专业的硬底座:算法、数据结构、进程、网络、数据库、并发、可靠性、观测和工程交付。AI 可以覆盖很多知识点,但程序员必须知道系统如何运转、问题如何拆开、结果如何验证,才知道该让 AI 做什么、该拦住什么。

共 12 篇文章 3 卷 12 篇提纲

专栏要求

  • 每篇文章必须包含真实技术知识点,不能只讲观念;至少要解释一个算法、数据结构、系统机制、协议、数据库机制或工程约束。
  • 每篇文章都要把技术知识放到 AI 编程场景里:说明为什么程序员必须懂,如何把它写进 prompt,如何检查 AI 生成代码是否正确。
  • 每篇文章尽量给出具体工程例子、伪代码、复杂度分析、失败场景、验收清单或可运行测试思路。
  • 文章要偏科班基础与大规模系统实践,不做工具测评式泛谈;AI 是放大器,核心是程序员如何掌握问题建模、系统边界和质量判断。

卷一:先把机器和系统想明白

这一卷补的是最容易被 AI 编程掩盖的底层常识:程序如何执行,数据如何组织,进程如何协作,网络和存储怎样把一个功能变成真实服务。

  1. AI 会写代码,但你要知道程序是什么 从“程序 = 算法 + 数据结构”讲起,重新看需求、状态、复杂度、边界条件和验收样例。
  2. 数据结构不是面试题,是系统的骨架 用队列、索引、树、哈希、日志这些真实场景说明,为什么数据结构决定系统长什么样。
  3. 进程、线程、协程:别让 AI 替你猜执行模型 解释进程隔离、线程共享、协程调度、事件循环和阻塞调用,写清楚该怎样让 AI 实现并发任务。
  4. 模块之间怎么说话 从函数调用、消息队列、HTTP、RPC、事件流到共享数据库,讨论模块交互方式的取舍。

卷二:把功能做成能扛流量的服务

这一卷关注大规模系统里的实际经验:接口契约、数据库事务、缓存、异步任务、高并发、限流降级和可观测性。

  1. 接口不是 URL,是系统契约 讲 schema、错误码、幂等、版本兼容、权限边界和示例参数,避免 AI 写出“看似能调”的接口。
  2. 数据库不是存 JSON 的地方 围绕表设计、索引、事务边界、锁、慢查询和迁移,讨论 AI 生成数据层时最容易踩的坑。
  3. 缓存、队列和异步任务 说明缓存一致性、任务重试、幂等消费、死信、批处理和反压,避免把慢操作塞进请求链路。
  4. 高并发不是加机器那么简单 从连接池、批量、限流、降级、热点、雪崩和容量估算讲服务如何扛压。

卷三:让 AI 生成物进入工程体系

这一卷讨论 AI 时代程序员真正的分水岭:如何审查、测试、观测、重构和交接 AI 写出来的系统。

  1. 测试是 AI 编程的安全带 讲单测、集成测试、fixture、契约测试、回归测试和故障样例,重点是让结果可复现。
  2. 日志、指标和 Trace:你要能看见系统在做什么 把日志、metrics、trace、审计记录和业务埋点串起来,用观测能力约束 AI 生成系统。
  3. 接手 AI 写的代码,先别急着骂 给出审查、隔离、补测试、抽边界、删代码和重构的顺序,让原型变成可维护资产。
  4. 程序员的长期修养 回到计算机基础、系统思维、产品判断、表达能力和团队协作,讨论 AI 时代什么能力会被放大。

已发布文章

AI 会写代码,但你要知道程序是什么
原创 工程实践 · 阅读

AI 会写代码,但你要知道程序是什么

《AI时代的程序员修养》第一篇,从“程序 = 算法 + 数据结构”重新讨论 AI 编程:为什么需求要先变成状态、规则、复杂度和验收样例,程序员才知道该让 AI 写什么。

数据结构不是面试题,是系统的骨架
原创 工程实践 · 阅读

数据结构不是面试题,是系统的骨架

《AI时代的程序员修养》第二篇,讨论队列、哈希表、树、索引、日志这些数据结构在真实系统里的样子:为什么它们决定系统边界、性能和故障模式。

别让 AI 替你猜执行模型
原创 工程实践 · 阅读

别让 AI 替你猜执行模型

《AI时代的程序员修养》第三篇,讲进程、线程、协程、事件循环和阻塞调用:为什么并发不是把代码包进 async,也不是多开几个 worker,而是要先说清楚执行模型。

模块之间怎么说话
原创 工程实践 · 阅读

模块之间怎么说话

《AI时代的程序员修养》第四篇,讲函数调用、HTTP/RPC、消息队列、事件流和共享数据库这些模块通信方式:不是选一个更时髦的技术,而是先想清楚耦合、事务、失败和观测边界。

接口不是 URL,是系统契约
原创 工程实践 · 阅读

接口不是 URL,是系统契约

《AI时代的程序员修养》第五篇,讲 API 设计里的请求响应 schema、错误码、幂等、分页、权限、版本兼容和契约测试:让 AI 写接口之前,先把承诺写清楚。

数据库不是存 JSON 的地方
原创 工程实践 · 阅读

数据库不是存 JSON 的地方

《AI时代的程序员修养》第六篇,讲表设计、索引、事务边界、锁、慢查询和迁移:数据库不是一个万能 JSON 盒子,而是系统最硬的业务约束层。

慢活别塞进请求里
原创 工程实践 · 阅读

慢活别塞进请求里

《AI时代的程序员修养》第七篇,讲缓存、队列和异步任务:缓存不是万能加速器,队列不是垃圾桶,异步任务也必须有幂等、重试、死信、批处理和反压设计。

高并发不是加机器那么简单
原创 工程实践 · 阅读

高并发不是加机器那么简单

《AI时代的程序员修养》第八篇,讲连接池、批量、限流、降级、热点、雪崩和容量估算:并发不是单点代码技巧,而是整条调用链的承压设计。

测试是 AI 编程的安全带
原创 工程实践 · 阅读

测试是 AI 编程的安全带

《AI时代的程序员修养》第九篇,讲如何用单测、集成测试、fixture、契约测试、回归测试和故障样例约束 AI 生成代码,让结果可复现、可审查、可交接。

系统出事时,你要看得见
原创 工程实践 · 阅读

系统出事时,你要看得见

《AI时代的程序员修养》第十篇,讲日志、指标、Trace、审计记录和业务埋点如何组成可观测性边界,让 AI 生成的服务不再是黑盒。

接手 AI 写的代码,先别急着骂
原创 工程实践 · 阅读

接手 AI 写的代码,先别急着骂

《AI时代的程序员修养》第十一篇,讲如何审查、隔离、补测试、画边界、删代码和小步重构,把 AI 原型变成可维护资产。

AI 时代,程序员还要修什么
原创 工程实践 · 阅读

AI 时代,程序员还要修什么

《AI时代的程序员修养》第十二篇,也是这个专栏的收束篇:回到计算机基础、系统思维、产品判断、表达能力和团队协作,讨论哪些能力会被 AI 放大。