架构师好书必读

作者:江南白衣,原文出处: http://www.blogjava.net/calvin/archive/2007/02/09/98914.html,转载请保留。

为了2007年的目标,列了下面待读或重读的书单。
不在书单里的,小部分是我漏掉的,大部分是我觉得对于架构师不太重要,或者不够好的。
奇怪国外真正的好书来来去去也就那么几本,emule加上国内出版社的努力,我们看的东西和老外已差不多,为什么老外看完就那么生猛,我们看完就还是半桶水呢。

一、Software Architecture

这个领域没有什么"畅销书",可能读者中本来就是开发设计人员与项目经理占了多数,真正定位为架构师而且做的也是架构师工作的不多吧。

1.Software Architect Bootcamp--软件架构师教程》

架构师新手训练营,可惜常以Corba做例子。第2版国内还没有翻译,只好看完中文的第一版再去看电子版了。
<!--[if gte vml 1]><v:shapetype id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"> <v:stroke joinstyle="miter" /> <v:formulas> <v:f eqn="if lineDrawn pixelLineWidth 0" /> <v:f eqn="sum @0 1 0" /> <v:f eqn="sum 0 0 @1" /> <v:f eqn="prod @2 1 2" /> <v:f eqn="prod @3 21600 pixelWidth" /> <v:f eqn="prod @3 21600 pixelHeight" /> <v:f eqn="sum @0 0 1" /> <v:f eqn="prod @6 1 2" /> <v:f eqn="prod @7 21600 pixelWidth" /> <v:f eqn="sum @8 21600 0" /> <v:f eqn="prod @7 21600 pixelHeight" /> <v:f eqn="sum @10 21600 0" /> </v:formulas> <v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect" /> <o:lock v:ext="edit" aspectratio="t" /> </v:shapetype><v:shape id="_x0000_i1029" type="#_x0000_t75" alt="" style='width:180pt; height:180pt'> <v:imagedata src="file:///C:\DOCUME~1\WANGLI~1\LOCALS~1\Temp\msohtml1\01\clip_image001.jpg" o:href="http://ec2.images-amazon.com/images/P/0131412272.01._BO2,204,203,200_PIlitb-dp-500-arrow,TopRight,45,-64_OU01_AA240_SH20_SCLZZZZZZZ_.jpg" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]--><!--[if gte vml 1]><v:shape id="_x0000_i1030" type="#_x0000_t75" alt="" style='width:151.5pt;height:187.5pt'> <v:imagedata src="file:///C:\DOCUME~1\WANGLI~1\LOCALS~1\Temp\msohtml1\01\clip_image002.jpg" o:href="http://www.dearbook.com/book/images/750539204501.jpg" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]-->
2.
Large-Scale Software Architecture-A Practical Guide using UML--大型软件体系结构:使用UML实践指南》
如果看不惯上一本,可以改以这本作为入行指南。

<!--[if gte vml 1]><v:shape id="_x0000_i1025" type="#_x0000_t75" alt="" style='width:180pt;height:180pt'> <v:imagedata src="file:///C:\DOCUME~1\WANGLI~1\LOCALS~1\Temp\msohtml1\01\clip_image004.jpg" o:href="http://ec1.images-amazon.com/images/P/0470848499.01._BO2,204,203,200_PIsitb-dp-500-arrow,TopRight,45,-64_OU01_AA240_SH20_SCLZZZZZZZ_.jpg" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]--><!--[if gte vml 1]><v:shape id="_x0000_i1026" type="#_x0000_t75" alt="" style='width:155.25pt;height:207pt'> <v:imagedata src="file:///C:\DOCUME~1\WANGLI~1\LOCALS~1\Temp\msohtml1\01\clip_image005.jpg" o:href="http://www.dearbook.com/Book/BookImage/21/TS_750539497101top.jpg" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]-->

3.
The Art of Software Architecture: Design Methods and Techniques--软件体系结构的艺术》

