Anda di halaman 1dari 21

Instituto Superior Tecnolgico Privado CESCA

APLICACIONES MONOLTICAS VS. APLICACIONES DISTRIBUIDAS (CAPAS)

Introduccin a las Aplicaciones Distribuidas (Capas)

Presentacin del Caso a Estudiar


Una de las formas ms recomendables de trabajar una aplicacin es utilizando el manejo de aplicaciones distribuidas, ya que el proyecto se divide. Esto acelera el proceso de las aplicaciones, al declara un objeto casi nunca lo destruimos, casi siempre lo dejamos tal como esta, esto puedo ocasionar que el rendimiento de la aplicacin baje, para ello declararemos los objetos utilizando el using. Todo objeto declarado con el using y que se encuentre dentro de su mbito en forma automtica se destruye al finalizar el mtodo creado. No olvidar de adjuntar la base de datos Poseidon (Solicitar al instructor).

Instructor: Rojas Chvarri, Jim Kelly Davis E-mail: rojasdavis@hotmail.com

Instituto Superior Tecnolgico Privado CESCA


APLICACIONES MONOLTICAS VS. APLICACIONES DISTRIBUIDAS (CAPAS)

Aplicaciones distribuidas

Con el desarrollo de la informtica, el hecho de poder comunicar componentes de software entre s ha ido ganando una enorme importancia. Hasta no hace tantos aos, era muy tpico crear aplicaciones de una sola pieza, "monolticas":

