我推荐的开发团队葵花宝典

本文档主要是关于每个人自主性的提高,修改代码,维护代码,维护需求,提高用户体验。应该包括了软件工程,方法论,开发心得,最佳实践等内容。

敏捷开发

Python 和 Django 测试驱动开发 在线阅读最新版(英文)
要学习如何能为其他程序员提供编写整洁代码的反馈,可以阅读Robert C. Martin所著“Clean Code”
要学习如果能够识别代码腐臭来做重构,可以阅读Martin Fowler所著“Refactoring”
要学习如何将难以测试的遗留代码改造为便于测试的情形来编写测试,可以阅读Michael Feathers所著“Working Effectively with Legacy Code”

程序员书单

这个 blog 里有一个比较好的整理和介绍 程序员必读书单 1.0,博主在里面详细说明了要看什么书,该怎么选书等等,可以作为一个参考。但是里面的书我大部分没有读过,只是看到过无数人在推荐,应该说这个书单也是比较多人认可的。这里说下我读过和有一定了解的(可以根据这里的书名直接搜索书单帖子里看他的一些介绍和点评)。

《代码大全》。这个我简单浏览过一下,没有深入。可以说是一本关于开发中的各种问题的书,实例很多,很多大师及有名开发者都推荐过。
《Rework》(重来),《精益创业》。算是对软件开发在新时代下的远程工作,管理,创新和创业的一些经验,对一些传统思维的抛弃。
《人月神话》,《人件》。比较老的书,说的基本是软件工程和项目管理的一些经验,更偏向大型一点的项目,但是很多经验和观点还是很有用。
设计模式。
《敏捷软件开发(原则模式与实践)》,这本我看了开头一小部分,里面说到了一些敏捷开发的概念和设计模式等,虽然用的都是C++来示例,个人觉得还是很有价值的,对开发实践有帮助。
《Head First设计模式》。用风趣生动的例子等说明设计模式,针对面向对象。
对于设计模式这个东西,都是一些前人的经验总结,可以提高代码质量,软件的维护性可扩展性等,最好能根据场景选择,不要为了模式而模式,以避免不必要的复杂度。

资料:

Jeff Atwood:程序员都不读书,但你应该读 Jeff 是StackOverflow的联合创始人,他在这个文章里也谈了为什么要读书,读什么书,和他推荐的书单。