Zum Hauptinhalt springen Zur Suche springen Zur Hauptnavigation springen
Dekorationsartikel gehören nicht zum Leistungsumfang.
Beautiful Architecture
Taschenbuch von Diomidis Spinellis (u. a.)
Sprache: Englisch

44,95 €*

inkl. MwSt.

Versandkostenfrei per Post / DHL

Lieferzeit 2-3 Wochen

Produkt Anzahl: Gib den gewünschten Wert ein oder benutze die Schaltflächen um die Anzahl zu erhöhen oder zu reduzieren.
Kategorien:
Beschreibung
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.

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.

Über den Autor

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.

Spinellis has published two books in Addison-Wesley's "Effective Programming Series" in 2004 Code Reading: the Open Source Perspective, which received a Software Development Productivity Award in 2004 and has been translated into six other languages, and in 2006 Code Quality: the Open Source Perspective, which also received a Software Development Productivity Award in 2007. Both books use hundreds of examples from large open source systems, like the BSD Unix operating system, the Apache Web server, and the HSQLDB Java database engine, to demonstrate how developers can comprehend, maintain, and evaluate existing software code. Spinellis has also published more than 100 technical papers in journals and refereed conference proceedings. The article "A Survey of Peer-to-Peer Content Distribution Technologies" he co-authored in 2004 appeared in the list of ACM's most downloaded digital library articles throughout 2005 and 2006. He is a member of the editorial board of IEEE Software, authoring the regular "Tools of the Trade" column, and Springer's Journal in Computer Virology.

Spinellis is a member of the ACM, the IEEE, the Usenix Association, the Greek Computer Society, the Technical Chamber of Greece, a founding member of the Greek Internet User's Society, and an active Wikipedian. He is four times winner of the International Obfuscated C Code Contest and a member of the crew listed in the Usenix Association 1993 Lifetime Achievement Award.

Georgios Gousios is a researcher by profession, a software engineer by education and a software enthusiast by passion. Currently, he is working on his PhD thesis at the Athens University of Economics and Business, Greece. His research interests include virtual machines, operating systems, software engineering and software quality. He holds an MSc with distinction from the University of Manchester, UK.

Gousios has contributed code to various OSS projects and also worked in various R&D projects in both academic and commercial settings. He is currently the project manager, design authority and core development team member for SQO-OSS, a multinational EU-funded research project, expanding in 5 countries, being developed by 40 people and consisting of 65k lines of code. The project investigates novel ways for evaluating software quality.

In his academic life, Gousios has published 10 technical papers in referred conferences and journals. One of those, the article "A comparison of dynamic web content technologies of the Apache web server" won the best paper award at the 2002 System Administration and Networking Conference, being the first comprehensive study in its field.

Gousios is a member of the ACM, the IEEE, the Usenix Association and the Technical Chamber of Greece.

