Documentos de Académico
Documentos de Profesional
Documentos de Cultura
MVC PDF
MVC PDF
ndice
Introduccin
Tipos de patrones
Descripcin de patrones
Caso de estudio: diseo de una aplicacin Web
bancaria
Unas palabras finales
Referencias
Introduccin (1)
Introduccin (2)
Introduccin (3)
Introduccin (y 4)
Patrones arquitectnicos
Tipos de patrones (y 3)
Patrones de diseo
Idiomas
Descripcin de patrones
AccountOperation
Account
- accountIdentifier : Long
- userIdentifier : Long
- balance : double
0..n
accountOperationIdentifier : Long
accountIdentifier : Long
date : java.util.Calendar
type : byte
amount : double
NOTA:
Problema
Ventajas
Solucin
(5)
Navegador
(1)
MiniBank
Vista
(4)
Controlador
(2)
Modelo
Servidor de aplicaciones Web J2EE
(ej.: Jakarta Tomcat)
(3)
BD
A cc o untV O
- ac countIdentifier : Long
- us erIdenti fier : Long
- balanc e : double
+
+
+
+
+
+
Implementaciones particulares
Ejemplo: SQLAccountDAO
Define un interfaz con operaciones para insertar, borrar,
actualizar y recuperar los objetos persistentes de un tipo
El interfaz oculta el tipo de repositorio de datos
NOTAS
Patrn Factory
Ejemplo: SQLAccountDAOFactory
Permite crear objetos de una misma familia (implementan el
mismo interfaz) sin que el cdigo dependa de los nombres
concretos de las clases
SQLAccountDAOFactory
getDAO()
Plug-n-play
Fuente: GoF
Implementaciones particulares
Patrn Facade
Implementacin de addToAccount
:AccountFacadeDelegate
1: addToAccount
1.1: getDAO
1.2: find
1.3: update
1.4: getDAO
1.5: create
:SQLAccountDAOFactory
:SQLAccountDAO
:SQLAccountOperationDAOFactory
:SQLAccountOperationDAO
Capa vista
JavaServer Pages
Capa controlador
Jakarta Struts
Librera
Framework
Struts
RequestProcessor
# actions : Map
Action
0..n
+ execute
+ process
FindAccountsAction
TransferAction
...
MiniBank
Fuente: GoF
RequestProcessor
:FindAccounts.jspx
:RequestProcessor
:FindAccountsAction
:AccountFacadeDelegateFactory
:AccountFacadeDelegate
:AccountDetails.jspx
1: clic en el enlace
Find accounts
2: clic en el
botn Find
2.1: execute
2.1.1: getDelegate
2.1.2: findAccount
2.1.3: foward
View
Controller
Model
View
Modelo
Controlador
Vista
Referencias (1)
Libros
Addisson-Wesley, 1994
J. Crupi, D. Alur, D. Malks, Core J2EE Patterns, 2nd edition,
Prentice Hall, 2003
F. Buschmann, R. Meunier, H. Rohnert, P. Sommerlad, M.
Stal, Pattern-Oriented Software Architecture: A System of
Patterns, Wiley & Sons, 1996
J. W. Cooper, Java Design Patterns: A Tutorial, AddisonWesley, 2000
M. Grand, Patterns in Java: Catalogue of Reusable Design
Patterns Illustrated with UML - Vol 1, Wiley & Sons, 2002
Sitios Web
http://hillside.net/patterns
http://java.sun.com/blueprints/patterns/index.html
Referencias (y 2)
Integracin de Sistemas
http://www.lfcia.org/dsi
4 Ingeniera Informtica
Se centra en los patrones del GoF
Transparencias y cdigo disponibles
http://www.tic.udc.es/~fbellas/teaching/is
5 Ingeniera Informtica
Se centra en el diseo e implementacin de aplicaciones
empresariales con J2EE
Transparencias y cdigo disponibles
http://www.tic.udc.es/~fbellas/teaching/pfc3