FizzBuzz 项目剖析

的确,FizzBuzz 是一个非常简单的题目。看完这道题,有工作经验的程序员恐怕会露出鄙夷的神情 ─━ _ ─━✧。“这种编程初级班的题目,还能玩出什么花?”

关键在速度上。你能用多快的速度完成这道题?

  • 据我们的观察,行业里平均水平大约需要 1 小时。很多优秀的程序员能在 15 分钟内完成。

  • Michael Feathers(他是《修改代码的艺术》一书的作者)和 Emily Bache 在 Agile2008 大会上用了 4 分钟完成。

  • 翻译《重构》第二版的林从羽老师,在写 FizzBuzz 的计算逻辑部分的时候,只用了 1 分 15 秒。

你可以赏析一下,他快在什么地方吧?

提问:从这个短短的视频,除了速度,你还看到了些什么?

达到这样的编程速度,需要对自己使用的工具非常熟悉、对自己要解决的问题想得非常清楚。

这就是我们要练的基本功。

技能要求

让我们重申一下这个项目的要求,这就是你练习的目标:

  1. 熟悉 IDE 的快捷键操作

  2. 使用 Jest 编写单元测试

  3. 使用 Testing Library 编写组件测试

  4. 编写失败的测试,驱动出产品代码

  5. 充分利用代码生成 (live template)

  6. 刻意练习的节奏!

任务拆解

本项目分为个任务:

  1. TDD 初体验

  2. 利其器,整理工作环境

  3. 刻意练习,再撸一遍

最后更新于