La Web se inició como un servicio de páginas estáticas de información
multimedia soportado por el lenguaje de representación HTML y el protocolo de
Internet HTTP. En
este esquema un usuario cliente se limita a proporcionar al servidor el URL (Uniform
Resource Locator) de la página que quiere visualizar, y el navegador del cliente
transforma la página HTML recibida del servidor en información legible en
pantalla.
Posteriormente se añadió la posibilidad de que el servidor generase
dinámicamente parte de las páginas (ASP, JSP, PHP) en función de información
pasada previamente por el cliente. La generación dinámica de contenidos amplía
las posibilidades de la Web, al permitir la ejecución remota, a través de un
navegador, de programas residentes en el servidor. Sin embargo, con esta
ampliación el cliente sigue recibiendo una respuesta HTML que sólo es válida
para ser visualizada en pantalla.
Los Servicios Web dan un paso más al permitir una comunicación directa entre
máquinas clientes y servidores, sin intervención del usuario, a través de la
infraestructura de la Web. Para ello se sustituye el lenguaje HTML por XML, que
permite expresar no sólo el formato de representación de las páginas, sino el
significado de los datos que contiene. Los Servicios Web permiten realizar
transferencias de información entre programas que se ejecutan en computadores
conectados a Internet, utilizando XML como lenguaje común de intercambio y HTTP
como vehículo de comunicación. De esta forma, los Servicios Web permiten interoperar a las aplicaciones con independencia del lenguaje de programación y
plataforma de ejecución utilizados. Unas aplicaciones, los proveedores, ofrecen
unos servicios en forma de procedimientos remotos, y otras, los clientes,
utilizan estos servicios llamando a los procedimientos a través de la Web.
En este curso se desarrolla un programa de actividades que proporciona a los
alumnos los conocimientos y habilidades suficientes para diseñar, implementar e
implantar sistemas de información distribuidos a través de Internet utilizando
las tecnologías asociadas a los Servicios Web. Para ello se usará la plataforma
de desarrollo .NET soportada inicialmente sólo por el sistema operativo Windows
pero extendida posteriormente a Linux, Solaris, Mac OS X y Unix. Desde esta
plataforma resulta más fácil la comprensión y utilización de las tecnologías
asociadas a Internet, en especial los Servicios Web, ya que sus diseñadores la
concibieron con el objetivo de optimizar el desarrollo de aplicaciones
distribuidas por Internet. Además, en .NET se puede utilizar dentro de la misma
aplicación diferentes lenguajes de programación orientados a objetos (C#, Java,
C++, VB,..), permitiendo la iteroperabilidad entre ellos. Esto facilita la
integración de código de diferente procedencia y posibilita que el usuario pueda
elegir el lenguaje de programación que le resulta más familiar.