Simple Design
目的是让工程团队基于已知知识而不是基于对未知预测而设计,即基于当下,立足眼前。完美的计划未必会产生完美的产品。对未来的适应性的设计调整比一味的对未来加以预测的方式更有价值,从而简单设计也是一种风险减轻的方法。
Continuous Integration
持续集成简单来说持续集成就是频繁地(一天多次)将代码集成到主干。每次集成都通过自动化的构建(包括编译、发布、自动化测试)来验证,从而尽快地发现集成错误。
让产品可以快速迭代,同时还能保持高质量。它的核心措施是,代码集成到主干之前,必须通过自动化测试。只要有一个测试用例失败,就不能集成。持续集成并不能消除 Bug,而是让它们非常容易的发现和改正。
Test-driven Development
测试驱动开发,简称TDD,是一种不同于传统软件开发流程的新型的开发方法。它要求在编写某个功能的代码之前先编写测试代码,然后只编写使测试通过的功能代码,通过测试来推动整个开发的进行。这有助于编写简洁可用和高质量的代码,并加速开发过程