微信扫一扫,开始最好玩的图书漂流玩法

架构之美  童书●育儿

Till Adam
机械工业出版社(2009)
75元 / 366页
9787111283560
标签: 架构  软件架构  计算机  软件开发  软件工程  架构师 

本书围绕5个主题领域来组织本书的内容:概述、企业应用、系统、最终用户应用和编程语言。本书让最优秀的设计师和架构师来描述他们选择的软件架构,剥开架构的各层,展示他们如何让软件做到实现功能、可靠、易用、高效率、可维护、可移植和优雅。


作者介绍

Till Adam在年轻时学习了哲学、比较文学、美国研究和音乐学,职业是音乐人。由于没有发财和出名,他转而攻读科学硕士,学习了数学、计算机科学和商业。多年对自由软件的贡献(特别是对KDE的贡献)教会了他编程,也为他带来了在Klarälvdalens Datakonsult AB工作的机会,目前他在该公司负责协调KDE的开发和其他与自由软件相关的活动。他和他的妻子、女儿住在德国柏林。
Jim Blandy在1990年至1993年间为自由软件基金会维护GNU Emacs,和Richard Stallman一起发布了Emacs的第19个版本。他是Subversion版本控制系统的最初设计者之一。他也是CVS版本控制系统、GNU调试器(GDB)、Guile扩展语言库和一个编辑基因序列的Emacs程序的贡献者。他现在为Mozilla公司工作,工作内容是SpiderMonkey,即Mozilla的Javascript编程语言的实现。Jim和他的妻子、两个女儿住在俄勒岗的波特兰。
Mirko Boehm从1997开始就是KDE的开发者,在1996年至2006年间是KDE e.V.委员会的成员。他毕业于德国汉堡Helmut Schmidt大学的商业专业。在他的私人生活中,他阅读纸版书籍、与家人在一起,试图远离计算机。他目前在德国柏林为Klarälvdalens Datakonsult AB工作,负责跨平台软件和嵌入式软件开发。
Christopher Dennis自2005年JCP项目开始时,就是项目的主开发者。Chris在牛津大学读博士时开始采用Java。此前,他使用过各种编程语言,从16进制小键盘上编写的Z80机器码到PHP和JavaScript。他对特殊情况、编码技巧和偶尔有点丑陋的临时编码很有兴趣,喜欢用各种语言编写紧凑的、优雅的代码。
Dave Fetterman是Facebook的工程经理,他在那里创建了Facebook平台项目。在2006年加入Facebook之前,他是一名软件工程师,参加Microsoft开发者部门的项目,包括.NET的通用语言运行环境(CLR)。他喜欢为其他开发者创建软件,也喜欢对愿意听的人发表长篇大论。他拥有应用数学的学士学位,并在2003年获得了哈佛大学的计算机科学硕士学位。
Keir Fraser是XenSource的创始人之一,XenSource现在是Citrix Systems公司的一部分。他也是Xen系统管理程序的首席架构师。Keir在2002实现了Xen的第一个版本,作为他在剑桥计算机实验室攻读博士学位时的一项娱乐。在该项目成为大规模的社群合作的过程中,他继续作为主要的开发者。他因在无锁并发控制方面的工作,于2004年获得了博士学位,并在同年成为一名教师。
Peter Goodliffe是一名程序员、专栏作家、演说家和作家,从来不在同一软件领域做过多的停留。Pete的热门书籍“Code Craft (No Starch Press)”是对整个编程追求的实际而有趣的调查——大约600页,真是了不起!他对制革很有热情,而且不穿鞋。
Georgios Gousios是一名职业研究者,接受的教育和软件工程有关,热衷于软件开发。目前,他正在希腊的雅典经济学与商业大学完成他的博士论文。他的研究兴趣包括软件工程、软件品质、虚拟机和操作系统,他拥有英国曼彻斯特大学的科学硕士学位。Gousios为多个开源软件项目贡献过代码,并参与了各种学术项目和商业项目的研究与开发。他是SQO-OSS项目的项目经理、设计权威和主要开发成员,为评估软件品质探索一些创新的方法。在他的学术生涯中,Gousios在会议和杂志上发表了10篇技术论文。Gousios是ACM、IEEE、Usenix Association和Technical Chamber of Greece的成员。
Dave Grove是IBM的T.J. Watson研究中心动态优化组的一名研究员。他的主要研究兴趣包括分析和优化面向对象语言、虚拟机设计和实现、JIT编译、在线反馈导向的优化和垃圾收集。他在1998年参加了Jalapeño项目,是这个优化编译器和适应式优化系统首个实现的主要贡献者。自Jalapeño在2001年作为Jikes RVM开放源码以来,他一直是Jikes RVM核心团队和指导委员会的活跃成员。
John Klein是软件工程研究所(SEI)的高级技术人员,他的研究方向是“众系统之系统”的架构方法,并帮助个人、团队和组织机构改进他们的软件架构能力。在加入SEI之前,John是Avaya公司的首席架构师。在Avaya,他负责开发多模式的代理、通信分析的架构,以及为各种客户交互产品创建并改进架构。在此之前,John是Quintus的一名软件架构师,在那里他设计了第一款获得商业成功的多渠道集成联系中心产品,并导致了Quintus兼并了另外两家公司,实现了产品组合的技术集成。在加入Quintus之前,John曾为多家视频会议和视频网络业的公司服务。他的职业生涯开始于Raytheon,在那里他为雷达信号处理、多光谱图像处理、并行处理架构和算法提供硬件和软件解决方案。John拥有Stevens技术学院的学士学位和Northeastern大学的硕士学位。他是ACM和IEEE计算机学会的成员。
Greg Lehey的漫长职业生涯在德国和澳大利业度过,他曾为德国空间研究所工作,也曾为Univac、Tandem、Siemens-Nixdorf和IBM等计算机制造商工作,也曾作为一些没名气的软件公司的大客户,还曾做过独立的咨询顾问。他的活动范围很广,包括从内核开发到产品管理,从系统编程到系统管理,从处理卫星数据到为油泵编程,从生产CD-ROM到把自由软件移植到DSP指令集上。他是FreeBSD核心团队的成员,也是澳大利业Unix用户协会的主席。他是FreeBSD和NetBSD项目的开发者,也是“Porting Unix Software and The Complete FreeBSD, Fourth Edition (both O'Reilly)”一书的作者。他还以编写商业应用软件而闻名。Greg在2007年退休,将多出来的时间用于寻找生活。现在,他的休闲活动占据了他的大多数时间,但这还不够,他还听古典木纹唱片、烹饪、酿啤酒(他开发了一个计算机控制的发酵系统)、做园艺、骑马和摄影。他也对一些历史题材感兴趣,包括古代的难解的欧洲语言。
Panagiotis Louridas在上世纪八十年代通过一台 Sinclair ZX Spectrum开始涉足计算机。从那时起,他就开始用机器语言进行编程,而且非常喜欢。他在雅典大学信息系获得了计算机科学学士学位,在曼彻斯特大学获得了计算机硕士和博士学位。这些年来,他一直为私人部门开发软件,现在,他在希腊研究和教育网络(GRNET)工作。他也是雅典经济学和商业大学(AUEB)软件工程和安全(SENSE)研究组的成员。他发表的文章范围很广,从人类学到加密,从仪表展示到软件工程。他特别喜欢寻找计算机世界和其他领域的联系。
Stephen J. Mellor在为软件开发创建有效的工程方法方面,是国际公认的先行者。在1985年,他出版了广为阅读的Ward-Mellor三卷本“Structured Development for Real-Time Systems (Prentice Hall)”;在1998年,他的书首次定义了面向对象分析。Stephen还在2002年出版了“Executable UML: A Foundation for Model-Driven Architecture (Addison-Wesley Professional) ”。他最近的一本书“MDA Distilled: Principles of Model-Driven Architecture (Addison-Wesley Professional)”在2004年出版。他在对象管理集团(OMG)中活动积极,是为UML添加可执行动作的协会的主席,他最近完成了可执行UML的标准。他是敏捷宣言的签名者之一。他是OMG架构委员会的两任成员,IEEE软件顾问委员会的主席,最近,他成为了Mentor Graphics的嵌入式软件部门的首席科学家。
Bertrand Meyer是ETH Zurich的软件工程教授,也是Eiffel软件的首席架构师,他领导并设计了EiffelStudio环境和大量的库。他是一些畅销书的作者,其中包括获得Jolt大奖的“Object-Oriented Software Construction (Prentice Hall)”。他也因为在对象技术和Eiffel方面的工作获得了ACM软件系统大奖和Dahl-Nygaard大奖,并获得了St. Petersburg州立技术大学的荣誉博士学位。他的研究兴趣涉及面向对象技术、编程语言、软件验证(包括测试、并发和规范方法)。他也是一名活跃的顾问和讲师。
Mitchell是MIT架构和媒体艺术与科学系的Alexander Dreyfoos教授,他领导着MIT媒体实验室和MIT设计实验室的Smart Cities团队。他以前曾担任MIT架构和计划学院的院长。他最近的新书是“World's Greatest Architect”和“Imagining MIT”(都由MIT出版社出版)。
Derek Murray是剑桥大学计算机实验室的博士生。他在2006年加入Xen项目,主要工作是通过重新设计控制栈来改进Xen的安全性。他现在的研究主要是改进大规模分布式系统的容错性,但他还是偶尔会涉及系统核心。Derek在2006年从爱丁堡大学获得了高性能计算专业的硕士学位,2005年获得了Glasgow大学的计算机学士学位。
Rhy Newman在十多年前于牛津大学完成博士学位时,就开始使用Java,那时Java还只有几年历史。在他早期的研究中,他利用纯Java环境展示了高性能实时场景处理的实现方法,即使当时还是使用早期JIT化的JVM。从那时起,他同时在学界和业界工作,一次次证明Java平台实际上有多灵活、多高效、多快。在超过20年的软件工程生涯中,他获得了多个业界杰出技术奖项,最近他回到了牛津,承担了网格计算领域的突破性研究。JPC是最新研究工作的一部分。
Michael Nygard致力于在全国帮助开发者提高水平和减少痛苦。他和他遇到的每一个人分享他对改进的热情和活力,有时甚至没有得到对方的同意。Michael花了20年中的大部分时间学习对专业程序员有意义的事,他关心艺术、品质和技艺。他总是愿意在那些全职的、真心投入工作的开发者(那些“觉醒的”开发者)身上花时间。在另一方面,他不能容忍缺乏兴趣或浪费潜力。Michael在近20年来一直是专业的程序员和架构师。在这段时间里,他为美国政府、军方、银行、金融业、农业和零售业交付了运营系统。通常,Michael都要面对他自己开发的系统。这种实际运营的经历改变了他对软件架构和开发的看法。他参与了一个Tier 1零售网站的初期开发,并且常常作为其他在线业务的“流动解决问题专家”。这些经验让他对在相当不友好的环境下构建高性能、高可靠性的软件有了独特的看法。最近,Michael编写了“Release It! Design and Deploy Production-Ready Software (Pragmatic Programmers)”,该书获得了2008年的Jolt生产力大奖。
Ian Rogers是曼彻斯特大学高级处理器技术研究组的研究员。他的博士研究工作是关于Dynamite二进制翻译器的,该技术实现了商用,现在是许多二进制翻译器产品的一部分,包括Apple的Rosetta。他最近的学术研究工作一直是编程语言设计、运行时环境和虚拟机环境,特别是如何自动创建它们并有效地使用并行技术