APLICACIONES EN N-CAPAS EN VISUAL
NET
I.
TEMA: Aplicaciones N-Capas
en Visual NET
1.
Contenido
Definición
La
programación por capas es un estilo de programación en el que el objetivo
primordial es la separación de la lógica de negocios de la lógica de diseño; un
ejemplo básico de esto consiste en separar la capa de datos de la capa de
presentación al usuario.
El
estilo arquitectural en n capas se basa en una distribución jerárquica de los
roles y las responsabilidades para proporcionar una división efectiva de los
problemas a resolver. Los roles indican el tipo y la forma de la interacción
con otras capas y las responsabilidades la funcionalidad que implementan.
Cuanto más se aumenta el proceso operativo de la empresa, las necesidades de
proceso crecen hasta desbordar las máquinas. Es por ello que se separa la
estructura de un programa en varias capas.

En
adición a lo citado, podemos decir que actualmente la programación por capas es
un estilo de programación en la que el objetivo principal es separar la lógica
de negocios de la lógica de diseño, un ejemplo básico de esto es separar la
capa de datos de la capa de negocios y ésta a su vez de la capa de presentación
al usuario. El diseño que actualmente más se utiliza es el diseño en tres capas;
sin embargo, la programación puede desglosarse en más capas, tal cual se
presenta en el ejemplo que veremos más adelante.
Métodos de Construcción para la
implementación de capas
Arquitectura de
2 niveles
La
arquitectura en 2 niveles se utiliza para describir los sistemas
cliente/servidor en donde el cliente solicita recursos y el servidor responde
directamente a la solicitud, con sus propios recursos. Esto significa que el
servidor no requiere otra aplicación para proporcionar parte del servicio.
Arquitectura en
3 niveles
En la
arquitectura en 3 niveles, existe un nivel intermediario. Esto significa que la
arquitectura generalmente está compartida por: Un cliente, es decir, el equipo
que solicita los recursos, equipado con una interfaz de usuario (generalmente
un navegador Web) para la presentación. El servidor de aplicaciones (también
denominado software intermedio), cuya tarea es proporcionar los recursos
solicitados, pero que requiere de otro servidor para hacerlo. El servidor de
datos, que proporciona al servidor de aplicaciones los datos que requiere.
Comparación
entre ambos tipos de arquitecturas La arquitectura en 2 niveles es, por lo
tanto, una arquitectura cliente/servidor en la que el servidor es polivalente,
es decir, puede responder directamente a todas las solicitudes de recursos del
cliente. Sin embargo, en la arquitectura en3 niveles, las aplicaciones al nivel
del servidor son descentralizadas de uno a otro, es decir, cada servidor se
especializa en una determinada tarea, (por ejemplo: servidor web/servidor de bases
de datos).
La arquitectura
en 3 niveles permite: Un mayor grado de flexibilidad Mayor seguridad, ya que la
seguridad se puede definir independientemente para cada servicio y encada nivel
Mejor rendimiento, ya que las tareas se comparten entre servidores
Arquitectura de niveles múltiples
En la
arquitectura en 3 niveles, cada servidor (nivel 2 y 3) realiza una tarea
especializada (un servicio). Por lo tanto, un servidor puede utilizar los
servicios de otros servidores para proporcionar su propio servicio. Por
consiguiente, la arquitectura en 3 niveles exponencialmente una arquitectura en
N-niveles.
Arquitectura de
N-Capas y N-Niveles
Lo que se
conoce como arquitectura en capas es en realidad un estilo de programación
donde el objetivo principal es separar los diferentes aspectos del desarrollo,
tales como las cuestiones de presentación, lógica de negocio, mecanismos de almacenamiento,
etc.
Los que
aprendieron a programar con Pascal,recuerdan que con ese lenguaje todo estaba
en la misma porción de código.A lo mejor un programador cuidado se
organizaba las cosas en "units", pero al final todo está amontonado.
MÉTODOS PARA CONEXIONES
Es necesario
importar el paquete java.sqlClass.forName(“com.mysql.jdbc.Driver”); Con esta
instrucción cargamosel driver de conexión a la base de datos en MySQL. Si somos
algo curiosos,podemos notar que dentro del conector (en mi caso
mysql-connector-java-5.1.5-bin.jar), se encuentra el archivo Driver.class
dentro de las carpetascom/mysql/jdbc.DriverManager.getConnection Luego de
cargar el Driver, es necesariocrear la conexión a la base de datos. Para ello
usamos el método getConnection de la clase DriverManager
(que implementa la claseDriver). A dicho método le pasamos como parámetro una
URL de conexión a la base de datos, que se compone, por
lo general, de tres partes separados por
“:”, jdbc:nombre_dbms:datos_de_conexion. Aunque esto
depende
del tipo de DMBS y conector que usemos. (Para más detalles dela URL, ver la
documentación específica para el conector). Este método además, devuelve un
objeto Connection que usaremos para crear y
ejecutar sentencias SQL, sobre la base de datos.conexion.createStatement();
este método crea/devuelve un objeto
Statement,
con el cual podremos ejecutar sentencias en la base de
datos.instruccion.executeQuery(); este método sirve para ejecutar consultas
sobre
la base de datos (para inserción y modificación de datos usar
executeUpdate()).
Recibe como parámetro una sentencia
SQL, y devuelve un objeto ResultSet que contendrá los
datos de la consulta.while(tabla.next()) esto nos permitirá iterar
indefinidamente, mientras en el objeto
ResultSet hayan más registros. o Posteriormente, dentro del while, podemos
obtener los datos de la fila actual con los métodos getInt(int) y
getString(int) de ResultSet. A dichos métodos le pasamos como parámetro el índice de la columna
que queremos obtener. Es importante tener en cuenta que en dichos métodos, si
una tabla tiene 3 columnas, las referenciamos como 1, 2 y 3. No como en otros
lenguajes (PHP por ejemplo), en los que los índices serían 0, 1, 2.Las
excepciones que manejamos son básicamente:ClassNotFoundException, que se lanzará
por lo general cuando el programa no
encuentre el Driver. SQLException, que se lanzará cuando
hayan
errores a nivel de SQL (errores al insertar datos, errores de sintaxis
en
las consultas, etc.).
Tipos de capas
·
Capa de Manejo de Datos
Esta
capa se encarga de acceder a los datos, se debe usar la capa de datos para
almacenar y recuperar toda la información de sincronización del Sistema. Es
aquí donde se implementa las conexiones al servidor y la base de datos
propiamente dicha, se invoca a los procedimientos almacenados los cuales
reciben solicitudes de almacenamiento o recuperación de información desde la
capa de negocio. Todas estas capas pueden residir en un único ordenador (no
debería ser lo usual), pero es lo más frecuente. En sistemas complejos se llega
a tener varios ordenadores sobre los cuales reside la capa de datos, y otra
serie de ordenadores sobre los cuales reside la base de datos. Se recomienda
que si el crecimiento de las necesidades o complejidad aumenta se debe separar
en dos o más ordenadores, los cuales recibirán las peticiones del ordenador en
que resida la capa de negocio. Esta recomendación es válida para la capa de
negocios.
·
Capa de Negocios
Es
la responsable del procesamiento que tiene lugar en la aplicación. Por ejemplo,
en una aplicación bancaria el código de la capa de presentación se relacionaría
simplemente con la monitorización de sucesos y con el envío de datos a la capa
de procesamiento. Esta capa intermedia contendría los objetos que se
corresponden con las entidades de la aplicación. Esta capa intermedia es la que
conlleva capacidad de mantenimiento y de reutilización. Contendrá objetos
definidos por clases reutilizables que se pueden utilizar una y otra vez en
otras aplicaciones. Estos objetos se suelen llamar objetos de negocios y son
los que contienen la gama normal de constructores, métodos para establecer y
obtener variables, métodos que llevan a cabo cálculos y métodos, normalmente
privados, en comunicación con la capa de la base de datos.
Es
en esta capa donde se reciben los requerimientos del usuario y se envían las
respuestas tras el proceso, a requerimiento de la capa de presentación. Se
denomina capa de negocio o lógica del negocio, es aquí donde se establecen
todas las reglas que deben cumplirse.
·
Capa de Interfaz del
Usuario(Presentación)
Es
la responsable de la presentación visual de la aplicación. La capa de
presentación enviará mensajes a los objetos de esta capa de negocios o
intermedia, la cual o bien responderá entonces directamente o mantendrá un
diálogo con la capa de la base de datos, la cual proporcionará los datos que se
mandarían como respuesta a la capa de presentación. Podemos decir que es la que
se presenta al usuario, llamada también formulario o interfaz de presentación,
esta captura los datos del usuario en el formulario e invoca a la capa de
negocio, trasmitiéndole los requerimientos del usuario, ya sea de almacenaje,
edición, o de recuperación de la información para la consulta respectiva.
2.
Resumen
Los paradigmas en el
desarrollo de programas han venido evolucionando a través de los años y
actualmente contamos con una de las técnicas que brinda mayor facilidad a los
programadores, nos referimos a la Programación Orientada a Objetos en N capas,
ya que permite dividir el trabajo en varias capas modulares. Actualmente, la
más utilizada en cuanto a este estilo es la programación en tres capas que se
divide en:
1. La capa de datos en la cual se define la conexión con el servidor y
la base de datos, es en esta capa en donde se invoca a los procedimientos
almacenados o comandos SQL, a fin de que se realicen las operaciones
correspondientes en la base de datos; sin embargo, si es conveniente podemos
dividir la estructura del código fuente en más capas.
2. Capa de presentación, la cual interactúa con el usuario.
3. La capa de negocios, donde se establecen
las reglas del negocio que deben
cumplirse.
3.
Summary
The paradigms in the development of programs have been evolving over the
years and we currently have one of the techniques that gives greater ease to
programmers, we refer to Object Oriented Programming in N layers, as they allow
to divide the work in several modular layers. Currently, the most used in this
style is the programming in three layers that is divided into:
1. The data layer in which the connection to the server and the database
is defined, it is in this layer where the stored procedures are invoked in the
SQL data commands; however, if it is convenient you can split the structure of
the source code into more layers.
2. Presentation Layer, which interacts with the user.
3. The business layer, where you establish the business rules that are
met.
4.
Recomendaciones
•
No
exceder en el número de creación de capas, es posible que exista perdida de
eficiencia.
•
Se
recomienda usar la programación con 3 capas, porque es la más convencional y la
programación es más ordenada y segura.
•
Es
importante que todas las capas estén referenciadas y no tener problemas al
ejecutar.
·
Es
ventajoso programar en capas pues nos permite tener en orden específico en cuanto
a las líneas de código, y es más fácil poder realizar cualquier modificación.
5.
Conclusiones
·
El estilo
de programación en N capas se basa en segmentar un proyecto en varias partes
para realizar una programación independiente en cada una de ellas.
·
Facilita
la reutilización de capas.
·
Permite
una mejor estandarización.
·
En cuanto
a la seguridad este estilo de programación es más fiable.
· Se puede
elaborar componentes para cada capa, avanzando el desarrollo de manera
independiente y por ende el global del Sistema puede desarrollarse más rápido.
·
Por ende,
los costos de mantenimiento tienden a ser menores.
· Dado los
vertiginosos cambios en la dinámica de los negocios este estilo de programación
provee que el Sistema sea escalable.
6.
Apreciación del Equipo
1. Facilidad para desarrollar en múltiples plataformas (web, escritorio,
móvil)
2. Se reduce la complejidad o Facilidad para distribuir el desarrollo
del software
3. La programación de 3 capas es la
más usada ya que es más convencional
7.
Glosario de Términos
Fiable: Cosa que inspira
seguridad.
Constructores: Un constructor es una subrutina cuya
misión es inicializar un objeto de una clase
Paradigma: Ejemplo o modelo de
algo.
Capas
modulares: Define capas
o niveles de abstracción, cada uno de los cuales aprovecha el servicio de la
capa inferior.
Referencia: Nota o palabra en un
escrito que remite a otra parte del mismo o a otro escrito, donde el lector
puede encontrar lo que busca.
8.
Bibliografía o Linografía
http://joseluisgarciab.blogspot.pe/2014/09/programacion-en-3-capas.html http://www.elguille.info/colabora/NET2005/FernandoLuque_NCapas.htmhttp://sisbib.unmsm.edu.pe/BibVirtual/Publicaciones/risi/2010_n2/v7n2/a07v7n2.pdf
https://laurmolina7821.wordpress.com/1-1-3-aplicaciones-de-2-3-y-n-capas/
http://www.elguille.info/colabora/NET2005/FernandoLuque_NCapas.htm
https://es.slideshare.net/joseantoniolapahuanca9/lab01-31525105https://es.slideshare.net/joseantoniolapahuanca9/lab01-31525105
Aqui les dejo el link de las diapositivas
https://www.slideshare.net/VicenteAlberca/programacion-en-ncapas
No hay comentarios:
Publicar un comentario