Aplicacin "monoltica" aunque distribuida Estos programas (tambin llamados hoy "clientes gruesos (fat clients)" podan acceder a un gestor de datos a travs de la red, pero toda la lgica del flujo de datos, la seguridad y las interacciones con las personas se encontraban en el ordenador del usuario en forma de un gran ejecutable. Esa arquitectura no es ideal, ya que implica problemas de toda ndole a la hora de instalar las aplicaciones y sobre todo cuando stas se modifican o actualizan (mantenimiento complejo y engorroso). Una metodologa de desarrollo mucho mejor, aunque ms laboriosa a la hora de programar, es el modelo Cliente-Servidor en tres capas:

Instructor: Rojas Chvarri, Jim Kelly Davis E-mail: rojasdavis@hotmail.com

Instituto Superior Tecnolgico Privado CESCA


APLICACIONES MONOLTICAS VS. APLICACIONES DISTRIBUIDAS (CAPAS)

Aplicacin Cliente Servidor en tres capas En este modelo, toda la lgica de los datos, su validacin, los permisos, etc., residen en un servidor intermedio y son utilizados por todos los clientes a travs de una red. En este caso, en el ordenador del usuario lo nico que hay es una capa de presentacin que se ocupa bsicamente de recoger y recibir datos, es decir, que acta de intermediario entre el usuario y las reglas de negocio residentes en la capa intermedia. Este modelo es ms eficiente y est muy evolucionado con respecto al anterior, pero an se puede ir ms all. La arquitectura de desarrollo en n-capas (n-tier, que dicen los anglosajones) lleva el concepto cliente-servidor un paso hacia adelante, dividiendo la capa intermedia en muchas otras capas especializadas, cada una de las cuales puede residir en un servidor diferente:

Instructor: Rojas Chvarri, Jim Kelly Davis E-mail: rojasdavis@hotmail.com

Instituto Superior Tecnolgico Privado CESCA


APLICACIONES MONOLTICAS VS. APLICACIONES DISTRIBUIDAS (CAPAS)

Arquitectura de desarrollo basada en componentes distribuidos En este modelo existe una gran variedad de componentes especializados en tareas especficas como la validacin de datos, la autenticacin y seguridad o el acceso a datos. Dichos componentes deben trabajar unos con otros como piezas de un mecanismo, gestionando la informacin que circula entre el usuario y el servidor de datos. La belleza de este modelo radica en que cada uno de esos componentes (o cada grupo de ellos) puede residir en un servidor diferente, siendo transparente su ubicacin para los clientes que los utilizan. Ello aumenta mucho la escalabilidad de las aplicaciones, pues basta con aadir nuevos servidores e instalar los componentes en ellos para poder atender ms peticiones. Por otra parte, y esto es muy interesante tambin, mientras sus interfaces de programacin sean las mismas, es posible sustituir cualquier componente por otro actualizado o que acte de manera distinta para corregir errores o cambiar el modo de trabajo de la aplicacin global, y todo ello sin que los clientes sean conscientes de ello. Obviamente, esto ofrece ventajas adicionales, ya que, por ejemplo, no es necesario reinstalar la aplicacin en cada cliente, sino que basta con sustituir un componente en un nico lugar y automticamente todos los usuarios tendrn su aplicacin actualizada. El concepto de Arquitectura Orientada a Servicios o SOA se basa en el uso de este tipo de componentes distribuidos relativamente independientes que suplen las necesidades de una o varias aplicaciones. Precisamente este tipo de componentes se puede implementar mediante Servicios Web, obteniendo la ventaja adicional de la independencia de la plataforma, como veremos a lo largo del curso.

Instructor: Rojas Chvarri, Jim Kelly Davis E-mail: rojasdavis@hotmail.com

Instituto Superior Tecnolgico Privado CESCA


APLICACIONES MONOLTICAS VS. APLICACIONES DISTRIBUIDAS (CAPAS)

Antes de Desarrollar las siguientes Aplicaciones usted tiene que adjuntar la base de datos Poseidn y dentro de esta base de datos crear los siguientes procedimientos almacenados:
create procedure sp_listar_proveedores as select * from proveedores go create procedure sp_listar_productos as select * from productos go create procedure sp_listar_Clientes as select * from Clientes go

Aplicacin Monoltica
Ingresar a Visual Studio.Net 1. Hacer clic en el men Archivo >Nuevo >Proyecto.

2. Seleccionar el Tipo de Plantilla Aplicaciones de Windows Forms y ponga como nombre: AplicacinMonoltica

Instructor: Rojas Chvarri, Jim Kelly Davis E-mail: rojasdavis@hotmail.com

Instituto Superior Tecnolgico Privado CESCA


APLICACIONES MONOLTICAS VS. APLICACIONES DISTRIBUIDAS (CAPAS)

Creando la Cadena de Conexin 3. Hacer clic en el men Proyecto > Propiedades de

Instructor: Rojas Chvarri, Jim Kelly Davis E-mail: rojasdavis@hotmail.com

Instituto Superior Tecnolgico Privado CESCA


APLICACIONES MONOLTICAS VS. APLICACIONES DISTRIBUIDAS (CAPAS) 4. Por defecto aparece seleccionado la categora Aplicacin.

5. Hacer clic en la categora Configuracin.

6. Indicar en el campo Nombre, indicar: CnPoseidon. 7. En campo Tipo, indicar: Cadena de conexin.

8. En el campo mbito, indicar: Aplicacin. 9. Hacer clic en el botn que se encuentra dentro del campo Valor.

10. Luego aparecer un cuadro de dialogo donde aparecer el Asistente de conexin. Instructor: Rojas Chvarri, Jim Kelly Davis E-mail: rojasdavis@hotmail.com

Instituto Superior Tecnolgico Privado CESCA


APLICACIONES MONOLTICAS VS. APLICACIONES DISTRIBUIDAS (CAPAS) 11. 12. 13. 14. Indicar el nombre de servidor. El modo de ingreso al servidor. Elegir la base de datos a utilizar. Finalmente aceptar.

15. Agregar una Clase al Proyecto. 16. Asignar el nombre de MetodosClientes.

Instructor: Rojas Chvarri, Jim Kelly Davis E-mail: rojasdavis@hotmail.com

Instituto Superior Tecnolgico Privado CESCA


APLICACIONES MONOLTICAS VS. APLICACIONES DISTRIBUIDAS (CAPAS) 17. Agregar el siguiente Script dentro de la Clase. Imports System.Data.SqlClient Public Class MetodosClientes 'Crear un Metodo Prublico Compartido que devuelva el Valor de un DataTable Public Shared Function Listar_Clientes() As DataTable 'Se utiliza el Try/Catch, para el tratamiento de errores Try 'se declara una variable que represente la cadena de conexion 'la clase my.Settings, hace referencia al archivo de configuraciones 'seguido del nombre de la cadena de conexion establecido en el web.config Using cn As New SqlConnection(My.Settings.cnposeidon) 'se declar un variable de tipo DataAdapter,dicha variable contiene 'el nombre del procedimiento almacenado, seguido de la variable de conexion Using da As New SqlDataAdapter("sp_Listar_Clientes", cn) 'se declara una variable que represente a un DataTable Dim dt As New DataTable 'Se limpia la tabla dt.Clear() 'Se llena la tabla da.Fill(dt) 'retorna la Tabla Return dt End Using End Using Catch ex As Exception 'Se utiliza el Throw, para capturar la execepcion Throw ex End Try End Function End Class 18. Agregar un DataGridView al formulario.

Instructor: Rojas Chvarri, Jim Kelly Davis E-mail: rojasdavis@hotmail.com

Instituto Superior Tecnolgico Privado CESCA


APLICACIONES MONOLTICAS VS. APLICACIONES DISTRIBUIDAS (CAPAS) 19. Digitar el siguiente Script en el Evento Load del formulario. Try Me.DataGridView1.DataSource = MetodosClientes.Listar_Clientes Catch ex As Exception MsgBox(ex.Message) End Try 20. Ejecutar la aplicacion (pulsar la Tecla F5).

Instructor: Rojas Chvarri, Jim Kelly Davis E-mail: rojasdavis@hotmail.com

10

Instituto Superior Tecnolgico Privado CESCA


APLICACIONES MONOLTICAS VS. APLICACIONES DISTRIBUIDAS (CAPAS)

Aplicacin Distribuida (Capas)


Ingresar a Visual Studio.Net 21. Hacer clic en e l men Archivo >Nuevo >Proyecto.

22. En tipo de plantilla seleccionar Solucin en Blanco. 23. Asignar el Nombre de Aplicaciones Distribuidas.

Instructor: Rojas Chvarri, Jim Kelly Davis E-mail: rojasdavis@hotmail.com

11

Instituto Superior Tecnolgico Privado CESCA


APLICACIONES MONOLTICAS VS. APLICACIONES DISTRIBUIDAS (CAPAS)

1. Agregando la Capa Datos


24. Hacer clic en el men Archivo>Agregar>Nuevo Proyecto.

25. En tipo de plantilla seleccionar Biblioteca de Clases. 26. Asignar como nombre CapaDatos.

Creando la Cadena de Conexin 27. Hacer clic en el men proyecto > propiedades de Proyecto.

Instructor: Rojas Chvarri, Jim Kelly Davis E-mail: rojasdavis@hotmail.com

12

Instituto Superior Tecnolgico Privado CESCA


APLICACIONES MONOLTICAS VS. APLICACIONES DISTRIBUIDAS (CAPAS)

28. Por defecto aparece seleccionado la categora Aplicacin.

29. Seleccionar la categora Configuracin.

Instructor: Rojas Chvarri, Jim Kelly Davis E-mail: rojasdavis@hotmail.com

13

Instituto Superior Tecnolgico Privado CESCA


APLICACIONES MONOLTICAS VS. APLICACIONES DISTRIBUIDAS (CAPAS) 30. Asignar como nombre Cnposeidon. 31. Asignar como tipo Cadena de Conexin.

32. Hacer clic en el botn que se encuentra dentro del campo Valor.

33. 34. 35. 36. 37.

Aparecer un cuadro de dialogo llamado propiedades de conexin. Indicar el nombre del servidor. Indicar el ingreso al servidor. Indicar la base de datos a utilizar. Finalmente hacer clic en aceptar.

Instructor: Rojas Chvarri, Jim Kelly Davis E-mail: rojasdavis@hotmail.com

14

Instituto Superior Tecnolgico Privado CESCA


APLICACIONES MONOLTICAS VS. APLICACIONES DISTRIBUIDAS (CAPAS) 38. Como usted puedo observar se ha generado un nuevo valor.

39. Dentro del Explorador de Soluciones aparece un archivo de configuracin. 40. Dentro de este archivo se guarda la cadena de conexin.

41. Modificar el nombre lgico de la Clase Class1 a MetodosClientes. 42. Ingresar a la Clase MetodosClientes 43. Importar la siguiente librera dentro de la clase MetodosClientes (antes del Public Class) Imports System.Data.SqlClient 44. Agregar el siguiente Script dentro de la Clase MetodosClientes. Public Class MetodosClientes 'Crear un Metodo Prublico Compartido que devuelva el Valor de un DataTable Public Shared Function Listar_Clientes() As DataTable 'Se utiliza el Try/Catch, para el tratamiento de errores Try 'se declara una variable que represente la cadena de conexion 'la clase my.Settings, hace referencia al archivo de configuraciones 'seguido del nombre de la cadena de conexion establecido en el web.config Using cn As New SqlConnection(My.Settings.cnposeidon) 'se declar un variable de tipo DataAdapter,dicha variable contiene 'el nombre del procedimiento almacenado, seguido de la variable de conexion Using da As New SqlDataAdapter("sp_Listar_Clientes", cn) 'se declara una variable que represente a un DataTable Dim dt As New DataTable 'Se limpia la tabla dt.Clear() 'Se llena la tabla da.Fill(dt) Instructor: Rojas Chvarri, Jim Kelly Davis E-mail: rojasdavis@hotmail.com
15

Instituto Superior Tecnolgico Privado CESCA


APLICACIONES MONOLTICAS VS. APLICACIONES DISTRIBUIDAS (CAPAS) 'retorna la Tabla Return dt End Using End Using Catch ex As Exception 'Se utiliza el Throw, para capturar la execepcion Throw ex End Try End Function End Class

2. Agregando la Capa Presentacion Windows


45. Hacer clic en el men Archivo>Agregar>Nuevo Proyecto.

46. En tipo de plantilla seleccionar Aplicacin de Windows Forms. 47. Asignar como nombre CapaPresentacionWindows.

Instructor: Rojas Chvarri, Jim Kelly Davis E-mail: rojasdavis@hotmail.com

16

Instituto Superior Tecnolgico Privado CESCA


APLICACIONES MONOLTICAS VS. APLICACIONES DISTRIBUIDAS (CAPAS) 48. Seleccionar el proyecto con el nombre de CapaPresentacionWindows del Explorador de Soluciones. 49. Pulsar el botn derecho del mouse y seleccionar la opcin Agregar Referencia. 50. Aparecer un cuadro de dialogo llamado agregar referencia. 51. Seleccionar la pestaa llamada proyectos. 52. Seleccionar el proyecto con el nombre de CapaDatos.

La Capa Datos entrega sus Mtodos a la Capa Regla de Negocio. Y la Capa Regla de Negocio entrega sus reglas a la Capa Presentacin.

53. Agregar un DataGridView al formulario que se encuentra del proyecto CapaPresentacionWindows.

Instructor: Rojas Chvarri, Jim Kelly Davis E-mail: rojasdavis@hotmail.com

17

Instituto Superior Tecnolgico Privado CESCA


APLICACIONES MONOLTICAS VS. APLICACIONES DISTRIBUIDAS (CAPAS) 54. Digitar el siguiente Script dentro del evento load del formulario. Try 'se asigna como origen de datos al control 'el nombre del proyecto, seguido de la clase y finalmnete el metodo Me.DataGridView1.DataSource = ReglaNegocio.Consumir_Metodos.Listar_Clientes Catch ex As Exception 'se muestra el error producido por la execion en un msgbox MsgBox(ex.Message) End Try 55. Ejecutar la aplicacion (pulsar la Tecla F5).

3. Agregando la Capa Presentacion Web (Opcional)


56. Hacer clic en el men Archivo>Agregar>Nuevo Proyecto. 57. En tipo de plantilla seleccionar Aplicacin de Web Asp.Net.

Instructor: Rojas Chvarri, Jim Kelly Davis E-mail: rojasdavis@hotmail.com

18

Instituto Superior Tecnolgico Privado CESCA


APLICACIONES MONOLTICAS VS. APLICACIONES DISTRIBUIDAS (CAPAS) 58. Asignar como nombre CapaPresentacionWeb.

59. Seleccionar el proyecto con el nombre de CapaPresentacionWeb del Explorador de Soluciones. 60. Pulsar el botn derecho del mouse y seleccionar la opcin Agregar Referencia. 61. Aparecer un cuadro de dialogo llamado agregar referencia. 62. Seleccionar la pestaa llamada proyectos. 63. Seleccionar el proyecto con el nombre de CapaDatos.

Instructor: Rojas Chvarri, Jim Kelly Davis E-mail: rojasdavis@hotmail.com

19

Instituto Superior Tecnolgico Privado CESCA


APLICACIONES MONOLTICAS VS. APLICACIONES DISTRIBUIDAS (CAPAS)

64. Arratrar el control GridView a la pagina llamada Default.aspx del proyecto llamado CapaPresentacionWeb.

65. Digitar el siguiente script en el Evento Load de la pagina. Try 'se asigna como origen de datos al control 'el nombre del proyecto, seguido de la clase y finalmnete el metodo Me.GridView1.DataSource = ReglaNegocio.Consumir_Metodos.Listar_Clientes Me.GridView1.DataBind() Catch ex As Exception 'se muestra el error producido por la execion en un msgbox MsgBox(ex.Message) End Try 66. Ejecutar la aplicacion (pulsar la Tecla F5). Instructor: Rojas Chvarri, Jim Kelly Davis E-mail: rojasdavis@hotmail.com
20

Instituto Superior Tecnolgico Privado CESCA


APLICACIONES MONOLTICAS VS. APLICACIONES DISTRIBUIDAS (CAPAS)

Qu Contiene el proyecto CapaDatos?

Qu Contiene el proyecto ReglaNegocio?

Qu Contiene el proyecto CapaPresentacion?

Instructor: Rojas Chvarri, Jim Kelly Davis E-mail: rojasdavis@hotmail.com

21

Anda mungkin juga menyukai