Books

Short works

Books : reviews

Erich Gamma, Richard Helm, Ralph E. Johnson, John Vlissides.
Design Patterns: elements of reusable object-oriented software.
Addison Wesley. 1995

rating : 2 : great stuff

This was one of the first, and is still one of the best, books to take Christopher Alexander's ideas of a Pattern Language from architecture, and apply it to object oriented software design.

The book has a large introductory motivational example of how to use patterns in software design: the case study is that old chestnut, a text editor, brought to life by the skillful writing and innovative way of describing the design.

The bulk of the book is a Pattern Catalogue, documenting 23 creational, structural, and behavioural patterns. A beauty of Alexander's Pattern Language is that it provides a truely useful documentation structure, including the problem solved by the pattern, the solution itself, and the consequences and trade-offs of using the pattern.

Design Patterns is a must for the reference library of any software designer (object oriented or not). The range of patterns gives a new vocabulary for expressing designs, and a ready-made set of solutions to standard design problems.


1998: I added an (unlimited) 'undo' capability from scratch to the Formaliser structure editor, by instantiating one of the Patterns from this book. I was amazed that it took me less than two days: a testament both to the value of Patterns, and the productivity of Smalltalk.

Mohamed E. Fayad, Ralph E. Johnson, eds.
Domain-Specific Application Frameworks: frameworks experience by industry.
Wiley. 2000

Contents

David Doscher, Robert Hodges. SEMATECH CIM Framework. 2000
Amund Aarsten, Davide Brugali, Giuseppe Menga. A CIM Framework and Pattern Language. 2000
Hans Albrecht Schmid. OSEFA: Framework for Manufacturing. 2000
Hans Albrecht Schmid. Framework Reuse over Different CIM Subdomains. 2000
Davide Brugali, Giuseppe Menga, Amund Aarsten. A Case Study for Flexible Manufacturing Systems. 2000
Der Shung Yang, Uday Mehta. CEF: a Concurent Engineering Framework. 2000
William Boyle. Distributed Manufacturing Execution Systems Framework. 2000
Walter C. Dietrich Jr, Goodwin R. Chin, Brenda L. Dietrich, Thomas Robert Ervolina, J. P. Fasano, Robin Lougee-Heimer, Elizabeth J. Poole, Jung-Mu Tang, Robert H. Wang, Robert J. Wittrock, Danny C. Wong. Production Resource Manager (PRM) Framework. 2000
Sally M. Chan, Terence M. Lammers. Developing Domain Frameworks. 2000
Jan Bosch. Measurement Systems Frameworks. 2000
Peter Wegner. Compound Active Documents. 2000
Riccardo Capobianchi, Denis Carcagno, Alberto Coen-Porisini, Dino Mandriolf, Angelo Motzenti. Supervision and Control Systems Framework Architecture. 2000
Jean-Marc Jezequel, Jean-Lin Pacherie. EPEE: A Framework for Supercomputing. 2000
Yasser alSafadi. Frameworks in the Healthcare Domain. 2000
Benoit Garbinato, Rachid Guerraoui. The Bast Framework for Reliable Distributed Computing. 2000
Win-Bin See, Sao-Jie Chen. Object-Oriented Realtime System Framework. 2000
James Hu, Douglas C. Schmidt. JAWS: a Framework for High-Performance Web Servers. 2000
Wei-Tek Tsai. The Five-Module Framework for Internet Application Development. 2000
Hartmut Kocher, Joerge Schabernack. A Framework for Network Management Agents. 2000
Bruno Messmer, Kateel Vijayananda, Beat Liver. Telecommunication Network Planning Framework. 2000
Per Spilling, Chris Dee, Peter Beijderwellen. FIONA: a Framweowrk for Integrating Distributed C3I Applications. 2000
Lidia Fuentes, Jose M. Troya. MultiTel: Multimedia Telecommunication Services Framework. 2000
Mohamed E. Fayad, Jingkun Hu. Event Filter Framework and Applications. 2000
Rudolf K. Keller, Jean Tessier. Layla: Network Management Interfaces Framework. 2000
Walter Bischofberger, Kai-Uwe Maetzel. Beyond-Sniff: a Framework-Based Component. 2000
Donald R. Jones, Deborah K. Gracio, Karen L. Schuchardt, Thomas L. Keller, Hugh L. Taylor. Extensible Computational Chemistry Environment (ECCE). 2000
Brad A. Meyers, Richard G. McDaniel, Robert C. Miller. The Amulet Protoype-Instance Framework. 2000
Wenke Lee, Naser S. Barghouti. Jadve: Graph-Based Data Visualization Framework. 2000
James C. Stafford. Object Environment. 2000
Robert M. Cubert, Paul A. Fishwick. A Multimodeling Simulation Framework. 2000
Amr Yassin, Mohamed E. Fayad. Application Frameworks: a Survey. 2000