Les quiero comentar que hoy en día hablar de aplicaciones Web es muy común, incluso en las empresas, ya que estas están comenzando a plantear que sus sistemas internos que corren como aplicaciones de escritorio, instaladas en sus equipos locales con algún servidor en su intranet se migren al Internet, entonces la principal diferencia con una aplicación web es que los usuarios pueden utilizarla accediendo a un servidor web (Windows o linux) a través de Internet o de una intranet mediante un navegador que puede ser Internet Explorer, Mozilla FirexFox entre otros, por ejemplo Wikipedia, Gmail, Hotmail, Mercadolibre, Ebay, Amazon, Youtube, Sitios de compra entre otros; son ejemplos claros de estos sistemas web enriquecidos.
Las ventajas que presentan estas aplicaciones son diversas pero las más importantes son:
Pero me voy a centralizar desde el punto de vista de las herramientas, que es lo que debe saber el programador para crear este tipo de aplicaciones, primero que nada la base será el lenguaje HTML y Javascript; aquí podemos utilizar algún buen editor y diseñador de páginas las alternativas:
Luego este programador debe conocer por lo menos uno de los lenguajes de programación para el web, del lado del servidor, que le permita interactuar o conectarse con un motor de base de datos, las alternativas son:
Para los datos y su portabilidad el ganador indiscutible es XML y XSD; el motor de la base (RDBMS) puede ser cualquiera, sea un MySql, Oracle, Microsoft SqlServer, DB2, Informix entre otros.
El servidor web en cuanto al Sistema Operativo puede ser un Linux que tenga instalado Apache que es el servicio que expone el servidor web de aplicaciones, y en Windows Server deberá estar el IIS (Internet Information Server) que hace lo mismo que Apache pero en Windows, otro servicio que se está usando bastante es JBoss con la misma finalidad.
Por último siempre estarán las tecnologías que complementan al desarrollador para mejorar aspectos más puntuales en estas aplicaciones y enriquecerlas tales como:
Para concluir en todos estos lenguajes siempre estará presente el conocimiento de la Programación Orientada a Objeto, las mejores prácticas de desarrollo, el uso de librerías para reutilización de código, el uso de protocoles de comunicación seguros como HTTPS, Firmas Digitales, Canales Seguros; ya que si la aplicación esta en el internet se expone a lo que yo llamo “El salvaje Oeste”, lleno de Hackers.
Quisiera terminar este artículo diciendo, que si se me escapó algún lenguaje o tecnología pido las disculpas del caso, ya que lo he escrito desde mi humilde experiencia, espero haber aclarado esto del desarrollo de aplicaciones web, tanto para mis estudiantes como amigos en general.