Inhaltsverzeichnis
Foreword;
Preface;
How This Book Is Organized;
Principles, Properties, and Structures;
Conventions Used in This Book;
Using Code Examples;
Safari® Books Online;
How to Contact Us;
Acknowledgments;
On Architecture;
Chapter 1: What Is Architecture?;
1.1 Introduction;
1.2 Creating a Software Architecture;
1.3 Architectural Structures;
1.4 Good Architectures;
1.5 Beautiful Architectures;
1.6 Acknowledgments;
1.7 References;
Chapter 2: A Tale of Two Systems: A Modern-Day Software Fable;
2.1 The Messy Metropolis;
2.2 Design Town;
2.3 So What?;
2.4 Your Turn;
2.5 References;
Enterprise Application Architecture;
Chapter 3: Architecting for Scale;
3.1 Introduction;
3.2 Context;
3.3 The Architecture;
3.4 Thoughts on the Architecture;
Chapter 4: Making Memories;
4.1 Capabilities and Constraints;
4.2 Workflow;
4.3 Architecture Facets;
4.4 User Response;
4.5 Conclusion;
4.6 References;
Chapter 5: Resource-Oriented Architectures: Being "In the Web";
5.1 Introduction;
5.2 Conventional Web Services;
5.3 The Web;
5.4 Resource-Oriented Architectures;
5.5 Data-Driven Applications;
5.6 Applied Resource-Oriented Architecture;
5.7 Conclusion;
Chapter 6: Data Grows Up: The Architecture of the Facebook Platform;
6.1 Introduction;
6.2 Creating a Social Web Service;
6.3 Creating a Social Data Query Service;
6.4 Creating a Social Web Portal: FBML;
6.5 Supporting Functionality for the System;
6.6 Summation;
Systems Architecture;
Chapter 7: Xen and the Beauty of Virtualization;
7.1 Introduction;
7.2 Xenoservers;
7.3 The Challenges of Virtualization;
7.4 Paravirtualization;
7.5 The Changing Shape of Xen;
7.6 Changing Hardware, Changing Xen;
7.7 Lessons Learned;
7.8 Further Reading;
Chapter 8: Guardian: A Fault-Tolerant Operating System Environment;
8.1 Tandem/16: Some Day All Computers Will Be Built Like This;
8.2 Hardware;
8.3 Mechanical Layout;
8.4 Processor Architecture;
8.5 The Interprocessor Bus;
8.6 Input/Output;
8.7 Process Structure;
8.8 Message System;
8.9 File System;
8.10 Folklore;
8.11 The Downside;
8.12 Posterity;
8.13 Further Reading;
Chapter 9: JPC: An x86 PC Emulator in Pure Java;
9.1 Introduction;
9.2 Proof of Concept;
9.3 The PC Architecture;
9.4 Java Performance Tips;
9.5 Four in Four: It Just Won't Go;
9.6 The Perils of Protected Mode;
9.7 Fighting A Losing Battle;
9.8 Hijacking the JVM;
9.9 Ultimate Flexibility;
9.10 Ultimate Security;
9.11 It Feels Better the Second Time Around;
Chapter 10: The Strength of Metacircular Virtual Machines: Jikes RVM;
10.1 Background;
10.2 Myths Surrounding Runtime Environments;
10.3 A Brief History of Jikes RVM;
10.4 Bootstrapping a Self-Hosting Runtime;
10.5 Runtime Components;
10.6 Lessons Learned;
10.7 References;
End-User Application Architectures;
Chapter 11: GNU Emacs: Creeping Featurism Is a Strength;
11.1 Emacs in Use;
11.2 Emacs's Architecture;
11.3 Creeping Featurism;
11.4 Two Other Architectures;
Chapter 12: When the Bazaar Sets Out to Build Cathedrals;
12.1 Introduction;
12.2 History and Structure of the KDE Project;
12.3 Akonadi;
12.4 ThreadWeaver;
Languages and Architecture;
Chapter 13: Software Architecture: Object-Oriented Versus Functional;
13.1 Overview;
13.2 The Functional Examples;
13.3 Assessing the Modularity of Functional Solutions;
13.4 An Object-Oriented View;
13.5 Assessing and Improving OO Modularity;
13.6 Agents: Wrapping Operations into Objects;
13.7 Acknowledgments;
13.8 References;
Chapter 14: Rereading the Classics;
14.1 Everything Is an Object;
14.2 Types Are Defined Implicitly;
14.3 Problems;
14.4 Brick and Mortar Architecture;
14.5 References;
Afterword;
Contributors;
Colophon;
Details
Erscheinungsjahr: 2009
Fachbereich: EDV
Genre: Importe, Informatik
Rubrik: Naturwissenschaften & Technik
Thema: Lexika
Medium: Taschenbuch
Inhalt: Einband - flex.(Paperback)
ISBN-13: 9780596517984
ISBN-10: 059651798X
UPC: 636920517986
EAN: 0636920517986
Sprache: Englisch
Einband: Kartoniert / Broschiert
Autor: Spinellis, Diomidis
Gousios, Georgios
Redaktion: Spinellis, Diomidis
Gousios, Georgios
Hersteller: O'Reilly Media
O'Reilly Media, Inc.
Verantwortliche Person für die EU: Smart Books, ein Imprint der 'dpunkt.verlag GmbH', Wieblinger Weg 17, D-69123 Heidelberg, hallo@dpunkt.de
Maße: 233 x 179 x 27 mm
Von/Mit: Diomidis Spinellis (u. a.)
Erscheinungsdatum: 24.02.2009
Gewicht: 0,715 kg
Artikel-ID: 132522864
Über den Autor

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.

