Aplicaciones N-Capas en Visual NET





CARRERA PROFESIONAL DE ING. DE SISTEMAS Y TELEMÁTICA

      CURSO               :     Laboratorio de Programación III.

      DOCENTE                        :     Ing. Marco Aurelio Porro Chulli.
  
      ESTUDIANTES                 :         
ü Chuquizuta Ramos Marleni
ü Herrera Silva Carlos Jhonatan
                                                                                      
     CICLO                          :         VII

     GRUPO                  :     “A”

Bagua Grande 08 de Setiembre de 2017




I. APLICACIONES N-CAPAS EN VISUAL.NET

1.    CONTENIDO:

·           DEFINICIÓN

La programación en n-capas es una arquitectura cliente-servidor 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. La ventaja principal de este estilo es que el desarrollo se puede llevar a cabo en varios niveles y, en caso de que sobrevenga algún cambio, sólo se ataca al nivel requerido sin tener que revisar entre código mezclado. Un buen ejemplo de este método de programación sería el modelo de interconexión de sistemas abiertos. Además, permite distribuir el trabajo de creación de una aplicación por niveles; de este modo, cada grupo de trabajo está totalmente abstraído del resto de niveles, de forma que basta con conocer la API que existe entre niveles. En el diseño de sistemas informáticos actual se suelen usar las arquitecturas multinivel o Programación por capas. En dichas arquitecturas a cada nivel se le confía una misión simple, lo que permite el diseño de arquitecturas escalables (que pueden ampliarse con facilidad en caso de que las necesidades aumenten).


La programación en capas tiene como objetivo separar la lógica al momento elaborar una aplicación, objetivo primordial es la separación de la lógica de negocios de la lógica de diseño; uno ejemplo básico de esto consisten separar la capa de datos de la capa de presentación al usuario.
    •   VENTAJAS:
ü  Separar responsabilidades, cada capa tiene una función específica y no interviene con la de las demás.
ü  Reutilizar código.
ü  La separación de roles en tres capas, hace más fácil reemplazar o modificar a una, sin afectar a los módulos restantes.
ü  El código de la capa intermedia puede ser reutilizado por múltiples.


· MÉTODOS DE CONSTRUCCIÓN DE COMPONENTES EN LA IMPLEMENTACIÓN DE CAPAS

    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.




·         LAS CAPAS A TRABAJAR SON LAS SIGUIENTES:
ü  La Interfaz o UI (User interface): Esta Capa es la encargada de interactuar con el usuario, es decir, son aquellas ventanas, mensajes, cuadros de diálogos o páginas web (en el caso del desarrollo web), que el usuario final utiliza para comunicarse con la aplicación, por medio de esta capa el usuario solicita que se ejecuten las tareas proporcionando parámetros de entrada y recibiendo datos como respuesta. Esta capa se comunica con la capa de Lógica de Negocio, enviando y solicitando información y con la capa de Entidades usando sus objetos para enviar y recibir esta información.

ü  La lógica de negocio o Business Logic: Se encarga de implementar, como su nombre lo dice, la lógica del negocio, es decir, todo lo que el Software debe de considerar antes de realizar una acción o el proceso que debe de seguir después de realizar una acción. Por ejemplo: Antes de solicitar a la capa de Datos la inserción de un grupo de registros en una tabla, valida que vayan todos los campos mandatorios dentro de esa solicitud si esta condición no se cumple entonces rechaza la inserción e informa del usuario del status de su solicitud; otro ejemplo podría ser, solicitar a la base de datos que valide la presencia de un registro antes de insertar el siguiente, validar los tipos de datos, etc. esos ejemplos por mencionar los más básicos y generales. Esta capa recibe de la Capa de Presentación las solicitudes, valida que las condiciones que establece el negocio se cumplan antes de realizar dicha acción o de hacer la respectiva solicitud a la Capa de Acceso a Datos.

ü  El acceso a Datos o Data Access: Esta capa es la encargada de la comunicación con la base de datos, en esta capa descansaran todas nuestras acciones CRUD (Create, Read, Update y Delete), será la única que “sabrá” que motor de base de datos se está utilizando, pero le será completamente desconocido el “front”, es decir, jamás sabrá si nuestra aplicación es una aplicación web o desktop. Se encarga de recibir las peticiones de la Capa de Lógica de Negocio, ejecutar dichas acciones y devolver el resultado a la misma capa.