薄薄的一本,架构理论的抽象与提升。
<!--[if gte vml 1]><v:shape id="_x0000_i1027" type="#_x0000_t75" alt="" style='width:180pt;height:180pt'> <v:imagedata src="file:///C:\DOCUME~1\WANGLI~1\LOCALS~1\Temp\msohtml1\01\clip_image007.jpg" o:href="http://ec2.images-amazon.com/images/P/0471228869.01._BO2,204,203,200_PIsitb-dp-500-arrow,TopRight,45,-64_OU01_AA240_SH20_SCLZZZZZZZ_.jpg" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]--><!--[if gte vml 1]><v:shape id="_x0000_i1028" type="#_x0000_t75" alt="" style='width:102pt;height:135.75pt'> <v:imagedata src="file:///C:\DOCUME~1\WANGLI~1\LOCALS~1\Temp\msohtml1\01\clip_image008.jpg" o:href="http://www.dearbook.com/Book/BookImage/22/TS_711113438101top.jpg" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]-->


4.
Documenting Software Architectures: Views and Beyond--软件构架编档》

13JOLT大奖作品,市面上介绍UML描述架构的书很多,但捕获架构的过程,为什么这样捕获的书籍就少了,所以它拿JOLT
<!--[if gte vml 1]><v:shape id="_x0000_i1033" type="#_x0000_t75" alt="" style='width:180pt;height:180pt'> <v:imagedata src="file:///C:\DOCUME~1\WANGLI~1\LOCALS~1\Temp\msohtml1\01\clip_image009.jpg" o:href="http://ec1.images-amazon.com/images/P/0201703726.01._BO2,204,203,200_PIlitb-dp-500-arrow,TopRight,45,-64_OU01_AA240_SH20_SCLZZZZZZZ_.jpg" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]--><!--[if gte vml 1]><v:shape id="_x0000_i1034" type="#_x0000_t75" alt="" style='width:117pt;height:156pt'> <v:imagedata src="file:///C:\DOCUME~1\WANGLI~1\LOCALS~1\Temp\msohtml1\01\clip_image010.jpg" o:href="http://www.dearbook.com/book/images/TS0012776top.jpg" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]-->

二、架构模式篇

GOF23属于开发人员的Pattern,架构师同样也有架构师的Pattern

1. Head First Design Patterns

最好的GOF23经典设计模式讲解。
<!--[if gte vml 1]><v:shape id="_x0000_i1035" type="#_x0000_t75" alt="" style='width:180pt;height:180pt'> <v:imagedata src="file:///C:\DOCUME~1\WANGLI~1\LOCALS~1\Temp\msohtml1\01\clip_image011.jpg" o:href="http://ec2.images-amazon.com/images/P/0596007124.01._AA240_SCLZZZZZZZ_.jpg" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]-->


2.
Patterns of Enterprise Application Architecture--企业应用架构模式》

Martin Fowler经典。
<!--[if gte vml 1]><v:shape id="_x0000_i1031" type="#_x0000_t75" alt="" style='width:180pt;height:180pt'> <v:imagedata src="file:///C:\DOCUME~1\WANGLI~1\LOCALS~1\Temp\msohtml1\01\clip_image012.jpg" o:href="http://ec1.images-amazon.com/images/P/0321127420.01._BO2,204,203,200_PIlitb-dp-500-arrow,TopRight,45,-64_OU01_AA240_SH20_SCLZZZZZZZ_.jpg" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]--><!--[if gte vml 1]><v:shape id="_x0000_i1032" type="#_x0000_t75" alt="" style='width:102pt;height:135.75pt'> <v:imagedata src="file:///C:\DOCUME~1\WANGLI~1\LOCALS~1\Temp\msohtml1\01\clip_image013.jpg" o:href="http://www.dearbook.com/Book/BookImage/22/TS_711114305101top.jpg" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]-->


3.
Analysis Patterns: Reusable Object Models --分析模式》
Martin Fowler作品,但需要刚好有那个经验的人才看得进去。
<!--[if gte vml 1]><v:shape id="_x0000_i1036" type="#_x0000_t75" alt="" style='width:180pt;height:180pt'> <v:imagedata src="file:///C:\DOCUME~1\WANGLI~1\LOCALS~1\Temp\msohtml1\01\clip_image014.jpg" o:href="http://ec2.images-amazon.com/images/P/0201895420.01._BO2,204,203,200_PIlitb-dp-500-arrow,TopRight,45,-64_OU01_AA240_SH20_SCLZZZZZZZ_.jpg" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]--><!--[if gte vml 1]><v:shape id="_x0000_i1037" type="#_x0000_t75" alt="" style='width:102pt;height:135.75pt'> <v:imagedata src="file:///C:\DOCUME~1\WANGLI~1\LOCALS~1\Temp\msohtml1\01\clip_image015.jpg" o:href="http://www.dearbook.com/Book/BookImage/20/TS_71113301801top.jpg" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]-->

