当前位置:首页 > 计算机网络 > 软件工程/开发项目管理 > 架构之美
出版社:东南大学
出版日期:2010-6
ISBN:9787564122737
作者:(希)斯皮内利斯//郭西奥斯
页数:404页
作者简介
《架构之美(影印版)》围绕5个主题领域来组织《架构之美》的内容:概述、企业应用、系统、最终用户应用和编程语言。《架构之美》让最优秀的设计师和架构师来描述他们选择的软件架构,剥开架构的各层,展示他们如何让软件做到实现功能、可靠、易用、高效率、可维护、可移植和优雅。
书籍目录
FOREWORD by Stephen J. Me//or PREFACEPart One ON ARCHITECTURE1 WHAT IS ARCHITECTURE? by John Klein and Dauid Weiss Introduction Creating a Software Architecture Architectural Structures Good Architectures Beautiful Architectures Acknowledgments References2 A TALE OF TWO SYSTEMS: A MODERN-DAY SOFTWARE FABLE by Pete Goodliffe The Messy Metropolis Design Town So What? Your Turn ReferencesPart Two ENTERPRISE APPLICATION ARCHITECTURE3 ARCHITECTING FOR SCALE by Jim Waldo Introduction Context The Architecture Thoughts on the Architecture4 MAKING MEMORIES by Michael Nygard Capabilities and Constraints Workflow Architecture Facets User Response5 RESOURCE-ORIENTED ARCHITECTURES: BEING "IN THE WEB" by Brian Sletten Introduction Conventional Web Services The Web Resource-Oriented Architectures Data-Driven Applications Applied Resource-Oriented Architecture Conclusion6 DATA GROWS UP: THE ARCHITECTURE OF THE FACEBOOK PLATFORM by Daue Fetterman Introduction Creating a Social Web Service Creating a Social Data Query Service Creating a Social Web Portal: FBML Supporting Functionality for the System SummationPart Three SYSTEMS ARCHITECTURE7 XEN AND THE BEAUTY OF VIRTUALIZATION by Derek Murray and Keir Fraser Introduction Xenoservers The Challenges of Virtualization Paravirtualization The Changing Shape of Xen Changing Hardware, Changing Xen Lessons Learned Further Reading8 GUARDIAN: A FAULT-TOLERANT OPERATING SYSTEM ENVIRONMENT by GreR Lehey Tandem/16: Some Day All Computers Will Be Built Like This Hardware Mechanical Layout Processor Architecture The Interprocessor Bus Input/Output Process Structure Message System File System Folklore The Downside Posterity Further Reading9 JPC: AN X86 PC EMULATOR IN PURE JAVA by Rhys Nemman and Christopher Dennis Introduction Proof of Concept The PC Architecture Java Performance Tips Four in Four: It Just Won't Go The Perils of Protected Mode Fighting A Losing Battle Hijacking the JVM Ultimate Flexibility Ultimate Security It Feels Better the Second Time Around10 THE STRENGTH OF METACIRCULAR VIRTUAL MACHINES:JIKES RVM by/an Rogers and Daue Groue Background Myths Surrounding Runtime Environments A Brief History ofJikes RVM Bootstrapping a Self-Hosting Runtime Runtime Components Lessons Learned ReferencesPart Four END-USER APPLICATION ARCHITECTURES11 GNU EMACS: CREEPING FEATURISM IS A STRENGTH by Jim Blandy Emacs in Use Emacs's Architecture Creeping Featurism Two Other Architectures12 WHEN THE BAZAAR SETS OUT TO BUILD CATHEDRALS by Till Adam and Mirko Boehm Introduction History and Structure of the KDE Project Akonadi ThreadWeaverPart Five LANGUAGES AND ARCHITECTURE13 SOFTWARE ARCHITECTURE: OBJECT-ORIENTED VERSUS FUNCTIONAL by Bertrand Meyer Overview The Functional Examples Assessing the Modularity of Functional Solutions An Object-Oriented View Assessing and Improving OO Modularity Agents: Wrapping Operations into Objects Acknowledgments References14 REREADING THE CLASSICS by Panagiotis Louriclas Everything Is an Object Types Are Defined Implicitly Problems Brick and Mortar Architecture ReferencesAFTERWORD by William J. MitchellCONTRIBUTORSINDEX
编辑推荐
《架构之美(影印版)》:健壮、优雅、灵活和易维护的软件架构是怎样炼成的?《架构之美》通过一系列优秀的文章回答了这个问题,这些文章来自于十几位当今一流的软件设计师和架构师。在每篇文章中,作者都向们展示了一个著名的软件架构,并分析了什么让其具有创新性,让其极其符合设计目标。《架构之美》内容包括:Facebook的架构如何建立在以数据为中心的应用生态系统之上。Xen的创新架构对操作系统未来的影响。KDE项目的社区过程如何让软件的架构从粗略的草图演进为漂亮的系统。不断滋长的特征如何让GNUEmacs获得从未预料到的功能。JikesRVM自优化、自足执行的运行时环境背后的魔法。
前言
THE IDEA FOR THE BOOK YOU'RE READING WAS CONCEIVED IN 2007 as a successor to the award-winning, best-selling Beauti/ul Code. a collection of essays about innovative and sometimessurprising solutions to programming problems. In Beautiul Architecture, the scope andpurpose is different, but similarly focused: to get leading software designers and architects todescribe a software architecture of their choice, peeling back the layers of their creations toshow how they developed software that is functional, reliable, usable, efficient, maintainable,portable, and, yes, elegant.To put together this book, we contacted leading architects of well-known or less-well-knownbut highly innovative software projects. Many of them replied promptly and came back to uswith thought-provoking ideas. Some of the contributors even caught us by surprise byproposing not to write about a specific system, but instead investigating the depth and theextent of architectural aspects in software engineering.All chapter authors were glad to hear that the work they put in their chapters is also helpinga good cause, as the royalties of this book are donated to Meddcins Sans FrontiOres (DoctorsWithout Borders), an international humanitarian aid organization that provides emergencymedical assistance to suffering people.
内容概要
编者:(希腊)斯皮内利斯(Diomidis Spinellis) (希腊)郭西奥斯(Georgios Gousios)
媒体关注与评论
“本书的作者们在介绍软件架构的基本实践和最佳实践方面干得很漂亮,他们也同样漂亮地介绍了各式各样的现代系统。我特别喜欢他们谈及的架构的广泛性,从Emacs到Facebook,从非常正式的系统到非常有灵气的系统。简而言之,这是一本非常及时的书,对于软件架构的艺术、科学和实践是非常有益的贡献。” ——GradyBooch,IBM院士
章节摘录
插图:Finally, we would want to include architectures that have features that delight the developersand testers who use the architecture and build it and maintain it, as well as the users of thesystem(s) built from it. Why delight developers? It makes their job easier and is more likely toresult in a high-quality system. Why delight testers? They are the ones who have to attemptto emulate what the users will do as part of the testing process. If they are delighted, it is likelythat the users will be, too. Think of the chef who is unhappy with his culinary creations. Hiscustomers, who consume those creations, are likely to be unhappy, too.Different systems and application domains offer opportunities for architectures to exhibitspecific delightful features, but Conceptual Integrity is a feature that cuts across all domainsand that always delights. A consistent architecture is easier and faster to learn, and once youknow a little, you can begin to predict the rest. Without the need to remember and handlespecial cases, code is cleaner and test sets are smaller. A consistent architecture does not offertwo (or more) ways to do the same thing, forcing the user to waste time choosing. As LudwigMies van der Rohe said of good design, "Less is more," and Albert Einstein might say thatbeautiful architectures are as simple as possible, but no simpler.Given these criteria, we propose some initial candidates for our "Gallery of BeautifulArchitectures."
图书封面