Вы находитесь на странице: 1из 15

Patrones de diseo en Java

Los 23 modelos de diseo: descripcin y soluciones ilustradas en UML 2 y Java

Introduccin a los patrones de diseo


1. Design patterns o patrones de diseo

15

2. Descripcin de los patrones de diseo

17

3. Catlogo de patrones de diseo

18

4. Cmo escoger y utilizar un patrn de diseo para resolver un problema

20

5. Organizacin del catlogo de patrones de diseo

23

Caso de estudio: venta online de vehculos


1. Descripcin del sistema

25

2. Cuaderno de carga

25

3. Uso de patrones de diseo

27

Introduccin a los patrones de construccin


1. Presentacin

29

2. Problemas ligados a la creacin de objetos

30

2.1 Problemtica
2.2 Soluciones propuestas por los patrones de construccin

30
31

El patrn Abstract Factory

www.ediciones-eni.com

Ediciones ENI

1/15

Patrones de diseo en Java


Los 23 modelos de diseo: descripcin y soluciones ilustradas en UML 2 y Java

1. Descripcin

33

2. Ejemplo

33

3. Estructura

36

3.1 Diagrama de clases


3.2 Participantes
3.3 Colaboraciones

36
37
37

4. Dominios de uso

37

5. Ejemplo en Java

38

El patrn Builder
1. Descripcin

45

2. Ejemplo

45

3. Estructura

47

3.1 Diagrama de clases


3.2 Participantes
3.3 Colaboraciones

47
47
48

4. Dominios de uso

49

5. Ejemplo en Java

49

El patrn Factory Method

www.ediciones-eni.com

Ediciones ENI

2/15

Patrones de diseo en Java


Los 23 modelos de diseo: descripcin y soluciones ilustradas en UML 2 y Java

1. Descripcin

55

2. Ejemplo

55

3. Estructura

57

3.1 Diagrama de clases


3.2 Participantes
3.3 Colaboraciones

57
58
58

4. Dominios de uso

58

5. Ejemplo en Java

59

El patrn Prototype
1. Descripcin

63

2. Ejemplo

63

3. Estructura

66

3.1 Diagrama de clases


3.2 Participantes
3.3 Colaboracin

66
67
67

4. Dominios de uso

67

5. Ejemplo en Java

68

El patrn Singleton

www.ediciones-eni.com

Ediciones ENI

3/15

Patrones de diseo en Java


Los 23 modelos de diseo: descripcin y soluciones ilustradas en UML 2 y Java

1. Descripcin

73

2. Ejemplo

73

3. Estructura

74

3.1 Diagrama de clases


3.2 Participante
3.3 Colaboracin

74
75
75

4. Dominio de uso

75

5. Ejemplos en Java

75

5.1 Documentacin en blanco


5.2 La clase Comercial

75
77

Introduccin a los patrones de estructuracin


1. Presentacin

81

2. Composicin esttica y dinmica

82

El patrn Adapter
1. Descripcin

85

2. Ejemplo

85

3. Estructura

87

3.1 Diagrama de clases


3.2 Participantes

www.ediciones-eni.com

87
87

Ediciones ENI

4/15

Patrones de diseo en Java


Los 23 modelos de diseo: descripcin y soluciones ilustradas en UML 2 y Java

3.3 Colaboraciones

88

4. Dominios de aplicacin

88

5. Ejemplo en Java

89

El patrn Bridge
1. Descripcin

93

2. Ejemplo

93

3. Estructura

96

3.1 Diagrama de clases


3.2 Participantes
3.3 Colaboraciones

96
97
97

4. Dominios de aplicacin

97

5. Ejemplo en Java

98

El patrn Composite
1. Descripcin

103

2. Ejemplo

103

3. Estructura

105

3.1 Diagrama de clases


3.2 Participantes
3.3 Colaboraciones

www.ediciones-eni.com

105
106
107

Ediciones ENI

5/15

Patrones de diseo en Java


Los 23 modelos de diseo: descripcin y soluciones ilustradas en UML 2 y Java

4. Dominios de aplicacin

