这里写自定义目录标题
《软件随想录》, 作者 Joel Spolsky,他是“Joel on Software”博客的作者。他从1991年到1994年间担任Microsoft Excel团队的项目经理。在2000年,他创立了Fog Creek软件并开启了“Joel on Software”博客。2008年,他和Jeff Atwood一起启动了如今极为成功的Stack Overflow程序员问答网站。他们用Stack Exchange软件产品作为Stack Overflow的引擎。现如今Stack Exchange网络已经包含了91个站点.
书中讲到了乔尔测试,例举了12个简单的问题来衡量开发团队的优劣,
1.你们用源代码管理系统吗?
源代码管理系统,
1)可以使程序员协同工作;
2)如果出错,可以很快恢复到原来状态;
3)每个程序员机器上都有电脑,不会丢失代码;
目前流行的源代码管理系统有github, git, svn
2.你们能一键编译吗?
1)好的团队从最新版本的源代码开始,到打包成一个可以交付的软件为止,只用一个脚本就能从头开始完全签出代码;
2)如果每次编译代码,构建安装包都要经过20个步骤,开发者不仅会被逼疯,还会犯低级的错误;
3.你们做每日编译吗?
破坏编译是非常有害的,可以每天在固定的时候编译,比如午饭时间;
4.你们有bug数据库吗?
- 如果没有一个列出所有已知bug的数据库,那么团队交付的代码质量一定不高;
5.你们在写新代码前修改以前的bug吗?
在写新代码之前都要优先消灭现有bug, 因为:
1)一个bug在修复之前拖得越久,修复它的成本(时间和金钱)就越高。
2)你首次尝试运行某段代码时发现bug, 可以很快将其修复,因为你还清晰地记得所有代码;
3)当你在前几天写的代码中发现一个bug时&#x