-from amazon
Product Description
What are the ingredients of robust, elegant, flexible, and maintainable software architecture? Beautiful Architecture answers this question through a collection of intriguing essays from more than a dozen of today's leading software designers and architects. In each essay, contributors present a notable software architecture, and analyze what makes it innovative and ideal for its purpose.
Some of the engineers in this book reveal how they developed a specific project, including decisions they faced and tradeoffs they made. Others take a step back to investigate how certain architectural aspects have influenced computing as a whole. With this book, you'll discover:
* How Facebook's architecture is the basis for a data-centric application ecosystem
* The effect of Xen's well-designed architecture on the way operating systems evolve
* How community processes within the KDE project help software architectures evolve from rough sketches to beautiful systems
* How creeping featurism has helped GNU Emacs gain unanticipated functionality
* The magic behind the Jikes RVM self-optimizable, self-hosting runtime
* Design choices and building blocks that made Tandem the choice platform in high-availability environments for over two decades
* Differences and similarities between object-oriented and functional architectural views
* How architectures can affect the software's evolution and the developers' engagement
Go behind the scenes to learn what it takes to design elegant software architecture, and how it can shape the way you approach your own projects, with Beautiful Architecture.
......(更多)
-from amazon
About the Author
Diomidis Spinellis is an Associate Professor in the Department of Management Science and Technology at the Athens University of Economics and Business, Greece. His research interests include software engineering, programming languages, internet information systems, computer security, and intelligent optimization methods. He holds an MEng in Software Engineering and a PhD in Computer Science both from Imperial College London.
Spinellis is a FreeBSD committer and the author of many open-source software packages, libraries, and tools. His implementation of the Unix sed stream editor is part of all BSD Unix distributions and Apple's Mac OS X. Other tools he has developed include the UMLGraph declarative UML drawing engine, the ckjm tool for calculating Chidamber and Kemerer object-oriented metrics in large Java programs, the Outwit suite for integrating Windows features with command-line tools, the fileprune backup file management facility, and the socketpipe network plumbing utility. In 2004 he adopted and has since been maintaining and enhancing the popular bib2xhtml BibTeX bibliography format to HTML converter. Currently he is also serving as the scientific coordinator of the EU-funded SQO-OSS cooperative research project, a software quality observatory for open-source software.
......(更多)
......(更多)
游戏中的数据结构设计导致了游戏中的所有状态改变都只涉及一个对象,并由它来协调所有的工作。使用这个对象实际上使游戏中所有的动作序列化执行,这使得基础设施不能够发现并利用并行计算。 实际上,他们只需要确保对象定义是自包含的,它们的操作不需要其他对象的属性。
第11章:GNU Emacs:滋长特性是其优势
......(更多)