¿Quiere crear o actualizar su sitio web? ¿Debería utilizar un CMS WordPress o Drupal, como los 50 sitios web para empresas de %? ¿O desarrollar su propio sitio personalizado? Desde los lenguajes de desarrollo hasta la gestión de bases de datos, le explicamos cómo llevar a cabo su proyecto utilizando las tecnologías web que mejor se adapten a sus necesidades.
Las tecnologías web evolucionan constantemente. Algunas desaparecen para dejar paso a otras. Sin embargo, hay algunas cosas seguras. PHP es una de ellas. Utilizado por el 76,7 % de los sitios web del mundo, según W3Techs, este lenguaje es también la base de populares CMS como WordPress y Drupal.
En Francia, más de la mitad de los sitios web de empresas utilizan uno de estos dos sistemas de gestión de contenidos, según una encuesta realizada entre 800.000 empresas por la agencia web Kernix en 2023. Contrariamente a lo que se cree, los CMS son tan atractivos para las microempresas y las pymes como para los grandes grupos del CAC40.
La elección de una tecnología de desarrollo repercutirá en muchos aspectos de su proyecto de sitio o aplicación web. La funcionalidad, el rendimiento, la seguridad y los costes de desarrollo y mantenimiento dependen de ello.
Introducción: normas web
Una tecnología de desarrollo web, también conocida como pila tecnológica, está formada por lenguajes front end y back end, un sistema de gestión de bases de datos (SGBD) y todo el ecosistema que los rodea (librerías, API, frameworks, interfaces de usuario, etc.). Pero incluso antes de abordar estas cuestiones al embarcarse en un proyecto, lo más importante es empezar por familiarizarse con el entorno web. Y, más concretamente, los estándares web.
De hecho, nos interesa evitar las tecnologías propietarias en favor de los estándares web. De lo contrario, se corre el riesgo de caer en la trampa de los navegadores que no admiten todas las extensiones... Estas normas las define el W3C (World Wide Web Consortium), organismo internacional cuyo principal objetivo es conseguirlo. Los navegadores que respetan las normas y la interoperabilidad cumplen sus recomendaciones.
HTTP, el protocolo básico
Estas tecnologías normalizadas incluyen protocolos de comunicación entre el cliente y el servidor, tales como Protocolo de transferencia de hipertexto (HTTP). Un conocimiento básico de su funcionamiento es esencial para cualquier trabajo de desarrollo. Por eso decimos que el primer "lenguaje" que hay que dominar, o al menos entender, es HTTP.
El protocolo ha evolucionado considerablemente desde 1997 y HTTP/1. En 2015, HTTP/2 introdujo la multiplexación de peticiones para acelerar la carga de las páginas web. Y como ahora todos los sitios son seguros gracias a TLS (HTTPS), esto se traduce en comprobaciones y tiempo de carga adicionales. Esto llevó a la creación de HTTP/3 en 2018 para mejorar aún más la velocidad de carga de las páginas seguras. Así que lo mejor es que compruebes que tu servidor web es compatible con HTTP/3, ¡o HTTP/2 si no lo es!
En el lado del cliente (front end) : HTML, CSS y JavaScript, los 3 estándares
Esta parte "pública" del intercambio entre el cliente y el servidor se basa en tres lenguajes estándar:
- HTMLes un lenguaje de etiquetado. Sirve para estructurar el contenido de una página web (definir un título, un párrafo, imágenes/vídeos, enlaces, etc.).
- CSS, un lenguaje de hojas de estilo. Te permite formatear la página web.
- javascriptel lenguaje de programación para interfaces web que añadirá interactividad.
Para adaptar tu página a todos los soportes (smartphone, tablet, pantalla grande, sistema de audio navegación, etc.), es importante separar adecuadamente el contenido de su presentación. Por ejemplo, para un lector de pantalla, usaremos una etiqueta <strong> en HTML para enfatizar la importancia sin connotación visual, y en CSS para decorarlos hábilmente.
Por parte del cliente, lo mejor para los desarrolladores web es utilizar el depurador o la herramienta de desarrollo del navegador. Se utiliza para comprobar lo que se ha transferido en HTTP, el código fuente de la página, el rendimiento de la red, las hojas de estilo, etc., y para hacer avanzar paso a paso los programas JavaScript.
En el lado del servidor (back end) : PHP es esencial
En el lado del servidor, en cambio, ¡puedes elegir entre varias armas! Como no es necesario utilizar un lenguaje web estándar para desarrollar la aplicación, el abanico de lenguajes de programación es enorme... pero los tres favoritos de los desarrolladores son PHP, Java y Python.. Todo es cuestión de preferencias de los desarrolladores. Los requisitos de rendimiento y el entorno técnico del proyecto también pueden influir en la elección del lenguaje.
A modo de ejemplo, PHP es muy popular para el desarrollo web. Particularmente debido a los muchos CMS de código abierto en PHP disponibles, como WordPress o drupal. Muy solicitada por su sencillez, la solución CMS le permite producir contenidos sin necesidad de grandes conocimientos de desarrollo. Basta con estructurar las páginas en HTML... o incluso utilizar plantillas.
Marcos y bases de datos
Por supuesto, es posible llevar a cabo todo el desarrollo del proyecto para obtener algo más sofisticado, personalizado y adaptado a necesidades específicas.. A continuación, utilizamos marcos de desarrollo back-end. También en este caso, cada lenguaje ofrece una amplia gama de frameworks, pero los más utilizados hoy en día siguen siendo los :
Todo depende de las preferencias (y la experiencia) del desarrollador. Lo más importante es asegurarse de elegir un lenguaje y su marco asociado que sigan el ritmo de la evolución del mercado.
Por último, estos sistemas necesitarán una base de datos. Y aquí tampoco faltan opciones. Hay dos familias principales de SGBD: Bases de datos SQL (lenguaje de consulta estructurado) y NoSQL (no debe entenderse como " No SQL" en su lugar no solo SQL). Las bases de datos SQL están muy extendidas, pero en los últimos años se ha producido una evolución hacia las NoSQL. Otro criterio de selección también puede ser la preferencia entre (o la necesidad de) una solución paga y con licencia (Oracle, servidor SQL) y una solución relacional de código abierto (PostgreSQL, MySQL, MariaDB) o NoSQL (MongoDB, Cassandra).