Pattern Languages of Program Design 2

Pattern Languages of Program Design 2

by John Vlissides, James O. Coplien, Norman L. Kerth
     
 

ISBN-10: 0201895277

ISBN-13: 9780201895278

Pub. Date: 06/14/1996

Publisher: Addison-Wesley

"Having expertise is one thing; conveying it to others is quite another. Patterns do just that."

Patterns are a literary form with roots in literate programming, in a design movement of the same name in contemporary architecture, and in the practices common to the ageless literature of any culture.

This volume, with contributions from the

Overview

"Having expertise is one thing; conveying it to others is quite another. Patterns do just that."

Patterns are a literary form with roots in literate programming, in a design movement of the same name in contemporary architecture, and in the practices common to the ageless literature of any culture.

This volume, with contributions from the biggest names in the patterns community, is the second in a series documenting patterns for professional software developers. These patterns capture solutions to a plethora of recurring problems in software design and development, including language-specific patterns and idioms; general- and special-purpose patterns; architectural patterns; process and organizational patterns; expositional patterns; and patterns for concurrent programming, distributed systems, and reactive systems. This new collection not only reveals secrets of great software professionals but also makes those secrets easy to apply to your own work.

0201895277B04062001

Product Details

ISBN-13:
9780201895278
Publisher:
Addison-Wesley
Publication date:
06/14/1996
Series:
Software Patterns Series
Edition description:
Older Edition
Pages:
605
Product dimensions:
7.30(w) x 9.10(h) x 1.30(d)

Table of Contents

I. LANGUAGE-SPECIFIC PATTERNS AND IDIOMS.

1. Localized Ownership: Managing Dynamic Objects in C++.

2. Lazy Optimization: Patterns for Efficient Smalltalk Programming.

3. Partitioning Smalltalk Code into ENVY/Developer Components.

II. GENERAL-PURPOSE PATTERNS.

4. Command Processor.

5. Implementation Patterns for the Observer Pattern.

6. Patterns for Encapsulating Class Trees.

7. The Proxy Design Pattern Revisited.

8. MOODS: Models for Object-Oriented Design of State.

9. Shopper.

III. SPECIAL-PURPOSE PATTERNS.

10. Detachable Inspector/Removable: A Structural Pattern for Designing Transparent Layered Services.

11. Design Patterns for Object-Oriented Hypermedia Applications.

12. Organizational Multiplexing: Patterns for Processing Satellite Telemetry with Distributed Teams.

13. Backup Pattern: Designing Redundancy in Object-Oriented Software.

14. Crossing Chasms: A Pattern Language for Object-RDBMS Integration.

15. Transactions and Accounts.

IV. ARCHITECTURAL PATTERNS.

16. Some Patterns for Software Architectures.

17. Reflection.

18. Evolution, Architecture, and Metamorphosis.

V. PROCESS AND ORGANIZATION.

19. Prioritizing Forces in Software Design.

20. Decision Deferral and Capture Pattern Language.

21. Organizational Patterns for Teams.

22. Accountability and Organizational Structures.

23. EPISODES: A Pattern Language of Competitive Development.

VI. EXPOSITION.

24. Patterns for Classroom Education.

25. Demo Prep: A Pattern Language for the Preparation of Software Demonstrations.

26. A Pattern Language for an Essay-Based Web Site.

VII. CONCURRENT PROGRAMMING/DISTRIBUTED SYSTEMS.

27. Half-Sync/Half-Async: An Architectural Pattern for Efficient and Well-Structured Concurrent I/O.

28. Resource Exchanger: A Behavioral Pattern for Low-Overhead Concurrent Resource Management.

29. The Client-Dispatcher-Server Design Pattern.

30. Active Object: An Object Behavioral Pattern for Concurrent Programming.

31. Selecting Locking Designs for Parallel Programs.

VIII. REACTIVE SYSTEMS.

32. Object-Oriented Design Patterns in Reactive Systems.

33. Fault-Tolerant Telecommunication System Patterns.

34. Improving Responsiveness in Interactive Applications Using Queues.

35. A Pattern Language for Improving the Capacity of Reactive Systems. 0201895277T04062001

Customer Reviews

Average Review:

Write a Review

and post it to your social network

     

Most Helpful Customer Reviews

See all customer reviews >