4.
Domain-Specific Application Frameworks: Frameworks Experience by Industry--特定领域应用框架:行业的框架体验》
介绍了特定领域特定框架的设计,我自己最喜欢看人家的设计与思考。

<!--[if gte vml 1]><v:shape id="_x0000_i1038" type="#_x0000_t75" alt="" style='width:180pt;height:180pt'> <v:imagedata src="file:///C:\DOCUME~1\WANGLI~1\LOCALS~1\Temp\msohtml1\01\clip_image016.jpg" o:href="http://ec1.images-amazon.com/images/P/0471332801.01._BO2,204,203,200_PIsitb-dp-500-arrow,TopRight,45,-64_OU01_AA240_SH20_SCLZZZZZZZ_.jpg" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]--><!--[if gte vml 1]><v:shape id="_x0000_i1039" type="#_x0000_t75" alt="" style='width:102pt;height:135.75pt'> <v:imagedata src="file:///C:\DOCUME~1\WANGLI~1\LOCALS~1\Temp\msohtml1\01\clip_image017.jpg" o:href="http://www.dearbook.com.cn/Book/BookImage/23/TS_tdn01top.jpg" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]-->


三、特定领域模式篇

1. Java EE领域
Effective Enterprise Java--中文版》

Neward, Ted
作品。

Expert One-on-One J2EE Design and Development--J2EE设计开发编程指南》

Rod Johnson作品,依然使用J2EE的倒霉架构师需读。



<!--[if gte vml 1]><v:shape id="_x0000_i1057" type="#_x0000_t75" alt="" style='width:180pt;height:180pt'> <v:imagedata src="file:///C:\DOCUME~1\WANGLI~1\LOCALS~1\Temp\msohtml1\01\clip_image018.jpg" o:href="http://ec2.images-amazon.com/images/P/0321130006.01._AA240_SCLZZZZZZZ_.jpg" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]--><!--[if gte vml 1]><v:shape id="_x0000_i1040" type="#_x0000_t75" alt="" style='width:102pt;height:135.75pt'> <v:imagedata src="file:///C:\DOCUME~1\WANGLI~1\LOCALS~1\Temp\msohtml1\01\clip_image019.jpg" o:href="http://www.dearbook.com.cn/Book/BookImage/30/TS_711117114001top.jpg" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]--> <!--[if gte vml 1]><v:shape id="_x0000_i1041" type="#_x0000_t75" alt="" style='width:180pt;height:180pt'> <v:imagedata src="file:///C:\DOCUME~1\WANGLI~1\LOCALS~1\Temp\msohtml1\01\clip_image020.jpg" o:href="http://ec1.images-amazon.com/images/P/0764543857.01._BO2,204,203,200_PIsitb-dp-500-arrow,TopRight,45,-64_OU01_AA240_SH20_SCLZZZZZZZ_.jpg" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]--><!--[if gte vml 1]><v:shape id="_x0000_i1042" type="#_x0000_t75" alt="" style='width:156pt;height:207.75pt'> <v:imagedata src="file:///C:\DOCUME~1\WANGLI~1\LOCALS~1\Temp\msohtml1\01\clip_image021.jpg" o:href="http://www.dearbook.com.cn/book/images/TS0012739top.jpg" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]-->


2. SOA/ESB
领域
Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions--企业集成模式:设计、构建及部署消息传递解决方案》

<!--[if gte vml 1]><v:shape id="_x0000_i1043" type="#_x0000_t75" alt="" style='width:180pt;height:180pt'> <v:imagedata src="file:///C:\DOCUME~1\WANGLI~1\LOCALS~1\Temp\msohtml1\01\clip_image023.jpg" o:href="http://ec1.images-amazon.com/images/P/0321200683.01._BO2,204,203,200_PIlitb-dp-500-arrow,TopRight,45,-64_OU01_AA240_SH20_SCLZZZZZZZ_.jpg" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]--><!--[if gte vml 1]><v:shape id="_x0000_i1044" type="#_x0000_t75" alt="" style='width:102pt;height:127.5pt'> <v:imagedata src="file:///C:\DOCUME~1\WANGLI~1\LOCALS~1\Temp\msohtml1\01\clip_image024.jpg" o:href="http://www.dearbook.com/book/BookImage/lastTS00106277__.jpg" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]-->


