Back TTU Subject Area: Programming Languages and Paradigms in CIDEC Library.

cover image PATTERN LANGUAGES OF PROGRAM DESIGN

eds.
James O. COPLIEN
is a member of the Software Production Research Department at AT&T Bell Laboratories in Naperville, Illinois. His research interests focus on multiparadigm development methods and organizational anthropology for software development processes.
and
Douglas C. SCHMIDT
is a faculty member at the computer science department at Washington University in St. Louis, Missouri. His research interests focus on experimental techniques to develop object-oriented parallel communication systems for high-speed networks.

Publisher : Addison-Wesley Publishing Co. - Reading, Mass.

Bibliographic :

DESCRIPTION :

The first conference on Pattern Languages of Program Design (PLoP) was a watershed event that gave a public voice to the software design pattern movement. Seventy software professionals from around the world worked together to capture and refine software experience that exemplifies the elusive quality called "good design." This volume is the result of that work--a broad compendium of this new genre of software literature.

Patterns are a literary form that take inspiration from literate programming, from a design movement of the same name in contemporary architecture, and from the practices common to the ageless literature of any culture. The goal of pattern literature is to help programmers resolve the common difficult problems encountered in design and programming. Spanning disciplines as broad as client/server programming, distributed processing, organizational design, software reuse, and human interface design, this volume encodes design expertise that too often remains locked in the minds of expert architects. By capturing these expert practices as problem-solution pairs supported with a discussion of the forces that shape alternative solution choices, and rationales that clarify the architects' intents, these patterns convey the essence of great software designs.

CONTENTS :

"Night Patterns" A Poem by Richard Gabriel
Introduction - Ward Cunningham, Ralph Johnson

PREFACE

PART ONE: Frameworks & Components. * Functionality Ala-carte (Sam Adams) * A Pattern Language for Tool Construction and Integration Based on the Tools and Materials Metaphor (Dirk Riehle, Heinz Zuellighoven) * Flexible Command Interpreter (Norbert Portner) * New Clients with Old Servers: A Pattern Language for Client/Server Frameworks (Kirk Wolf, Chamond Liu)

PART TWO: Systems & Distributed Processing. * A Generative Pattern Language for Distributed Processing (Dennis DeBruler) * G++: A Pattern Language for the Object Oriented Design of Concurrent and Distributed Information Systems with Applications to Computer Integrated Manufacturing (Gabriele Elia, Amund Aarsten, Giuseppe Menga) * A Pattern for Generating a Layered Architecture (Barry Rubel) * Pattern: Half Object + Protocol (Gerard Meszaros) * The Master-Slave Pattern (Frank Buschmann)

PART THREE: Business Objects. * The CHECKS Pattern Language of Information Integrity (Ward Cunningham) * Account Number: A Pattern (William Wake) * STARS: A Pattern Language for Query-Optimized Schema (Steve Peterson)

PART FOUR: Process and Organization. * A Development Process Generative Pattern Language (James Coplien) * Consolidation and Aggregation Patterns that Support Evolution and Reuse (Brian Foote, William Opdyke) * RAPEL: A Requirements Analysis Pattern Language for Object Oriented Development (Bruce Whitenack) * Caterpillar's Fate: A Pattern Language for Transformation from Analysis to Design (Norman Kerth)

PART FIVE: Design Patterns and Catalogs. * A System of Patterns (Frank Buschmann, Regine Meunier) * Relationships Between Design Patterns (Walter Zimmer) * Discovering Patterns in Existing Applications (Robert Martin) * Implementing Patterns (Jiri Soukup)

PART SIX: Architecture & Communication. * Streams: A Pattern for "Pull-Driven" Processing (Stephen Edwards) * The Pipes and Filters Architecture (Regine Meunier) * Pattern-based Integration Architectures (Diane Mularz) * Patterns of Software Architectures (Mary Shaw)

PART SEVEN: Object Usage and Style. * Understanding and Using ValueModels (Bobby Woolf) * Pattern: Client-specified Self (Panu Viljamaa) * Reusability Through Self-Encapsulation (Ken Auer)

PART EIGHT Events & Event Handlers. * Handlers for Separating Assembly and Processing (Steve Berczuk) * Reactor: An Object Behavioral Pattern for Concurrent Event Demultiplexing and Dispatch (Douglas Schmidt) * Patterns of Events (Alexander Ran)

Includes bibliographical references and index.


Back Top Changed 24/01/1997. Comments: monika@cs.ioc.ee