Universitat Oberta de Catalunya

Páginas web estáticas vs páginas web dinámicas. Las bases de datos en Internet

Sin duda, una de las razones del éxito de Internet radica en la gran cantidad de información almacenada bajo su techo. En el momento de escribir este artículo, Google tiene indexadas 4.285.199.774 páginas web, lo cual puede dar una idea de la cantidad de datos que se encuentran en la red. Y Google no lo tiene indexado todo.

Una de las características más interesantes de Internet es la facilidad para publicar información. Sin embargo, esta facilidad es relativa. En los inicios del www y de las páginas HTML, cada vez que se cambiaba la información de una página, lo que se hacía era editar el fichero HTML, modificando el texto pero procurando no tocar los tags que daban forma a la página. Sin embargo, este sistema (que aún utilizan muchos “webmasters”) es engorroso y poco práctico. Además si el contenido (textos, banners, imágenes) depende del trabajo de varias personas el coste de realización y publicación puede ser muy alto en tiempo, dinero y organización. Cuando nos encontramos con una página de estas características decimos que es una página estática, porque el contenido no se actualiza con una cierta frecuencia, sino que pueden pasar meses de una actualización a la siguiente.

Las páginas estáticas suelen tener una utilidad relativa. Una página web con la información de un club deportivo donde se explican cuatro reglas sobre el deporte y una dirección de contacto será útil para algunas personas, pero una vez visiten la página no volverán a ella. Sin embargo, si además de la información sobre el deporte se explica cuándo serán las próximas competiciones, la clasificación de la liga, etc.… se da un valor añadido a la página que facilita que los visitantes vuelvan, y dado el caso a la hora de escoger club escojan aquél que más conocen. De alguna manera podríamos decir que aquí la clave es el servicio que se presta al usuario.

Pero si deseamos hacer una página de actualidad (entendida en el sentido más amplio de la palabra), necesitaremos contar con una página dinámica que sea fácil de actualizar, e incluso de donde pueda recuperarse información anterior.

Evidentemente, antes de crear un nuevo sitio deberemos saber tanto a qué público estará destinado cómo de qué manera lo daremos a conocer. Hay muchas maneras de publicitar un sitio web, pero sin duda estar bien posicionado en los buscadores facilita la llegada de visitantes que seguramente no llegarían con banners de publicidad. Para que una página esté bien posicionada en los buscadores una de las claves es que se actualice a menudo. Y para una actualización frecuente la mejor solución es poder contar con una página dinámica con acceso a bases de datos.