ü  Capa de Entidades o Entity Layer: Aunque aparentemente es una cuarta capa realmente no lo es, esta capa se encarga de contener todos aquellos objetos (clases) que representan al negocio, y esta es la única que puede ser instanciada en las 3 capas anteriores, es decir, solo ella puede tener comunicación con el resto, pero su función se limita a únicamente ser un puente de transporte de datos. Esta capa complementa a la Capa de Negocio.

A continuación, lo representaremos gráficamente:

2.    RESUMEN
Los paradigmas de programación han venido evolucionando a través de los años, por lo que hoy tenemos múltiples formas de programar y una de ellas es la programación en capas. Este tipo de programación tienes muchas ventajas ya separemos la lógica de programación en capas (Capa de Datos, Capa Negocio, Capa de Presentación). Al separar las capas podremos dividir el trabajo al momento de realizar un aplicativo ya que se trabajará de manera independiente por capas, esto nos permitirá reutilizar código, poder hacer modificaciones sin afectar toda la estructura del programa.

3.    SUMMARY
The paradigms of programming have been evolving over the years, so today we have multiple ways to program and one of them is the programming in layers. This type of programming has many advantages and we separate the programming logic in layers (Data Layer, Business Layer, Presentation Layer). By separating the layers we can divide the work at the time of making an application since it will work independently by layers, this will allow us to reuse code, to be able to make modifications without affecting the whole structure of the program.


4.    RECOMENDACIONES
ü  Para poder programar en capas hay que tener bien definido las capas en las que se van a trabajar.
ü  Hay que referenciar las capas que dependen una de la otra por ejemplo (La capa de negocio depende de la capa de datos y la capa de presentación depende de datos y negocio).
ü  Definir la estructura de clases dentro de las mismas capas.

ü  Escribir el código preciso y conciso depende de la clase y capa en la que se está programando.
      5.    CONCLUSIONES
     El modelo de programación en capas en mucho más recomendable al momento de realizar una aplicación, por diferentes motivos que entre los más importantes figuran que se puede dividir el trabajo de la aplicación por equipos, sin tener la necesidad de tener que alterar la lógica del programa, además podremos reutilizar código, si se necesita cambiar algunas cosas se podrá hacer sin la necesidad de tener que dañar toda la estructura del mismo y si al momento de compilar nuestro programa tenemos algún error pues buscaríamos directamente en la capa afectada sin tener que revisar todas las líneas de código.

6.    APRECIACIÓN DEL EQUIPO
ü  Este trabajo de investigación nos ayudó a conocer la importancia de trabajar en programación de N-CAPAS, entonces es muy recomendable programar con este paradigma de programación por todos los motivos que anteriormente se ha expuesto.
ü  En este trabajo conocimos más a fondo la importancia y la estructura de las capas, las referencias que se tienen que hacer para no tener ningún inconveniente.

7.    GLOSARIO DE TÉRMINOS
ü  Capas
El nivel de red o capa de red, según la normalización OSI, es un nivel o capa que proporciona conectividad y selección de ruta entre dos sistemas de hosts que pueden estar ubicados enredes geográficamente distintas.
ü  Lógica
Método o razonamiento en el que las ideas o la sucesión de los hechos se manifiestan o se desarrollan de forma coherente y sin que haya contradicciones entre ellas.
ü  Reutilizar Código
La reutilización de código se refiere al comportamiento y a las técnicas que garantizan que una parte o la totalidad de un programa informático existente se pueda emplear en la construcción de otro programa. De esta forma se aprovecha el trabajo anterior, se economiza tiempo, y se reduce la redundancia.
ü  Módulos
En programación, un módulo es una porción de un programa de ordenador. De las varias tareas que debe realizar un programa para cumplir con su función u objetivos, un módulo realizará, comúnmente, una de dichas tareas (o varias, en algún caso)
ü  Transporte de datos.
Es la base de toda la jerarquía de protocolo. La tarea de esta capa es proporcionar un transporte de datos confiable y económico de la máquina de origen a la máquina destino, independientemente de las de redes físicas en uno. Sin la capa transporte, el concepto total de los protocolos en capas tendría poco sentido.


Comentarios