Spinellis has published two books in Addison-Wesley's "Effective Programming Series" in 2004 Code Reading: the Open Source Perspective, which received a Software Development Productivity Award in 2004 and has been translated into six other languages, and in 2006 Code Quality: the Open Source Perspective, which also received a Software Development Productivity Award in 2007. Both books use hundreds of examples from large open source systems, like the BSD Unix operating system, the Apache Web server, and the HSQLDB Java database engine, to demonstrate how developers can comprehend, maintain, and evaluate existing software code. Spinellis has also published more than 100 technical papers in journals and refereed conference proceedings. The article "A Survey of Peer-to-Peer Content Distribution Technologies" he co-authored in 2004 appeared in the list of ACM's most downloaded digital library articles throughout 2005 and 2006. He is a member of the editorial board of IEEE Software, authoring the regular "Tools of the Trade" column, and Springer's Journal in Computer Virology.

Spinellis is a member of the ACM, the IEEE, the Usenix Association, the Greek Computer Society, the Technical Chamber of Greece, a founding member of the Greek Internet User's Society, and an active Wikipedian. He is four times winner of the International Obfuscated C Code Contest and a member of the crew listed in the Usenix Association 1993 Lifetime Achievement Award.

Georgios Gousios is a researcher by profession, a software engineer by education and a software enthusiast by passion. Currently, he is working on his PhD thesis at the Athens University of Economics and Business, Greece. His research interests include virtual machines, operating systems, software engineering and software quality. He holds an MSc with distinction from the University of Manchester, UK.

Gousios has contributed code to various OSS projects and also worked in various R&D projects in both academic and commercial settings. He is currently the project manager, design authority and core development team member for SQO-OSS, a multinational EU-funded research project, expanding in 5 countries, being developed by 40 people and consisting of 65k lines of code. The project investigates novel ways for evaluating software quality.

In his academic life, Gousios has published 10 technical papers in referred conferences and journals. One of those, the article "A comparison of dynamic web content technologies of the Apache web server" won the best paper award at the 2002 System Administration and Networking Conference, being the first comprehensive study in its field.

Gousios is a member of the ACM, the IEEE, the Usenix Association and the Technical Chamber of Greece.

