♻️
前端 TDD(测试驱动开发)
  • README
  • 总-课程目标
  • 总-课程安排
  • Coding
    • 第一题:FizzBuzz 数字游戏
      • 什么是 FizzBuzz?
      • 任务 0:练功前的热身
      • FizzBuzz 项目剖析
      • 任务 1:TDD 初体验
      • 任务 2:先利其器
      • 任务 3:再撸一遍
      • FizzBuzz 项目总结
      • 附录 1:Jest 测试基础及要点
      • 附录 2:Testing Library 组件测试基础
    • 第二题:MarsRover 火星车
      • 任务 1:Tasking 任务分解
      • 火星车实战
      • 火星车 Tasking 任务分解
      • 任务 2:MarsRover 实战演练
      • MarsRover Coding 演示
      • 任务 3:MarsRover 练习
      • MarsRover 项目总结
    • 第三题:CommentBox 留言板
      • CommentBox 项目剖析
      • 任务 1:Cypress E2E 测试
      • 任务 2:测试驱动组件单元接口
      • 任务 3:组件级别的快速反馈
      • 任务 4:由外到内的前端 TDD
      • CommentBox 项目总结
    • 第四题:Bookshelf 魔法书架
      • Bookshelf 项目剖析
      • 任务 1:练习 API 契约测试
      • 任务 2:组件化与数据流管理
      • 任务 3:Redux 数据流测试
      • 任务 4:简化 Redux 项目结构
      • Bookshelf 项目总结
      • 附录 1:什么才是真正的 RESTful 架构?
      • 附录 2:【译】Redux 和 命令模式
      • 附录 3:【译】什么是 Flux 架构?(兼谈 DDD 和 CQRS)
    • 第五题:ShoppingCart 购物车
      • ShoppingCart 项目剖析
      • React 哲学:Thinking in React
      • 任务 1:任务分解 - 驱动组件树拆分
      • 任务 2:综合应用 - 驱动组件接口设计
      • 任务 3:综合应用 - 驱动数据流管理
      • 任务 4:综合应用 - 驱动组件样式开发
      • ShoppingCart 项目总结
由 GitBook 提供支持
在本页
  • 撒花完结
  • 无尽的钟摆
  • 你的感觉怎么样?
  1. Coding
  2. 第五题:ShoppingCart 购物车

ShoppingCart 项目总结

上一页任务 4:综合应用 - 驱动组件样式开发

最后更新于5年前

撒花完结

恭喜你,你完成了第一个编程训练营。

无尽的钟摆

事实上,在过去十年内,或者说自 Web 技术被普遍应用以来,这样的振荡也发生了几次。一开始我们以为计算资源应该集中在服务器集群中,浏览器应该保持简单。但随后我们又开始在浏览器中引入 Applets。再后来我们又改了主意,发明了 Web2.0, 用 Ajax 和 Javascript 将很多计算过程挪回浏览器中。我们先是非常兴奋地将整个应用程序挪到浏览器去执行,后来又非常开心地采用 Node 技术将那些 Javascript 代码挪回服务器上执行。

一声叹息! —— 《架构整洁之道》Robert C. Martin

你的感觉怎么样?

  • 有没有找到 TDD 的节奏?

  • 有没有找到重构的感觉?

  • 编程的速度有没有提高?

在《架构整洁之道》这本书中还提到了, Jason Gorman 采用 TDD 方法与未采用 TDD 方面编程在每个迭代周期上的耗时对比图,那么你呢?

上图展示的是 Jason Gorman 进行的一次为期 6 天的实验。在该实验中,Jaosn 每天都编写一段代码,功能是将一个整数转化为相应罗马数字的字符串。当事先定义好的一个测试集完全通过时,即认为当天工作完成。每天实验的时长不超过 30 分钟。第一天、第三天和第五天,Jason 在编写代码的过程中采用了业界知名的优质代码方法论:测试驱动开发(TDD),而其他三天他则直接从头开始编写代码。

我建议你可以写一篇博客,总结一下这三周的收获。

对了,在 这里你可以找到更多的练习题目(Kata),记住我们训练营的节奏,继续练习和反思,你的编程技能还会继续提升。

http://codingdojo.org/kata/
tdd speed comparison
Mars