Pattern-Oriented Software Architecture

Short description: Series of computer programming books

This article is in list format, but may read better as prose. You can help by converting this article, if appropriate. Editing help is available. (March 2020)

|

Pattern-Oriented Software Architecture is a series of software engineering books describing software design patterns.

Pattern-Oriented Software Architecture Volume 1: A System of Patterns

Author| Frank Buschmann, Regine Meunier, Hans Rohnert, Peter Sommerlad and Michael Stal
Language| English
Subject| Computer programming
Published| 1996
ISBN| 978-0471958697

Pattern-Oriented Software Architecture Volume 2: Patterns for Concurrent and Networked Objects

Author| Douglas C. Schmidt, Michael Stal, Hans Rohnert, Frank Buschmann
Language| English
Subject| Computer programming
Published| 2000
ISBN| 978-0471606956

Pattern-Oriented Software Architecture Volume 3: Patterns for Resource Management

Author| Michael Kircher, Prashant Jain
Language| English
Subject| Computer programming
Published| 2004
ISBN| 978-0470845257

Pattern-Oriented Software Architecture Volume 4: A Pattern Language for Distributed Computing

Author| Frank Buschmann, Kevlin Henney, Douglas C. Schmidt
Language| English
Subject| Computer programming
Published| 2007
ISBN| 978-0470059029

Pattern-Oriented Software Architecture Volume 5: On Patterns and Pattern Languages

Author| Frank Buschmann, Kevlin Henney, Douglas C. Schmidt
Language| English
Subject| Computer programming
Published| 2007
ISBN| 978-0471486480

## Reception

David E. DeLano of C++ Report praised the first volume, writing, "Overall this text is good and I recommend it as an addition to any collection of books on patterns." He said "some of the language and grammar usage feels awkward to the reader" and some of the book has "stiffness and flow problems".[1] Ian Graham reviewed the first volume in the Journal of Object-Oriented Programming.[2] DBMS columnist David S. Linthicum found the first volume to be "the best book on patterns for application architects", while Bin Yang of JavaWorld thought it had "many interesting architecture and design patterns".[3][4]

ACCU writer Ian Glassborow reviewed the second volume, writing, "This book is one of the more important contributions to the literature on 'patterns' and deserves to become a standard text on its specified area of interest."[5] The Software Engineering Institute author Paul Clemente found the first two volumes to be "the best-known catalog of architectural patterns".[6] Regarding the third volume, D. Murali recommended that software engineers should follow the "eager acquisition" pattern.[7]

## References

1. ↑ DeLano, David E. (December 1996). "C++ Report book review of Pattern-Oriented Software Architecture: A System of Patterns". in Rising, Linda. The Patterns Handbook: Techniques, Strategies, and Applications. Cambridge: Cambridge University Press. pp. 518–521. ISBN 0-521-64818-1. https://archive.org/details/patternshandbook0000unse/page/518/. Retrieved 2024-12-22.
2. ↑ Graham, Ian (October 1997). "Pattern-oriented software architecture (Book Review)". Journal of Object-Oriented Programming 10 (6): 75–76. EBSCOhost 500514125. ISSN 0896-8438.
3. ↑ Linthicum, David S. (1997-10-01). "Patterns demystified. (integrating patterns into software development cycles) (Application Architect) (Technology Tutorial)(Column)". DMBS (M&T Publishing) 10 (11). Factiva dbms000020011006dta10005t. ISSN 1041-5173.
4. ↑ Yang, Bin (2001-05-01). "E++: A pattern language for Java Internet applications, Part 1; Weaving the design patterns together". JavaWorld. Factiva javw000020010711dx510001c.
5. ↑ Glassborow, Francis (October 2000). "Review: Pattern-Oriented Software Architecture". ACCU. Archived from the original on 2024-12-22. https://web.archive.org/web/20241222100745/https://accu.org/bookreviews/2000/glassborow_1219/. Retrieved 2024-12-22.
6. ↑ Clemente, Paul (July 2005). "Comparing the SEI's Views and Beyond Approach for Documenting Software Architecture with ANSI-IEEE 1471-2000". Software Engineering Institute. https://archive.org/details/DTIC_ADA441291/page/4/. Retrieved 2024-12-22.
7. ↑ Murali, D. (2005-06-06). "Control is the key to the Net". Business Line. Factiva BSNLNE0020050605e16600021. Archived from the original on 2024-12-22. https://archive.today/20241222094647/https://infoweb.newsbank.com/apps/news/document-view?p=WORLDNEWS&docref=news/10A9109FCA24CBB9&f=basic. Retrieved 2024-12-22.

