作者:
江南白衣,原文出处:
http://www.blogjava.net/calvin/archive/2007/02/09/98914.html,转载请保留。
为了2007年的目标,列了下面待读或重读的书单。
不在书单里的,小部分是我漏掉的,大部分是我觉得对于架构师不太重要,或者不够好的。
奇怪国外真正的好书来来去去也就那么几本,emule加上国内出版社的努力,我们看的东西和老外已差不多,为什么老外看完就那么生猛,我们看完就还是半桶水呢。
一、Software Architecture篇
这个领域并没有什么"畅销书",可能读者中本来就是开发设计人员与项目经理占了多数,真正定位为架构师而且做的也是架构师工作的不多吧。但下面选出的几本应该会不错:
1.《Software Architect Bootcamp--软件架构师教程》
这本训练营是脉络最为清晰的入行指南。可惜第2版国内还没有翻译,只好看完中文的第一版再去看电子版了。
2. 《The Art of Software Architecture: Design Methods and Techniques--软件体系结构的艺术》
薄薄的一本,架构的理论抽象与提升。
3. 《Large-Scale Software Architecture-A Practical Guide using UML--大型软件体系结构:使用UML实践指南》
4.《Documenting Software Architectures: Views and Beyond--软件构架编档》
第13届JOLT大奖作品,市面上介绍UML描述架构的书很多,但捕获架构的过程,为什么这样捕获的书籍就少了,所以它拿JOLT。
5. 《A Practical Guide to Enterprise Architecture--企业架构实用指南》
书商Scott W. Ambler作品,他那套agile书的大杂烩。
6. 《Domain-Specific Application Frameworks: Frameworks Experience by Industry--特定领域应用框架:行业的框架体验》
出手稍慢就买不到了,介绍了特定领域特定框架的设计,我自己最喜欢看人家的设计与思考。
二、Patterns篇
GOF23属于开发人员的Pattern,架构师同样也有架构师的Pattern。
1. 《Head First Design Patterns》
最好的GOF23经典设计模式讲解。
。
2. 《Patterns of Enterprise Application Architecture--企业应用架构模式》
Martin Fowler经典。
3. 《Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions--企业集成模式:设计、构建及部署消息传递解决方案》
企业应用通信集成,SOA/ESB方面的架构师需读。
4. 《Effective Enterprise Java--中文版》
Neward, Ted作品,所有Java架构师需读。
《Expert One-on-One J2EE Design and Development--J2EE设计开发编程指南》
Rod Johnson作品,依然使用J2EE的倒霉架构师需读。
5.《Pattern-Oriented Software Architecture, Patterns for Concurrent and Networked Objects, Volume 2--面向模式的软件体系结构 卷2:用于并发和网络化对象的模式》
POSA2,网络编程尤其是用ACE的架构师必读。
《Pattern-Oriented Software Architecture: Patterns for Resource Management, Volume 3--面向模式的软件体系结构卷3:资源管理模式》
POSA3,网络与后台编程的架构师必读。
三、RUP/UML 篇
除了RUP、UML、4+1视图,架构师们还可以遵循很多的设计方式,但UML仍然是是架构师的通用语言,RUP还是架构师职责最清晰的流程。
1. RUP最好的书是那份《RUP-软件开发团队的最佳实践.pdf》加上 RUP2003.6.15 中文版自带的架构师视角的文档。
2. UML随便看一份电子书也能入门了,语法方面不需要专门买书。但教人如何画好UML的《The Elements of UML Style--UML风格》就很必要,可惜国内没有翻译第2版。
四、闲书篇
1.《Code Complete 2--代码大全2》
一本你教育小弟时的代言人。
2.《The Pragmatic Programmer--程序员修炼之道:从小工到专家》
一本你启发小弟的代言人。
3.《The Art of Unix Programming --UNIX编程艺术》
五. 高效读书心得
刚好Head First系列开头都有一段教人如何读书的话,结合自己的经验整理如下:
1.尽量阅读中文版
虽然有人英文很强,有的翻译很差,但AnyWay 中文阅读与理解的时间,略读与快速定位感兴趣内容的速度还是要快一些。
2.即时批注、总结笔记与交流
虽然爱书,但发现最有效的读书方式还是不断的制造脂批本,读书时在重要的文字下划线,把自己的心得写在页旁。
读完后,把上面的划线与批注,用自己的语言重新整理表述。有人喜欢用MindManager,我还是习惯纯文本123。
最好在明天的例会上,把心得不借助笔记重新表达出来与同事分享、讨论。
3.大量思考或重复记忆
看书最郁闷的事情就是看完之后脑袋空空了。偏重技术的书还好点,虽然看的时候可能很辛苦,但就像学会了骑单车之后,再骑的时候总是会的,而偏重设计与管理的书,最容易的事情就是看的时候很爽,看完没什么留下到项目实践中。
所以,我们不能以看小说的速度来看设计书,要寻找思考的机会,思考是最好的记忆。
如果实在没有思考的topic,就只有大量的重复记忆,重复多遍直到无意识的记忆。
4.人体工学
那些见缝插针的时间与地点不是看设计书的好地方。
环境不要有电视,音乐等强输入源,而微风阳光鸟语等弱输入源则有助活跃大脑。
看书时大量的喝水。
如果发现自己的大脑已经疲累,已经在浮光掠影的翻看,就要休息。
留给大脑消化的时间,看完书不要接着看其他有难度的书或事情。