Las bases de datos, sin duda, están entre las herramientas informáticas más usadas hoy en día. En una página web dinámica la base de datos proporciona la información que se presentará al usuario, con la gran ventaja de que la información puede variar según el usuario, según la hora del día o según lo que se desee. La forma de presentar los datos es indiferente, es más, podemos tener diferentes plantillas que nos permitan presentar los mismos datos, de manera que el usuario pueda ver la página como más le guste sin perder por ello nada de información. Existen muchas páginas comerciales donde se aprovechan estas características, como por ejemplo en Amazon (http://www.amazon.com) donde al buscar un libro nos dan, no sólo información del libro, sino que, incluso, nos hacen una oferta de 2 x 1 con un libro de temática similar. O en Yahoo! ( http://www.yahoo.com ) que podemos personalizar a nuestro gusto adaptando no sólo el diseño sino incluso definiendo que contenidos querremos ver.

Hoy en día existen muchas maneras de crear páginas web dinámicas. Como ejemplos podríamos decir que Microsoft tiene su plataforma .NET, que soporta diferentes lenguajes con la tecnología ASP, Macromedia tiene su servidor ColdFusion que permite trabajar con aplicaciones ASP, PHP y JSP, y de software libre tenemos Apache con PHP o Apache con Java y JSP… son sólo ejemplos incompletos. Tecnologías y posibilidades hay muchas, sólo hay que escoger la que más nos guste o nos interese.

Pero para crear una página web dinámica no nos podemos quedar sólo con la tecnología del servidor de Internet. Existe una segunda parte muy importante que es el gestor de bases de datos. De nuevo tenemos numerosas opciones a escoger dependiendo de nuestros intereses. Podemos hablar de Oracle, PostgreSQL, Microsoft SQL Server o MySQL, por hablar de los más conocidos. Todos ellos pueden usarse para páginas webs dinámicas o aplicaciones en Internet, aunque dependiendo de la plataforma y del lenguaje utilizado se usa más una u otra. Así, en los servidores Windows se acostumbra a usar Microsoft SQL Server, aunque también se usa MySQL como alternativa de bajo coste. En entornos Apache con programación en PHP la base de datos más utilizada, sin duda, es MySQL. De hecho se habla de la tecnología LAMP (Linux – Apache – MySQL – PHP) como una de las tecnologías con más futuro en la Red. En entornos de programación JSP (generalmente sobre Apache y Tomcat), se suele utilizar PostgreSQL o MySQL. Finalmente, una combinación clásica es la de Sun Solaris con iPlanet y Oracle, usando OC4J (Oracle Container for Java) como servidor de aplicaciones Java.

La creación de páginas web con contenido dinámico exige la utilización de bases de datos (que serán las encargadas de almacenar la información) y programación. Por tanto, a la hora de realizar un sitio es necesario tener claro qué queremos hacer con él para poder decidir si será dinámico o estático. Una vez tengamos claro que nos interesa un sitio dinámico (y acostumbra a ser lo más conveniente), deberemos definir qué tecnología usar y qué base de datos. En general la tecnología Microsoft es suficientemente fiable, la programación en ASP tiene la gran ventaja de permitir la utilización de muchos lenguajes diferentes (C, VisualBasic, Pascal, Cobol,…), y SQL Server es un gestor de bases de datos potente, flexible y fiable. En cambio, es una tecnología cara.

Por otro lado, la tecnología LAMP es gratuita (todo el software es gratuito en su uso para Internet), y Linux y Apache son posiblemente de lo mejor en sus correspondientes ámbitos. Sin embargo, MySQL tiene algunas limitaciones (no tiene algunas funcionalidades que sí tienen SQL Server o PostgreSQL), aunque resulta muy potente y útil para prácticamente cualquier tipo de aplicaciones. Y en cuanto a PHP, como lenguaje de programación es un lenguaje específico para Internet (a diferencia de los lenguajes que comentaba de ASP.NET ) que cada vez está teniendo más aceptación, y del que podemos encontrar numerosas aplicaciones gratuitas fácilmente adaptables a nuestras necesidades.

Finalmente, la arquitectura Java (que incluye JSP, servlets, aplicaciones Java y J2EE) con la combinación de Linux, Apache, Tomcat o Jboss (para J2EE) y posgreSQL es potente y robusta, al mismo precio que la LAMP, y se usa mucho en desarrollos profesionales. Tal vez la dificultad en este caso sea que Java es un lenguaje menos conocido y algo más complejo que los usados por los otros dos grandes sistemas.

Referencias

> Programación con bases de datos
http://www.programacion.com/bbdd/
http://www.abcdatos.com/tutoriales/programacion/basesdedatos/sql.html

> MySQL
http://www.mysql-hispano.org/
http://www.programacion.net/tutorial/php/
http://www.mysql.com/
http://www.mysql.com/documentation/
http://www.mysql.com/press/user_stories/yahoo_finance.html

> Microsoft SQL Server
http://www.microsoft.com/sql/default.aspc
http://www.microsoft.com/latam/sql/
http://www.monografias.com/trabajos14/sqlserver/sqlserver.shtml
http://www.webestilo.com/php/articulo.phtml?art=19

> PostgreSQL
http://www.postgresql.cl/
http://es.tldp.org/Postgresql-es/web/navegable/todopostgresql/postgres.htm

> Comparativas entre PostgreSQL y MySQL
http://www.mmlabx.ua.es/mysql-postgres.html

> PHP
http://www.webestilo.com/php/
http://www.desarrolloweb.com/php/
http://www.programacion.com/php/
http://www.phpbuilder.com/
http://php.resourceindex.com/
http://www.php.net/

> ASP .NET
http://www.programacion.com/asp/
http://www.microsoft.com/spanish/msdn/spain/eventos/presentaciones/asp.asp
http://www.asp.net/Default.aspx?tabindex=0&tabid=1
http://www.microsoft.com/net/
http://www.whoishostingthis.com/resources/asp/
http://www.aspfree.com/

> JSP
http://java.sun.com/products/jsp/
http://www.jspin.com/
http://www.programacion.com/java/tutorial/servlets_jsp/

> LAMP
http://www.mexicoextremo.com.mx/noticias/lamp.php
http://www.onlamp.com/

> Aplicaciones open source
http://www.sourceforge.com

Acerca del autor

Carlos Casado Martínez obtuvo la licenciatura en Informática por la Universitat Politècnica de Catalunya (UPC) en 1992. Fue responsable de innovación de uno de los centros de formación del Departament de Treball de la Generalitat de Catalunya. Más tarde trabajó varios años como consultor en la Universitat Oberta de Catalunya (UOC). En el año 2001 comenzó a trabajar como profesor del Grado en Multimedia de la UOC. Desde entonces se encarga de las asignaturas del área tecnológica.