108

5. Ejemplo en Java

108

El patrn Decorator
1. Descripcin

111

2. Ejemplo

111

3. Estructura

116

3.1 Diagrama de clases


3.2 Participantes
3.3 Colaboraciones

116
117
117

4. Dominios de aplicacin

117

5. Ejemplo en Java

118

El patrn Facade
1. Descripcin

121

2. Ejemplo

121

3. Estructura

124

3.1 Diagrama de clases


3.2 Participantes
3.3 Colaboraciones

www.ediciones-eni.com

124
125
125

Ediciones ENI

6/15

Patrones de diseo en Java


Los 23 modelos de diseo: descripcin y soluciones ilustradas en UML 2 y Java

4. Dominios de aplicacin

126

5. Ejemplo en Java

127

El patrn Flyweight
1. Descripcin

131

2. Ejemplo

131

3. Estructura

134

3.1 Diagrama de clases


3.2 Participantes
3.3 Colaboraciones

134
134
135

4. Dominio de aplicacin

135

5. Ejemplo en Java

135

El patrn Proxy
1. Descripcin

139

2. Ejemplo

139

3. Estructura

142

3.1 Diagrama de clases


3.2 Participantes
3.3 Colaboraciones

www.ediciones-eni.com

142
143
144

Ediciones ENI

7/15

Patrones de diseo en Java


Los 23 modelos de diseo: descripcin y soluciones ilustradas en UML 2 y Java

4. Dominios de aplicacin

144

5. Ejemplo en Java

144

Introduccin a los patrones de comportamiento


1. Presentacin

147

2. Distribucin por herencia o por delegacin

148

El patrn Chain of Responsibility


1. Descripcin

151

2. Ejemplo

151

3. Estructura

154

3.1 Diagrama de clases


3.2 Participantes
3.3 Colaboraciones

154
154
155

4. Dominios de aplicacin

155

5. Ejemplo en Java

155

El patrn Command
1. Descripcin

www.ediciones-eni.com

159

Ediciones ENI

8/15

Patrones de diseo en Java


Los 23 modelos de diseo: descripcin y soluciones ilustradas en UML 2 y Java

2. Ejemplo

159

3. Estructura

163

3.1 Diagrama de clases


3.2 Participantes
3.3 Colaboraciones

163
164
164

4. Dominios de aplicacin

165

5. Ejemplo en Java

166

El patrn Interpreter
1. Descripcin

171

2. Ejemplo

171

3. Estructura

174

3.1 Diagrama de clases


3.2 Participantes
3.3 Colaboraciones

174
175
175

4. Dominios de aplicacin

176

5. Ejemplo en Java

176

El patrn Iterator
1. Descripcin

www.ediciones-eni.com

183

Ediciones ENI

9/15

Patrones de diseo en Java


Los 23 modelos de diseo: descripcin y soluciones ilustradas en UML 2 y Java

2. Ejemplo

183

3. Estructura

186

3.1 Diagrama de clases


3.2 Participantes
3.3 Colaboraciones

186
187
187

4. Dominios de aplicacin

187

5. Ejemplo en Java

188

El patrn Mediator
1. Descripcin

193

2. Ejemplo

193

3. Estructura

197

3.1 Diagrama de clases


3.2 Participantes
3.3 Colaboraciones

197
197
198

4. Dominios de aplicacin

198

5. Ejemplo en Java

198

El patrn Memento
1. Descripcin

www.ediciones-eni.com

205

Ediciones ENI

10/15

Patrones de diseo en Java


Los 23 modelos de diseo: descripcin y soluciones ilustradas en UML 2 y Java

2. Ejemplo

205

3. Estructura

208

3.1 Diagrama de clases


3.2 Participantes
3.3 Colaboraciones

208
208
209

4. Dominios de aplicacin

209

5. Ejemplo en Java

209

El patrn Observer
1. Descripcin

213

2. Ejemplo

213

3. Estructura

216

3.1 Diagrama de clases


3.2 Participantes
3.3 Colaboraciones

216
216
217

4. Dominios de aplicacin

