lunes, agosto 04, 2008

Particularidades del desarrollo Web

Estoy investigando un poco sobre las tecnicas de desarrollo web,
especialmente en ambiente java. Para iniciar, estoy tratando de
identificar las necesidades que surgen del desarrollo web y como se han
ido solventando.

Este primer articulo es sobre las particularidades generales del
desarrollo web y servirá de base para el resto de artículos.

El desarrollo de aplicaciones en ambiente web se diferencia de otros
por las peculiaridades impuestas por el protocolo HTTP. Este protocolo
maneja una logica de request (solicitud) y response (respuesta). El
cliente, en este caso el explorador, hace una solicitud de información
al servidor y el servidor se encarga de responderla. Luego de recibida
la respuesta, se cierra la conexion.

Este desarrollo frecuentemente necesita mantener estado. Para esto
se usan las cookies, que es información que un servidor puede almacenar
en el sistema cliente. Son realmente archivos de texto pequeños donde se
almacenan llaves que luego se hace match con el servidor. Esto le
permite a las aplicaciones Web instituir la noción de "sesión", y
también permite rastrear usuarios ya que las cookies pueden guardarse en
el cliente por tiempo indeterminado.

Los primeros servidores que publicaron información fueron servidores
estáticos, que recibían solicitudes de páginas Web y retornaban
contenidos en formato HTML. Al principio se necesito que que
diseñadores o programadores de HTML cambiaran constantemente el
contenido de las paginas para mantener temas como tasas de cambio o
resultados de las empresas que publicaban información.

El desarrollo de aplicaciones en entorno Web nace así, de la constante
necesidad de publicación de contenido en un ambiente Web. Estos
contenidos se volvieron cada vez más variables y requerían de una
actualización constante. En algunos casos surgió también la necesidad de
no solo publicar información sino de interactuar con los usuarios de la
Internet solicitando información de consultas y personalizando la
información a mostrar. De ahí la necesidad de automatizar esta
publicación de contenido.

El desarrollo de aplicaciones Web tiene algunas particularidades que hay
que tomar en cuenta al momento de desarrollar una aplicación.

  • Históricamente el desarrollo de aplicaciones Web a tomado como
    premisa trabajar con enlaces en los que se asumen bajas velocidades a
    Internet. Últimamente los accesos a Internet son cada vez mejores en
    ambientes corporativos pero también empiezan a surgir enlaces a Internet
    desde los móviles con anchos de banda no tan grandes.
  • Las aplicaciones desarrolladas para ambiente Web son accedidas por
    clientes anónimos en los que es difícil instalar aplicaciones adicionales.
  • Las aplicaciones desarrollas para ambiente Web deben ser accedidas
    por múltiples programas clientes y en diferentes sistemas operativos.
  • Este tipo de desarrollo no mantienen conexiones activas a los
    sistemas backoffice del cliente. Se manejan mediante un envío y
    respuesta de información (request & response).
  • Las aplicaciones Web no tienen control sobre los recursos de la
    computadora cliente.
  • Los clientes que utilizan aplicaciones Web son anónimos y
    heterogéneos lo que limita la capacidad de poner requisitos de software
    y hardware.

Estas premisas se abordan de diferente manera según la tecnología que se
esta trabajando.

En los próximos artículos voy a ir escribiendo pequeños analisis de lo
que la experiencia me ha enseñado sobre las diferentes tecnologías que
se han ido desarrollando sus ventajas y desventajas.

En terminos generales lo que quiero transmitir en estos articulos lo pueden ver aca: Artículo de intenciones YouTube


saludos!

No hay comentarios.: