Pattern-Oriented Software Architecture Volume 1: A System of Patterns by Michael Stal - Presentation Transcript
Pattern-Oriented Software
Architecture Volume 1: A System of
Patterns by Michael Stal
Amazing Book
Pattern-Oriented Software Architecture: A System of Patterns looks at
how patterns occur on three different levels--in software architecture, in
everyday design, and in idioms (which describe how a particular design
pattern is implemented in a programming language like C++). This
synthetic approach is a little theoretical at times, but the authors also
present over a dozen patterns and provide real-world examples wherever
possible. For architectural patterns, the authors look at the Layers
pattern, used in operating systems such as Windows NT and virtual
machines. They also consider Pipes and Filters, which process streams of
data. (This pattern, the authors point out, is a lynchpin of Unix.) Their
Blackboard pattern shows how a complex problem, such as image or
speech recognition can be broken up into smaller, specialized subsystems
that work together to solve a problem. (For recognizing words from a raw
waveform input, a Blackboard approach might have separate processes to
find phonemes, then words, then sentences.) This book also looks at
todays distributed systems in considering the Broker pattern, which is
used on the Internet and in Microsofts OLE technology. This section also
presents several powerful patterns for building effective graphical user
interfaces, such as Model-View-Controller. The authors define several
well-known design patterns, such as the Proxy and Command patterns,
and also basic, far-reaching patterns, such as Whole-Part and Master-
Slave, which are widely used throughout computing. Their survey ends
with a discussion on the way objects can communicate (using such
patterns as Forwarder-Receiver, Client-Dispatcher-Server, and Publisher-
Subscriber), which many developers will recognize as familiar patterns,
but are codified here as official patterns. The book then discusses some
idioms in C++ and a more far-reaching role for patterns in software design
and architecture. By fitting patterns into traditional software engineering
practices, the authors of Pattern-Oriented Software Architecture
successfully argue that the role for patterns will only continue to diversify
and enrich tomorrows software engineering tools and methodologies.
--Richard Dragan
Personal Review: Pattern-Oriented Software Architecture
Volume 1: A System of Patterns by Michael Stal
Second best isn't bad when the #1 book changed forever the way software
architecture is talked about. GoF is not only well-written, but it covers all
the basic, most-used patterns. Everybody thereafter is going to have to
either re-hash GoF, criticize it, or come up with new patterns which are not
as fundamental.
This book is full of new patterns, and fortunately they are good ones:
Command, Broker, Layers and worth the price of the book in itself
Presentation-Abstraction-Controller.
PAC can be seen as a generalization and extension of
Model/View/Controller. The Abstraction is the domain-specific part of the
architecture, effectively the Model. The Presentation exposes the Model in
some interesting way, either as a user-interface in which case it is a View,
or as an API, in which case the Presentation becomes a new Abstraction
used by the next level up. The Controller is left with the job of coordinating
the Presentation and the Model. The key to the pattern is that PAC agents
can be built up into layers with the Presentation API of each lower agent
creating a higher abstraction for the next level. Thus PAC becomes MVC
for all or your architecture, not just the UI.
The book goes into this at length and adds useful discussion of MVC.
Highly recommended.
For More 5 Star Customer Reviews and Lowest Price:
Pattern-Oriented Software Architecture Volume 1: A System of Patterns by Michael Stal
5 Star Customer Reviews and Lowest Price!
Second best isn't bad when the #1 book changed fore more
Second best isn't bad when the #1 book changed forever the way software architecture is talked about. GoF is not only well-written, but it covers all the basic, most-used patterns. Everybody thereafter is going to have to either re-hash GoF, criticize it, or come up with new patterns which are not as fundamental.
This book is full of new patterns, and fortunately they are good ones: Command, Broker, Layers and worth the price of the book in itself Presentation-Abstraction-Controller.
PAC can be seen as a generalization and extension of Model/View/Controller. The Abstraction is the domain-specific part of the architecture, effectively the Model. The Presentation exposes the Model in some interesting way, either as a user-interface in which case it is a View, or as an API, in which case the Presentation becomes a new Abstraction used by the next level up. The Controller is left with the job of coordinating the Presentation and the Model. The key to the pattern is that PAC agents can be built up into layers with the Presentation API of each lower agent creating a higher abstraction for the next level. Thus PAC becomes MVC for all or your architecture, not just the UI.
The book goes into this at length and adds useful discussion of MVC. Highly recommended. less
0 comments
Post a comment