Curso Arquitectura de Aplicaciones Empresariales

Arquitectura de Aplicaciones Empresariales

Objetivos

Explorar y evaluar distintas alternativas a la hora de diseñar aplicaciones empresariales. Identificar, dividir y clasificar problemas comunes en la construcción de aplicaciones empresariales. Estudiar y mostrar distintas alternativas de resolución de dichos problemas basánsadas en patrones conocidos.

Requisitos

a) Conocimiento de algun lenguaje de programacion orientado a objetos (java, C#, Delphi)
b) Nocion de los patrones de diseño de GOF

Modalidad

Curso dictado en auditorio con proyector

Plan de Estudio

1. Parte I – Introducción

En esta parte del curso se define que lo que entenderemos como una aplicación empresarial. Se reconocerán tres grandes capas o layers comunes a todas las aplicaciones empresariales: origen de datos, lógica de negocios, presentación. Se definirán las responsabilidades de cada capa. Se mostrarán algunos patrones base que utilizaremos durante el resto del curso.

1.1. Aplicaciones Empresariales. Que es y que no es una aplicacion empresarial. Definición. Ejemplos de aplicaciones empresariales
1.2. Layering. Capas de una aplicacion empresarial.
1.2.1. Data Source o Persistencia.
1.2.2. Dominio o Modelo de Negocios.
1.2.3. Presentación
1.3. Patrones Base (utilizados en el resto del curso)
1.3.1. Dependency Injection
1.3.2. Gateway
1.3.3. RecordSet
1.3.4. Plugin
1.3.5. Mapper
1.3.6. Data Transfer Object (Value Object)
1.3.7. Separated Interface


2. Parte 2 . Capa de Origen de Datos

Se hará hincapié en la persistencia y recuperación de los datos mediante un motor de base de datos relacional. Se exploran distintos patrones para la tarea. De igual manera se muestran algunos patrones adicionales que tienen que ver con el manejo transaccional y la sincronización entre la base de datos y la aplicación.

2.1. Patrones.
2.1.1. Table Data Gateway
2.1.2. Row Data Gateway
2.1.3. Data Access Object
2.1.4. Active Record
2.1.5. Data Mapper
2.2. Patrones Adicionales
2.2.1. Unit of Work. Manejo Transaccional.
2.2.2. Finders
2.2.3. Identity Map
2.2.4. Lazy Load

3. Parte III – Capa de lógica de negocios

Se verá como organizar la capa de lógica de negocios para resolver la problemática de la aplicación. También se evalúa que alternativa elegir dependiendo de la complejidad y características de la aplicación.

3.1. Domain Model. Lógica de Negocios. Definición.
3.2. Patrones
3.2.1. Transaction Script
3.2.2. Table Module
3.2.3. Domain Model


4. Parte IV . Capa de Presentación.

Se estudian distintas posibilidades a la hora de presentarle la información al usuario y de permitir que el mismo interactúe con el sistema. Se comparan las características de las aplicaciones de escritorio (Rich Clients) con las aplicaciones Web (Thin Clients) y se menciona a los Smart Clients. Relacionado con ello, se estudian distintos patrones para organizar la presentación.

4.1. Rich Clients. Thin Clients. Smart Clients
4.2. Thin Clients
4.2.1. MVC
4.2.2. Controllers
4.2.2.1. Page Controller
4.2.2.2. Front Controller
4.2.3. Presentacion
4.2.3.1. Template View
4.2.3.2. Transform View

Programado por Angel J. Lopez y el Club de Programadores | HTML + CSS por FedericoMP