本期(Round 2·编程与开发)聚焦一个被大量“框架速成”内容淹没的旧命题:代码工艺(Software Craftsmanship)——命名、抽象、重构、遗留代码治理与测试策略。与此前已覆盖的“系统设计与架构”“AI结对编程”“从零造轮子”等主题不同,本期五个频道共同回答一个更基础的问题:当功能已经跑通之后,如何让代码在三年后依然改得动、测得了?
本期精选的五个频道恰好构成一个真实的“工艺生态圈”:ArjanCodes 用 Python 演示设计原则,CodeAesthetic 用动画讲透软件设计的第一性原理,Emily Bache 提供可下载练手的重构 Kata,Modern Software Engineering(Dave Farley)把代码质量上升到工程管理与持续交付层面,CodeOpinion 则从十年单一产品的架构演进视角复盘设计决策。这五个频道之间存在真实的互动——Emily Bache 曾公开点评 ArjanCodes 的测试方法,也作为嘉宾出现在 Dave Farley 的频道中讨论“如何阻止 AI 毁掉你的代码库”,形成了一条完整的学习路径。
| 频道 | 主理人 | 定位 | 语言/技术栈 | 适合阶段 |
|---|---|---|---|---|
| ArjanCodes | Arjan Egges | Python 软件设计与设计模式 | Python | 中级 |
| CodeAesthetic | 匿名开发者 | 软件设计原理可视化 | 语言无关 | 初中级 |
| Emily Bache | Emily Bache | 重构 Kata 与技术教练方法 | Java/C#/Python | 中高级 |
| Modern Software Engineering | Dave Farley | 持续交付、TDD 与工程文化 | 语言无关 | 全阶段 |
| CodeOpinion | Derek Comartin | 事件驱动架构与设计决策 | .NET 为主 | 中高级 |
频道:ArjanCodes(据频道页面约 34 万订阅) 主理人:Arjan Egges,创业者、计算机科学大学讲师
ArjanCodes 是本期唯一有精确订阅数据佐证的频道——其视频描述在多次搜索快照中显示订阅数从 33.7 万缓慢爬升至 33.9 万,属于稳定增长的精品型频道。Arjan 的核心方法论是“用一个真实项目贯穿设计原则”:他的代表作系列《Software Design in Python》不逐条罗列 GoF 二十三种模式,而是从一段能跑但难改的代码出发,逐步应用依赖注入、策略模式、描述符等手段,让观众看到“重构前后的 diff”而非“UML 类图”。
2026 年的两期内容尤其值得看:Why "Clean Code" Often Creates Worse Designs(2026-03,约 2.5 万播放)直接质疑“整洁代码教条”,指出机械套用函数拆分和抽象层反而会制造更碎、更难追踪的设计;From Spaghetti Code to Clean Python(2025-12,约 12.4 万播放)则是完整的实战改造,从意大利面条代码一路重构到整洁架构。
实用价值:Python 开发者可直接把他 GitHub 上的 examples 仓库拉下来对照练习;他的每期视频几乎都附可运行代码。适合人群:写过一两年 Python、感觉“代码越写越乱”的后端与数据工程师。
频道:CodeAesthetic 定位:软件设计 / 设计模式(据频道页面关键词与视频标签)
CodeAesthetic 是编程教育区的一个异类:更新极慢(RSS 显示 2023 年底之后几乎停更),但视频长尾热度惊人——抓取其 RSS 时可见 2022–2023 年的老视频在 2026 年 8 月仍有活跃的互动更新记录,说明它持续被算法和社区“翻牌”。这个频道只用动画和最小代码片段讲一个概念,每集控制在十分钟内,代表作包括:
实用价值:这是最适合新人入职第一周看的频道——它不教语法,只教“什么样的代码会让同事痛苦”。适合人群:计算机专业学生、刚入行 1–3 年的开发者,以及需要给团队做代码规范宣讲的 Tech Lead(他的动画可直接用作内部分享素材)。
频道:Emily Bache 主理人:25 年以上开发经验的技术教练,Samman 技术教练法创始人(据频道主页介绍)
如果前两个频道告诉你“什么是好代码”,Emily Bache 告诉你“怎么把手练熟”。她的频道围绕一个核心资产运转:重构 Kata 仓库——Tennis Refactoring Kata、Yatzy Refactoring Kata、Gilded Rose、DiagramPrinter、Payroll 等,全部开源在 GitHub 上,每个 Kata 就是一段“故意写坏”的代码加一套测试,供你按 Martin Fowler 的安全重构步骤反复练习。
她 2025–2026 年的内容有三条主线:其一是遗留代码治理,如 Breaking Legacy Code Dependencies with Extract and Override 用现代工具重做 15 年前的练习、How to Safely Refactor Legacy Code Using Adapt Parameter 演示 Michael Feathers《Working Effectively with Legacy Code》中的经典手法;其二是测试策略,What to Mock in an Integration Test 讲清了六边形架构下窄集成测试该 Mock 什么;其三是技术教练方法论(Samman 法:让整个团队一起学习练习)。
值得一提的彩蛋:2026 年 1 月她发布了 Reaction: Arjan Codes wrote tests the HARD way - My way is BETTER,直接点评 Arjan 的测试写法“太费劲”,并用 ApprovalTests 演示更省力的验证方式——两个频道就此形成公开的“学术交锋”,对比着看收获极大。
实用价值:团队可以直接拿她的 Kata 做内部 Coding Dojo;个人可按“先看演示、再自己练”的节奏每周一个 Kata。适合人群:维护遗留系统的工程师、想推动团队技术改进的教练型 Tech Lead。
频道:Modern Software Engineering(原 Continuous Delivery 频道) 主理人:Dave Farley——据频道主页介绍,他是《Continuous Delivery》一书合著者、LMAX Disruptor(Duke 开源奖得主)缔造者之一、BDD 先驱与 Reactive Manifesto 作者
这是本期阵容中“段位”最高的频道:它不局限于单段代码的好坏,而是回答“什么样的工程体系能让好代码持续产出”。2026 年 7–8 月的更新密度极高(RSS 显示几乎每周两更),且踩点极准,几乎就是当下 AI 编程浪潮的“工程学解毒剂”:
实用价值:对个人是 TDD 与持续交付的免费课程(官网提供免费 Refactoring 与 TDD 教程);对管理者是工程文化变革的论据库——其 8 月新片称“88% 的转型失败”(据视频描述),并把变革定义为“小而安全的实验”。适合人群:Tech Lead、工程经理、CTO,以及想在 AI 时代守住工程底线的所有开发者。
频道:CodeOpinion 主理人:Derek Comartin——据其个人页面与 LinkedIn,他是 Microsoft MVP,拥有二十余年横跨消费品的软件开发经验
本期唯一的架构向选择,但入选理由恰恰是它不是“微服务布道”频道。Derek 的独特资产是长期主义视角:他十年来在同一个产品上持续演进架构,代表作 10 Years of Software Architecture: Best And Worst Decisions(2025-01)复盘了好坏决策的共同主题——隔离(Isolation)。他的内容主轴是事件驱动架构(EDA)与消息化设计的“祛魅”:在一系列博文中他反复指出“上了事件驱动、看似解耦,系统照样脆弱”的真实困境,并给出按数据流切分命令与事件、识别契约边界等务实手法。
实用价值:当你在“单体还是微服务”“要不要上消息队列”的选型会上需要论据时,这个频道提供的是经过十年生产验证的中间路线。适合人群:面临架构演进决策的后端负责人、从单体向事件驱动迁移的团队。
graph TD
subgraph 原理层
CA[CodeAesthetic<br/>设计原则动画]
end
subgraph 语言实战层
AJ[ArjanCodes<br/>Python设计重构]
end
subgraph 刻意练习层
EB[Emily Bache<br/>重构Kata与测试策略]
end
subgraph 工程体系层
MSE[Modern Software Engineering<br/>Dave Farley<br/>CD/TDD/工程文化]
end
subgraph 架构演进层
CO[CodeOpinion<br/>十年架构复盘/EDA]
end
CA -->|概念认知| AJ
AJ -->|代码示例被点评| EB
EB -->|嘉宾出镜<br/>AI与代码质量专题| MSE
EB -->|安全重构步骤| CO
MSE -->|TDD与持续交付支撑| CO
style CA fill:#e8f4fd,stroke:#2196f3
style AJ fill:#e8f4fd,stroke:#2196f3
style EB fill:#fff8e1,stroke:#ffc107
style MSE fill:#e8f5e9,stroke:#4caf50
style CO fill:#f3e5f5,stroke:#9c27b0
flowchart LR
A[接手遗留代码] --> B[先用特征测试<br/>或ApprovalTests<br/>锁住现有行为]
B --> C[小步重构<br/>IDE自动化优先]
C --> D{测试全绿?}
D -->|否| C
D -->|是| E[提交: 标注重构性提交]
E --> F{要加新功能?}
F -->|是| G[先'让改动变容易'<br/>再做功能改动]
G --> B
F -->|否| H[结束]
本文由「51学通信」技术团队出品。51学通信由通信行业18年老兵爱卫生(微信ID: gprshome201101)维护,聚焦5G/6G核心网、3GPP标准解读、通信前沿技术深度分析。 出版作品有《5G核心网原理与实践》《IMS原理与实践》等4本通信专业书籍。知识星球「51学通信」提供深度技术答疑和行业洞察。
[!tip] 51学通信知识星球 星主:爱卫生(微信:gprshome201101)——公众号「51学通信」创办者,19 年通信行业运维与讲师经验,著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书(各大电商平台有售)。 星球定位:深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域,主打运维岗位与信令分析。 当前规模:5200 篇主题 / 990 个回答,198 元/年。 加入福利:加入星球后请加爱卫生微信,拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题,另有群内分享。 AI 加持:51学通信知识星球已作为 skill 接入 WorkBuddy,使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例,做总结、找文档和 PPT 等场景全覆盖。
