Introducción a la plataforma .NET y Mono
Servicios Web
El principal objetivo de los servicios web es permitir interconectar aplicaciones realizadas en cualquier tipo de lenguaje, plataforma y sistema operativo, de una manera fácil y completamente transparente. Los servicios web permiten la reutilización de software o compartición de información, utilizando piezas de código generadas y gestionadas por terceros. Tradicionalmente esta forma de trabajo pasaba por la utilización de herramientas y procesos a medida, que estaban completamente ligados a los dos extremos de la comunicación, es decir al cliente y al servidor. Esto provocaba que hubiera situaciones en la había que rescribir el mismo proceso múltiples veces para diferentes cliente o que aparecieran problemas por la interconexión de diferentes plataformas, por ejemplo.
Mediante la utilización de los servicios web es posible reutilizar y compartir información de una forma estándar. Esto simplifica los procesos de implementación ya que se utiliza una infraestructura común para todos ellos y permite reutilizar los servicios desarrollados con un número ilimitado de clientes que cumplan con el estándar.
Para ello los servicios web están basados en el siguiente conjunto de tecnologías:
- XML: la base de los servicios web es el lenguaje XML. Mediante él se estructura la información que intercambian los clientes y el proveedor de un servicio.
- Web Service Description Language (WSDL): permite especificar en formato XML, las características y el funcionamiento de un servicio web. Esto facilita en gran medida la utilización de un servicio por diferentes clientes.
- Simple Object Access Protocol (SOAP): basado también en XML, permite la comunicación entre los clientes del servicio y el propio servicio. Define el formato XML que deberá utilizarse en las comunicaciones entre clientes y proveedor. Normalmente funciona sobre http, aunque puede hacerlo sobre sobre SMTP, MSMQ…
- Universal Description Discovery and Integration (UDDI): permite la publicación de los servicios web, de forma que sean accesibles a otros clientes. Básicamente son directorios de servicios web, en los que los proveedores dan de alta sus servicios, y los clientes buscan servicios adecuados a sus necesidades.
Ejemplos
Consumir servicio google: Puedes descargar un zip con los fuentes de un ejemplo en el que se realiza una petición a Google para obtener los resultados de una búsqueda solicitada por el usuario. El ejemplo funciona bajo ASP.NET y requiere de una clave de utilización para el servicio. Estas claves son gratuitas, con el código viene una pero si falla se puede obtener una nueva desde la página de APIs de Google. Con la petición del usuario se realiza una petición al servicio web de Google utilizando un Proxy que viene con la API, tras lo cual Google nos devuelve la información resultante estructurada, de forma que se rellena un repeater con los datos obtenidos y utilizando una hoja de estilos similar a la utilizada por Google.
hola Patxi sabes me piden que haga un trabajo todos sobre mono ventajas, y modos de intalarse en diversas plataformas kisiera saber si tienes algunos documentos ke me puedan ayudar a realizarlo poara poder hacer un tutorial te lo agradeceria muchisimo saludos desde tabasco.
Hola:
me parece muy interesante el articulo. Yo tambien estoy iniciandome en este mundo y como deben saber tengo muchas dudas, por el momento quisiera que trataran de ayudarme con esta:
si voy a migrar un sitio donde los .aspx estan en una carpeta y los .ascx estan en otra y asi, como resolver los problemas que da mod_mono con los caminos ?
les agradeceria mucho que alguien me ayudara o me diera alguna idea.Cualquier comentario es valido.
Si no es mucha molestia quisiera que me escribieran a bricelno@gmail.com
Muchas gracias a todos
Hola.. to2
Muy interesante articulo ademas de completo.. me acabo de solucionar dudas de concepto que tenia..
Una pregunta: La plataforma .net es solo para redes ?.. es decir soy programador y estoy buscando alternativas a VisualBasic, Vfox, las tipicas de siempre.. me encontre son SharpDevelop. que dice que permite programa en C# pero quiero hacer aplicativos normales ,, esta herramienta de programacion me sirve o la orientacion es diferente…
Hola Jose, en efecto, con .NET puedes desarrollar cualquier tipo de aplicativo, desde aplicaciones de escritorio hasta aplicaciones web empresariales. Para ello puedes utilizar multitud de entornos de desarrollo, como Visual Studio, SharpDevelop, o incluso simplemente el editor de notas y el compilador del SDK. Además también puedes programar en diferentes lenguajes, como C#, Visual Basic, Delphi, etc…
Hola Mi Nombre es Rafael.
He leido algo sobre el proyecto mono y pienso que el proyecto es muy interesante, y precisamente por esto quiero ver si puedo migrar una aplicacion web desarrollada en VB .net a CENTOS 5, mi aplicacion consta con web services y conexiones a bases de datos SQL Server 2005, ya baje los programas de instalacion de MONO para Windows y tambien para CENTOS 5, pero el problema esque no se como instalar la parte de CENTOS 5, si alguien me puediese decir que tan bueno es el proyecto en este momento para intenetar migrar mi aplicacion para que funcione sobre Linux se los agradeceria.
Aparte no se si alguien tenga documentacion acerca de como instalar mono sobre CENTOS 5 paso a paso y como probar mi aplicacion, se los agradeceria infinitamente.
Saludos y felicidades por esta pagina.
Disculpa, pero podrias ayudarme para instalar mono sobre fedra core 8?, recien estoy empezando con el desarrollo sobre linux, porque antes utilice SharpDevelop pero para windows y ahora quiero intentarlo con linux, porfaa
Hola compañeros de eslomas.com:
Quisiera saber dentro de la plataforma .net, refiriéndome no solo a .net Framework sino también a el paquete de Visual Studio.net y todo lo que compone la tecnología .net.,por donde inicio mi capacitación para comprenderla mejor y poder aplicarla adecuadamente.
Gracias
ay no c que es eso ocupo q me digan es d tarea tengo examen porfas alludenme plis jejje bye
hola quisiera saber si MONO es un framewor o es una plataforma