Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Matricula: 2018-6340.
Materia: Programación 2.
Grupo: 02.
Periodo: 2020-C-2.
¿Qué es Programación multicapas?
La programación en múltiples capas es la técnica más efectiva en aplicaciones empresariales,
debido a la fácil administración que implica el dividir los componentes de la aplicación en capas
y la rapidez que esto implica en programas orientados a Cliente-Servidor. Esta arquitectura
consiste en dividir los componentes primarios de la aplicación, programarlos por separado y
después unirlos en tiempo de ejecución. El modelo COM de objetos es uno de los pilares de la
programación multicapas (la llamaremos así de ahora en adelante, debido a que en la mayoría
de escritos figura de esta forma) y asimismo, el modelo Windows DNA el cual define también
multicapas como la mejor forma de programación.
La programación multicapas consiste en dividir los componentes primarios de la aplicación,
programarlos por separado y luego unirlos sea en tiempo de ejecución o en el mismo código.
De esto naturalmente surge una duda ¿Cuáles son los componentes primarios de la aplicación?
En este momento se habla de programación de cuatro capas, aunque me referiré a la
programación en tres capas o Three-Tier que es el más documentado y que en este momento
permite mayor abstracción para aplicaciones empresariales. Estas tres capas las podemos
denominar como: Presentación, Reglas del Negocio y Acceso a Datos.
Acceso a Datos:
En esta capa programamos todo lo que tiene que ver con el acceso a la base de datos. Esta capa
queda encargada de tomar la información de la base de datos dada una petición de la capa de
Reglas del Negocio, que a su vez es generada por la capa de presentación.
Programación Multicapas
Todas estas capas pueden residir en un único ordenador, si bien lo más usual es que haya una
multitud de ordenadores en donde reside la capa de presentación (son los clientes de la
arquitectura cliente/servidor). Las capas de negocio y de datos pueden residir en el mismo
ordenador, y si el crecimiento de las necesidades lo aconseja se pueden separar en dos o más
ordenadores. Así, si el tamaño o complejidad de la base de datos aumenta, se puede separar en
varios ordenadores los cuales recibirán las peticiones del ordenador en que resida la capa de
negocio.
Si, por el contrario, fuese la complejidad en la capa de negocio lo que obligase a la separación,
esta capa de negocio podría residir en uno o más ordenadores que realizarían solicitudes a una
única base de datos. En sistemas muy complejos se llega a tener una serie de ordenadores
sobre los cuales corre la capa de negocio, y otra serie de ordenadores sobre los cuales corre la
base de datos.
La Programación por capas es una arquitectura cliente-servidor cuyo objetivo primordial es la
separación de la lógica de negocios de la lógica de diseño, es decir separarla capa de datos de la
capa de presentación al usuario. La ventaja principal es que el desarrollo se puede llevar acabo
en varios niveles, en caso de cambios, sólo se afecta al nivel requerido, sin tener que revisar
todo el código. Ejemplo el modelo de interconexión de sistemas abiertos. Permite distribuir el
trabajo de creación de una aplicación por niveles, cada grupo de trabajo está totalmente
abstraído del resto de niveles, de forma que basta con conocer la API (Interfaz de programación
de aplicaciones) que existe entre niveles.
¿Por qué es tan importante la programación en capas?