programación i 2. arquitectura de capas

7
Ing. Edward Ropero Magister en Gestión, Aplicación y Desarrollo de Software

Upload: edward-ropero

Post on 15-Jul-2015

173 views

Category:

Education


0 download

TRANSCRIPT

Page 1: Programación I 2. Arquitectura de Capas

Ing. Edward Ropero Magister en Gestión,

Aplicación y Desarrollo de Software

Page 2: Programación I 2. Arquitectura de Capas

Conceptos de la Programación en Capas

Consiste en dividir el código fuente según su funcionalidad principal

Trata de separar las responsabilidades de nuestra aplicación de una manera horizontal, esto con el fin de elevar el nivel de abstracción (Ocultar la plomería de la aplicación poniendo una capa de abstracciones sobre ella)

Presentación (UI)

Negocio (BL)

Datos (DAL)

Base de Datos

Page 3: Programación I 2. Arquitectura de Capas

• La intención de esta capa es que el resto de la aplicación no se preocupe de los detalles (en cierta medida) de la estructura de la base de datos y trabaje a un nivel de objetos

• Es la encargada de la entrada y salida de datos hacia y desde la base de datos. Ya que no debe de preocuparse de las reglas de negocio el código de la capa debería de ser fácil de seguir y

• Es donde se escribe el código que habla con la base de datos

• Es en esta capa donde se definen las consultas a la base de datos (el SQL)

• de mantener

Page 4: Programación I 2. Arquitectura de Capas

• En esta capa es donde se escriben las reglas de negocio, validaciones que involucran varias entidades, validación de estados y condiciones definidas en los requerimientos.

• Usa a la capa de acceso a datos para realizar las consultas y actualizaciones a la base de datos.

• La capa de negocio no sabe cómo es presentada la información al usuario o de cómo fue capturada por él. Al no preocuparse de como se presenta la información (UI) o de como es que se almacena (DAL), en el código solo deben observarse que las reglas (de negocio) definidas en los requerimientos se cumplan

Page 5: Programación I 2. Arquitectura de Capas

• Es la capa donde se crean los componentes de la interfaz de usuario

• Esta capa utiliza a la capa de negocio para realizar la tarea que el usuario requiera

• La capa de negocio validará y regresará el resultado o error y la capa de presentación los mostrará al usuario

• Esta capa sólo se encarga de pasar valores a la capa de negocio y de desplegar información, en la interfaz de usuario, que viene de la capa de negocio

Page 6: Programación I 2. Arquitectura de Capas

• Al implementar este modelo de programación, se asegura un trabajo de forma ordenada y separada, debido a que sigue el principio de “divide y vencerás”.

• Cada capa está dividida según su funcionalidad cuando se quiere modificar el sistema basta con cambiar un objeto o conjunto de objetos de una capa. Esto se llama modularidad.

Page 7: Programación I 2. Arquitectura de Capas

• Cuando se implementa un modelo de programación en capas, se debe llegar a un balance entre el número de capas y subcapas que componen el programa. Este debe ser el necesario y suficiente para realizar un trabajo específico con eficiencia y ser lo más modular posible.

• De lo contrario se tiene una serie de desventajas como: pérdida de eficiencia, realización de trabajo innecesario o redundante entre capas, gasto de espacio de la aplicación debido a la expansión de las capas, o bien una alta dependencia entre los objetos y capas que contradice el objetivo principal del modelo.