3.
网络与后台服务编程领域
Pattern-Oriented Software Architecture, Patterns for Concurrent and Networked Objects, Volume 2--面向模式的软件体系结构 2:用于并发和网络化对象的模式》

Pattern-Oriented Software Architecture: Patterns for Resource Management, Volume 3--面向模式的软件体系结构卷3:资源管理模式》

著名的POSA2POSA3

<!--[if gte vml 1]><v:shape id="_x0000_i1045" type="#_x0000_t75" alt="" style='width:180pt;height:180pt'> <v:imagedata src="file:///C:\DOCUME~1\WANGLI~1\LOCALS~1\Temp\msohtml1\01\clip_image025.jpg" o:href="http://ec1.images-amazon.com/images/P/0471606952.01._BO2,204,203,200_PIsitb-dp-500-arrow,TopRight,45,-64_OU01_AA240_SH20_SCLZZZZZZZ_.jpg" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]--><!--[if gte vml 1]><v:shape id="_x0000_i1046" type="#_x0000_t75" alt="" style='width:156pt;height:207.75pt'> <v:imagedata src="file:///C:\DOCUME~1\WANGLI~1\LOCALS~1\Temp\msohtml1\01\clip_image026.jpg" o:href="http://www.dearbook.com.cn/book/images/TS0012515top.jpg" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]--><!--[if gte vml 1]><v:shape id="_x0000_i1047" type="#_x0000_t75" alt="" style='width:180pt;height:180pt'> <v:imagedata src="file:///C:\DOCUME~1\WANGLI~1\LOCALS~1\Temp\msohtml1\01\clip_image028.jpg" o:href="http://ec2.images-amazon.com/images/P/0470845252.01._AA240_SCLZZZZZZZ_.jpg" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]--><!--[if gte vml 1]><v:shape id="_x0000_i1048" type="#_x0000_t75" alt="" style='width:102pt;height:132pt'> <v:imagedata src="file:///C:\DOCUME~1\WANGLI~1\LOCALS~1\Temp\msohtml1\01\clip_image029.jpg" o:href="http://www.dearbook.com.cn/book/BookImage/35/lastTS0044414__.jpg" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]-->

四、RUP/UML

除了RUPUML4+1视图,架构师们还可以遵循很多的设计方式,但UML仍然是架构师们的通用语言,RUP还是架构师职责最清晰的任务执行流程。

1. RUP最好的书其实是那份《RUP-软件开发团队的最佳实践》加上 RUP2003.6.15 中文版自带的架构师视角的文档,还有空可以看看《The Rational Unified Process:An.Introduction.3版》


2. UML
随便看一份电子书也能入门了,语法方面不需要专门买书。但教人如何画好UML的《The Elements of UML Style--UML风格》就很必要,可惜国内没有翻译第2版。
<!--[if gte vml 1]><v:shape id="_x0000_i1049" type="#_x0000_t75" alt="" style='width:180pt;height:180pt'> <v:imagedata src="file:///C:\DOCUME~1\WANGLI~1\LOCALS~1\Temp\msohtml1\01\clip_image030.jpg" o:href="http://ec1.images-amazon.com/images/P/0521616786.01._BO2,204,203,200_PIsitb-dp-500-arrow,TopRight,45,-64_OU01_AA240_SH20_SCLZZZZZZZ_.jpg" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]--><!--[if gte vml 1]><v:shape id="_x0000_i1050" type="#_x0000_t75" alt="" style='width:102pt;height:135.75pt'> <v:imagedata src="file:///C:\DOCUME~1\WANGLI~1\LOCALS~1\Temp\msohtml1\01\clip_image031.jpg" o:href="http://www.dearbook.com.cn/Book/BookImage/21/TS_uml01top.jpg" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]-->
<!--[if !supportLineBreakNewLine]-->
<!--[endif]-->

五、闲书篇

1.Code Complete 2--代码大全2