Inhaltsverzeichnis
Foreword;
Preface;
How This Book Is Organized;
Principles, Properties, and Structures;
Conventions Used in This Book;
Using Code Examples;
Safari® Books Online;
How to Contact Us;
Acknowledgments;
On Architecture;
Chapter 1: What Is Architecture?;
1.1 Introduction;
1.2 Creating a Software Architecture;
1.3 Architectural Structures;
1.4 Good Architectures;
1.5 Beautiful Architectures;
1.6 Acknowledgments;
1.7 References;
Chapter 2: A Tale of Two Systems: A Modern-Day Software Fable;
2.1 The Messy Metropolis;
2.2 Design Town;
2.3 So What?;
2.4 Your Turn;
2.5 References;
Enterprise Application Architecture;
Chapter 3: Architecting for Scale;
3.1 Introduction;
3.2 Context;
3.3 The Architecture;
3.4 Thoughts on the Architecture;
Chapter 4: Making Memories;
4.1 Capabilities and Constraints;
4.2 Workflow;
4.3 Architecture Facets;
4.4 User Response;
4.5 Conclusion;
4.6 References;
Chapter 5: Resource-Oriented Architectures: Being "In the Web";
5.1 Introduction;
5.2 Conventional Web Services;
5.3 The Web;
5.4 Resource-Oriented Architectures;
5.5 Data-Driven Applications;
5.6 Applied Resource-Oriented Architecture;
5.7 Conclusion;
Chapter 6: Data Grows Up: The Architecture of the Facebook Platform;
6.1 Introduction;
6.2 Creating a Social Web Service;
6.3 Creating a Social Data Query Service;
6.4 Creating a Social Web Portal: FBML;
6.5 Supporting Functionality for the System;
6.6 Summation;
Systems Architecture;
Chapter 7: Xen and the Beauty of Virtualization;
7.1 Introduction;
7.2 Xenoservers;
7.3 The Challenges of Virtualization;
7.4 Paravirtualization;
7.5 The Changing Shape of Xen;
7.6 Changing Hardware, Changing Xen;
7.7 Lessons Learned;
7.8 Further Reading;
Chapter 8: Guardian: A Fault-Tolerant Operating System Environment;
8.1 Tandem/16: Some Day All Computers Will Be Built Like This;
8.2 Hardware;
8.3 Mechanical Layout;
8.4 Processor Architecture;
8.5 The Interprocessor Bus;
8.6 Input/Output;
8.7 Process Structure;
8.8 Message System;
8.9 File System;
8.10 Folklore;
8.11 The Downside;
8.12 Posterity;
8.13 Further Reading;
Chapter 9: JPC: An x86 PC Emulator in Pure Java;
9.1 Introduction;
9.2 Proof of Concept;
9.3 The PC Architecture;
9.4 Java Performance Tips;
9.5 Four in Four: It Just Won't Go;
9.6 The Perils of Protected Mode;
9.7 Fighting A Losing Battle;
9.8 Hijacking the JVM;
9.9 Ultimate Flexibility;
9.10 Ultimate Security;
9.11 It Feels Better the Second Time Around;
Chapter 10: The Strength of Metacircular Virtual Machines: Jikes RVM;
10.1 Background;
10.2 Myths Surrounding Runtime Environments;
10.3 A Brief History of Jikes RVM;
10.4 Bootstrapping a Self-Hosting Runtime;
10.5 Runtime Components;
10.6 Lessons Learned;
10.7 References;
End-User Application Architectures;
Chapter 11: GNU Emacs: Creeping Featurism Is a Strength;
11.1 Emacs in Use;
11.2 Emacs's Architecture;
11.3 Creeping Featurism;
11.4 Two Other Architectures;
Chapter 12: When the Bazaar Sets Out to Build Cathedrals;
12.1 Introduction;
12.2 History and Structure of the KDE Project;
12.3 Akonadi;
12.4 ThreadWeaver;
Languages and Architecture;
Chapter 13: Software Architecture: Object-Oriented Versus Functional;
13.1 Overview;
13.2 The Functional Examples;
13.3 Assessing the Modularity of Functional Solutions;
13.4 An Object-Oriented View;
13.5 Assessing and Improving OO Modularity;
13.6 Agents: Wrapping Operations into Objects;
13.7 Acknowledgments;
13.8 References;
Chapter 14: Rereading the Classics;
14.1 Everything Is an Object;
14.2 Types Are Defined Implicitly;
14.3 Problems;
14.4 Brick and Mortar Architecture;
14.5 References;
Afterword;
Contributors;
Colophon;
Details
Erscheinungsjahr: 2009
Fachbereich: EDV
Genre: Importe, Informatik
Rubrik: Naturwissenschaften & Technik
Thema: Lexika
Medium: Taschenbuch
Inhalt: Einband - flex.(Paperback)
ISBN-13: 9780596517984
ISBN-10: 059651798X
UPC: 636920517986
EAN: 0636920517986
Sprache: Englisch
Einband: Kartoniert / Broschiert
Autor: Spinellis, Diomidis
Gousios, Georgios
Redaktion: Spinellis, Diomidis
Gousios, Georgios
Hersteller: O'Reilly Media
O'Reilly Media, Inc.
Verantwortliche Person für die EU: Smart Books, ein Imprint der 'dpunkt.verlag GmbH', Wieblinger Weg 17, D-69123 Heidelberg, hallo@dpunkt.de
Maße: 233 x 179 x 27 mm
Von/Mit: Diomidis Spinellis (u. a.)
Erscheinungsdatum: 24.02.2009
Gewicht: 0,715 kg
Artikel-ID: 132522864
Sicherheitshinweis

Ähnliche Produkte

Ähnliche Produkte