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

TitlePattern-Oriented Software Architecture Volume 1: A System of Patterns
Author
File Size11.8 MB
Total Pages157
Table of Contents
                            Cover
Forside
Indholdsfortegnelse
Kapitel 1. Patterns
	1.1 What is a Pattern?
	1.2 What Makes a Pattern?
Kapitel 2. Architectural Patterns
	2.1 Introduction
	2.2 From Mud to Structure
		Pattern: Layers
	2.3 Distributed Systems
		Pattern: Broker
	2.4 Interactive Systems
		Pattern: Model-View-Controler
Kapitel 3. Design Patterns
	3.1 Introduction
	3.2 Structural Decomposition
		Pattern: Whole Part
	3.3 Organisation of Work
		Pattern: Master-Slave
	3.4 Access Control
		Pattern: Proxy
Kapitel 4. Idioms
	4.1 Introduction
	4.2 What Can Idioms Provide?
	4.3 Idioms and Style
	4.4 Where Can You Find Idioms?
Index
important.pdf
		articlopedia.gigcities.com
                        
Document Text Contents
Page 2

SOFTWARE, ARCtilTECTURE~:

Frank Buschmann
Regine Meunier

Hans Rohnert

Peter Sommerlad
Michael Stal

of Siemens AG, Germany

JOHN WILEY & SONS

Chichester New York Brisbane Toronto Singapore

Page 78

130 .Architectural Patterns

Dynamics The following scenarios depict the dynamic behavior of MVC. For
simplicity only one view-controller pair is shown in the diagrams.

Scenario I shows how user input that results in changes to the model
triggers the change-propagation mechanism:

.The controller accepts user input in its event-handling procedure,
interprets the event, and activates a service procedure of the
model.

.The model performs the requested service. This results in a change
to its internal data.

.The model notifies all views and controllers registered with the
change-propagation mechanism of the change by calling their
update procedures.

.Each view requests the changed data from the model and re-
displays itself on the screen.

.Each registered controller retrieves data from the model to enable
or disable certain user functions. For example. enabling the menu
entry for saYing data can be a consequence of modifications to the
data of the model.

The original controller regains control and returns from its event-

handling procedure.

Colrtroller Model View

handleEvent
seIVice

notify

update~
display

II C getData ~

update ~

!.. getData=+{c

c

~

T-,-

Page 79

Model- View-Controller 131

Scenario D shows how the MVC triad is initialized. This code is usu-
ally located outside of the model, views and controllers, for example
in a main program. The view and controller initialization occurs sim-
ilarly for each view opened for the model. The following steps occur:

.The model instance is created, which then initializes its internal
data structures.

.A view object is created. This takes a reference to the model as a
parameter for its initialization.

.The view subscribes to the change-propagatioll mechanism of the
model by calling the attach procedure.

.The view continues initialization by creating its controller. It passes
references both to the model and to itself to the controller's
initialization procedure.

.The controller also subscribes to the change-propagatioll
mechanism by calling the attach procedure.

After initialization, the application begins to process events.

makeController

Controller
~ ~

I Model. View j initialize

Page 156

456 Index of Patterns

Facade 40,86,158,159,208,242,261,380
FactoryMethod 137.298,371,380
Flyweight 380
FoIWarder-Receiver 18, 121, 162, 182, 222, 232, 256, 268.272, 273, 306,

307-322, 337, 364, 366, 380, 399

Half-Sync/Half-Async ...
Handle- Body.

162
..15. 366

349
...287, 288, 367, 380

261,299,380

Indented Control Flow. ..
Interpreter Iterator

Layers. .26, 29, 31-51, 69, 70, 85, 120, 183, 192, 199, 364, 366, 367, 380, 398, 400

MainProgramandSubroutines 378
Master-Slave 222,243,244,245-260,366,380
Mediator , 121, 160,233,244,292,299,380
Memento. 276, 283, 380
Meta-LevelArchitecture 193
Microkemel. 26, 38,47,51,98, 169, 171-192,219,366,380
Model-View-Controller. 3, 9, 10, 12, 16, 17, 22, 26, 123, 125-143,

167,292,303,366,369,371,380,391,400
MVC see Model-View-Controller

260

206

13. 223. 306. 339

193

Object Group. Objectlfier Observer Open Im plementation ..

PAC see Presentat1on-Abstractlon-Control
P1pes and Filters. 26,29,41,53-70,86,98,365,366,367,380,391,400
Presentatlon-Abstract1on-Control. ...26, 51, 123, 143, 145-168, 303,366,369,380
Prototype 284,380
Proxy. .18,23, 104, 105, 113,121, 162,186, 222,256,261,263-275,366,375,380
Publisher-Subscriber. 13, 16,41, 127, 132, 160, 161,223, 298,306,339-343,

366,371,380

Reactor 41, 186,318,341,366
Reference Counting Idiom. 357
Reflection. 26,40,85, 112, 115, 169, 191, 193-219,366, 380,399

Page 157

Singleton.. 208,253,286.299,364,380
Singleion (C++) 350
Singleton(Sma1lta1k) 351
State 206,380
Strategy 23, 40, 84, 206, 209. 211, 252, 259, 299, 380

Template Method.

View Handler. 138, 157, 222, 276, 291-303, 366, 371, 380
Visitor 206,211,380

Whole-Part 208, 222, 224, 225-242, 272, 317, 366, 367, 368, 380, 399, 400
Window Place. 2

Similer Documents