一本你教育小弟时的代言人。
<!--[if gte vml 1]><v:shape id="_x0000_i1051" type="#_x0000_t75" alt="" style='width:180pt;height:180pt'> <v:imagedata src="file:///C:\DOCUME~1\WANGLI~1\LOCALS~1\Temp\msohtml1\01\clip_image032.jpg" o:href="http://ec2.images-amazon.com/images/P/0735619670.01._BO2,204,203,200_PIsitb-dp-500-arrow,TopRight,45,-64_OU01_AA240_SH20_SCLZZZZZZZ_.jpg" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]--><!--[if gte vml 1]><v:shape id="_x0000_i1052" type="#_x0000_t75" alt="" style='width:102pt;height:126.75pt'> <v:imagedata src="file:///C:\DOCUME~1\WANGLI~1\LOCALS~1\Temp\msohtml1\01\clip_image033.jpg" o:href="http://www.dearbook.com.cn/book/BookImage/lastTS0090969__.jpg" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]-->

2.
The Pragmatic Programmer--程序员修炼之道:从小工到专家》

一本你启发小弟的代言人。
<!--[if gte vml 1]><v:shape id="_x0000_i1053" type="#_x0000_t75" alt="" style='width:180pt;height:180pt'> <v:imagedata src="file:///C:\DOCUME~1\WANGLI~1\LOCALS~1\Temp\msohtml1\01\clip_image034.jpg" o:href="http://ec2.images-amazon.com/images/P/020161622X.01._BO2,204,203,200_PIlitb-dp-500-arrow,TopRight,45,-64_OU01_AA240_SH20_SCLZZZZZZZ_.jpg" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]--><!--[if gte vml 1]><v:shape id="_x0000_i1054" type="#_x0000_t75" alt="" style='width:102pt;height:125.25pt'> <v:imagedata src="file:///C:\DOCUME~1\WANGLI~1\LOCALS~1\Temp\msohtml1\01\clip_image035.jpg" o:href="http://www.dearbook.com.cn/book/BookImage/47/lastTS0090353__.jpg" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]-->


3.
The Art of Unix Programming --UNIX编程艺术》
<!--[if gte vml 1]><v:shape id="_x0000_i1055" type="#_x0000_t75" alt="" style='width:180pt;height:180pt'> <v:imagedata src="file:///C:\DOCUME~1\WANGLI~1\LOCALS~1\Temp\msohtml1\01\clip_image036.jpg" o:href="http://ec1.images-amazon.com/images/P/0131429019.01._BO2,204,203,200_PIlitb-dp-500-arrow,TopRight,45,-64_OU01_AA240_SH20_SCLZZZZZZZ_.jpg" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]--><!--[if gte vml 1]><v:shape id="_x0000_i1056" type="#_x0000_t75" alt="" style='width:102pt;height:129.75pt'> <v:imagedata src="file:///C:\DOCUME~1\WANGLI~1\LOCALS~1\Temp\msohtml1\01\clip_image037.jpg" o:href="http://www.dearbook.com.cn/book/BookImage/lastTS0091589__.jpg" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]-->

六、高效读书心得

刚好Head First系列开头都有一段教人如何读书的话,结合自己的经验整理如下:

1.
尽量阅读中文版
虽然有人英文很强,有的翻译很差,但AnyWay 中文阅读与理解的时间,略读与快速定位感兴趣内容的速度还是要快一些。

2.
即时批注、总结笔记与交流
虽然爱书,但发现最有效的读书方式还是不断的制造脂批本,读书时在重要的文字下划线,把自己的心得写在页旁。
读完后,把上面的划线与批注,用自己的语言重新整理表述。有人喜欢用MindManager,我还是习惯纯文本123
最好在明天复习一次,或者拿来与人讨论。

3.
大量思考或重复记忆
看书最郁闷的事情就是看完之后脑袋空空了。偏重技术的书还好点,虽然看的时候可能很辛苦,但就像学会了骑单车之后,再骑的时候总是会的;而偏重设计与管理的书,最容易的事情就是看的时候很快,看完没什么留下到项目实践中。
所以,我们不能以看小说的速度来看设计书,要寻找思考的机会,思考是最好的记忆。
如果实在没有思考的topic,就只有大量的重复记忆,重复多遍直到无意识的记忆。

4.
人体工学
那些见缝插针的时间与地点不是看这个书单的好地方。
环境不要有电视,音乐等强输入源,而微风阳光鸟语等弱输入源则有助活跃大脑。
看书时大量的喝水。
如果发现自己的大脑已经疲累,已经在浮光掠影的翻看,就要休息。
留给大脑消化的时间,看完书不要接着看其他有难度的书或事情。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值