* v
* t
* e

Software design patterns

Creational|

* Abstract factory
* Builder
* Dependency injection
* Factory method
* Lazy initialization
* Multiton
* Object pool
* Prototype
* RAII
* Singleton

Structural|

* Adapter
* Bridge
* Composite
* Decorator
* Delegation
* Facade
* Flyweight
* Front controller
* Marker interface
* Module
* Proxy
* Twin

Behavioral|

* Blackboard
* Chain of responsibility
* Command
* Interpreter
* Iterator
* Mediator
* Memento
* Null object
* Observer
* Servant
* Specification
* State
* Strategy
* Template method
* Visitor

Functional|

* Closure
* Currying
* Function composition
* Functor
* Monad
* Generator

Concurrency|

* Active object
* Actor
* Balking
* Barrier
* Binding properties
* Coroutine
* Compute kernel
* Double-checked locking
* Event-based asynchronous
* Fiber
* Futex
* Futures and promises
* Guarded suspension
* Immutable object
* Join
* Lock
* Messaging
* Monitor
* Nuclear
* Proactor
* Reactor
* Read write lock
* Scheduler
* Thread pool
* Thread-local storage

Architectural|

* ADR
* Active record
* Broker
* Client–server
* CBD
* DAO
* DTO
* DDD
* ECB
* ECS
* EDA
* Front controller
* Identity map
* Interceptor
* Implicit invocation
* Inversion of control
* Model 2
* MOM
* Microservices
* MVA
* MVC
* MVP
* MVVM
* Monolithic
* Multitier
* Naked objects
* ORB
* P2P
* Publish–subscribe
* PAC
* REST
* SOA
* Service locator
* SN
* SBA
* Specification

Cloud
Distributed|

* Ambassador
* Anti-Corruption Layer
* Bulkhead
* Cache-Aside
* Circuit Breaker
* CQRS
* Compensating Transaction
* Competing Consumers
* Compute Resource Consolidation
* Event Sourcing
* External Configuration Store
* Federated Identity
* Gatekeeper
* Index Table
* Leader Election
* MapReduce
* Materialized View
* Pipes
* Filters
* Priority Queue
* Publisher-Subscriber
* Queue-Based Load Leveling
* Retry
* Scheduler Agent Supervisor
* Sharding
* Sidecar
* Strangler
* Throttling
* Valet Key

Other|

* Business delegate
* Composite entity
* Intercepting filter
* Lazy loading
* Mangler
* Mock object
* Type tunnel
* Method chaining

Books|

* Design Patterns
* Enterprise Integration Patterns

People|

* Christopher Alexander
* Erich Gamma
* Ralph Johnson
* John Vlissides
* Grady Booch
* Kent Beck
* Ward Cunningham
* Martin Fowler
* Robert Martin
* Jim Coplien
* Douglas Schmidt
* Linda Rising

Communities|

* The Hillside Group
* The Portland Pattern Repository

0.00

(0 votes)

Original source: https://en.wikipedia.org/wiki/Pattern-Oriented Software Architecture. Read more

|

Retrieved from "https://handwiki.org/wiki/index.php?title=Pattern-Oriented_Software_Architecture&oldid=3980269"
*[v]: View this template
*[t]: Discuss this template
*[e]: Edit this template