TDD MOOC 课程上线,帮助开发者入门测试驱动开发
来源标题:TDD MOOC
一门名为 TDD MOOC 的课程发布,旨在帮助开发者跨过测试驱动开发(TDD)的入门门槛。课程介绍指出,TDD 是先写失败测试再写代码通过的迭代方法,熟练掌握还需 6 到 12 个月的刻意练习。课程强调 TDD 能快速验证代码、减少调试时间,并及早发现设计问题。
以下正文由 AI 翻译自 Hacker News 最新(原文版权归原站所有),可能存在偏差,重要内容请以原文为准。
测试驱动开发(TDD)是一种迭代式编程技术:你先写一个会失败的测试,用它描述你想实现的目标,然后再写生产代码让测试通过。代码会被持续重构,以便让下一次修改更容易进行。
这门课程旨在帮你跨过 TDD 入门阶段最初的障碍。在那之后,你很可能仍会以过大的步子做改动,你的测试也还可以写得更好,但至少你已经在写测试了。要真正擅长 TDD,还需要 6 到 12 个月有意识的刻意练习。
首先,你无需再花时间确认代码是否能工作,因为计算机会在不到一秒内替你检查。由于你每分钟会多次运行测试,一旦某次改动破坏了功能,你立刻就能发现。你也不必浪费时间调试,因为撤销最近一次改动再重试会更快。
TDD 同时也是一种反馈机制,能让你更早发现所选设计是否阻碍了变更。这样你就可以评估其他设计,直到找到一个从长远看能让你持续快速修改的方案。从而更快地产出更好的软件。
TDD Outcomes 列出了一些你可以从使用 TDD 中期待的结果。
How Test-Driven Development Works (And More!) 对 TDD 为何有效给出了比“对我管用”更具理论性的解释。
如果你想读学术论文,这里有 2020 年的研究论文 Why Research on Test-Driven Development is Inconclusive?(TLDR:大多数实验对象的经验不足 1 年)。
如果你至少写过几个超过 1000 行代码的小型应用,你就可以开始这门课程了。
本课程的基础版本(4 cr)要求具备良好的 JavaScript 和面向对象编程能力。
本课程的扩展版本(4+1 cr)还额外要求一些 Web 开发和数据库经验:你需要实现一个小型全栈 Web 应用。与此相关的课程有 Full Stack Open(第 0–5 部分)、DevOps with Docker(第 0–2 部分)、Introduction to Databases(仅芬兰语)或任何 SQL 教程。
本课程包含六个练习(或小型项目),涉及使用 TDD、重构和编写测试。练习 5(全栈 Web 应用)是可选的,但如果你完成它,将获得额外的一个学分。为此,本课程显示为两个课程单元:
练习使用 JavaScript,但对于需要从零创建项目的练习,你可以使用任何你选择的编程语言。完成基础练习需要 Node.js、Git 以及一个 IDE 或文本编辑器(例如 IntelliJ IDEA 或 VS Code)。对于全栈练习,Docker 会很有用。要提交完成的练习,你需要一个 GitHub 账号和屏幕录制软件(例如 OBS Studio)。
本课程将于 2026 年 1 月持续到 5 月(预计明年大约同一时间也会开设)。届时会有 Discord 频道和学习小组。详情请见 practicalities 页面。
当然,即使课程未在运行期间,你也可以随时使用本课程材料进行自学。
正文由 探How 从来源站点 RSS 同步,内容未经改写;遇到排版缺失或需要图片、视频时请以原文为准。