217

5. Ejemplo en Java

217

El patrn State
1. Descripcin

www.ediciones-eni.com

221

Ediciones ENI

11/15

Patrones de diseo en Java


Los 23 modelos de diseo: descripcin y soluciones ilustradas en UML 2 y Java

2. Ejemplo

221

3. Estructura

224

3.1 Diagrama de clases


3.2 Participantes
3.3 Colaboraciones

224
224
225

4. Dominios de aplicacin

225

5. Ejemplo en Java

225

El patrn Strategy
1. Descripcin

231

2. Ejemplo

231

3. Estructura

234

3.1 Diagrama de clases


3.2 Participantes
3.3 Colaboraciones

234
234
235

4. Dominios de aplicacin

235

5. Ejemplo en Java

235

El patrn Template Method


1. Descripcin

www.ediciones-eni.com

241

Ediciones ENI

12/15

Patrones de diseo en Java


Los 23 modelos de diseo: descripcin y soluciones ilustradas en UML 2 y Java

2. Ejemplo

241

3. Estructura

245

3.1 Diagrama de clases


3.2 Participantes
3.3 Colaboraciones

245
245
246

4. Dominios de aplicacin

246

5. Ejemplo en Java

246

El patrn Visitor
1. Descripcin

249

2. Ejemplo

249

3. Estructura

253

3.1 Diagrama de clases


3.2 Participantes
3.3 Colaboraciones

253
254
254

4. Dominios de aplicacin

255

5. Ejemplo en Java

255

Composicin y variacin de patrones


1. Prembulo

www.ediciones-eni.com

261

Ediciones ENI

13/15

Patrones de diseo en Java


Los 23 modelos de diseo: descripcin y soluciones ilustradas en UML 2 y Java

2. El patrn Pluggable Factory

262

2.1 Introduccin
2.2 Estructura
2.3 Ejemplo en Java

262
267
268

3. Reflective Visitor

275

3.1 Discusin
3.2 Estructura
3.3 Ejemplo en Java

275
279
281

4. El patrn Multicast

288

4.1 Descripcin y ejemplo


4.2 Estructura
4.3 Ejemplo en Java
4.4 Discusin: comparacin con el patrn Observer

288
291
292
299

El patrn composite MVC


1. Introduccin al problema

301

2. El patrn composite MVC

302

3. El framework Vaadin

308

4. Ejemplo en Java

310

4.1 Introduccin
4.2 Arquitectura
4.3 Estudio del cdigo

310
311
312

Los patrones en el diseo de aplicaciones

www.ediciones-eni.com

Ediciones ENI

14/15

Patrones de diseo en Java


Los 23 modelos de diseo: descripcin y soluciones ilustradas en UML 2 y Java

1. Modelizacin y diseo con patrones de diseo

325

2. Otras aportaciones de los patrones de diseo

328

2.1 Una base de datos de conocimiento comn


2.2 Un conjunto recurrente de tcnicas de diseo
2.3 Una herramienta pedaggica del enfoque orientado a objetos

328
328
328

Ejercicios
1. Enunciado de los ejercicios

329

1.1 Creacin de tarjetas de pago


1.1.1 Creacin en funcin del cliente
1.1.2 Creacin con ayuda de una fbrica
1.2 Autorizacin de tarjetas de pago
1.3 Sistema de archivos
1.4 Navegador grfico de objetos
1.5 Estados de la vida profesional de una persona
1.6 Cach de un diccionario persistente de objetos
2. Correccin de los ejercicios

329
329
330
330
330
331
332
332
335

2.1 Creacin de tarjetas de pago


2.1.1 Creacin en funcin del cliente
2.1.2 Creacin con ayuda de una fbrica
2.2 Autorizacin de tarjetas de pago
2.3 Sistema de archivos
2.4 Navegador grfico de objetos
2.5 Estados de la vida profesional de una persona
2.6 Cach de un diccionario persistente de objetos

335
335
336
337
337
343
344
346

ndice

349

www.ediciones-eni.com

Ediciones ENI

15/15

Вам также может понравиться