¿Es HTML un lenguaje de programación?

Si estás inmerso en el mundo informático, específicamente en el desarrollo web y programación, estoy seguro de que esta pregunta en algún momento te representó un debate.

Ahora bien, si todavía no lo tienes claro, déjame decírtelo de manera tajante: HTML NO es un lenguaje de programación de computadoras.

Esto puede alterar a los desarrolladores web y diseñadores gráficos que se enorgullecen de las páginas web que han creado. Sin embargo, HTML no es un lenguaje de programación.

¿html es un lenguaje de programación?

¿Por qué HTML no es un lenguaje de programación?

HTML no es un lenguaje de programación por tres razones:

  • No permite el uso de variables.
  • No permite el uso de sentencias condicionales.
  • No proporciona ninguna estructura de bucle iterativo.

¿Qué es un lenguaje de programación?

Para discutir por qué algo es o no un lenguaje de programación, debemos establecer una definición básica de lo que es un lenguaje de programación de computadoras. Para hacer eso, debemos considerar lo que hace una computadora, y más específicamente, lo que hace la CPU.

En el nivel más básico, una CPU hace tres cosas:

  • Leer datos de la memoria;
  • Realizar lógica condicional en esos datos; y
  • Realizar iterativamente esa lógica a la velocidad de un rayo.

Para que cualquier cosa califique como un lenguaje de programación de computadoras, debe proporcionar una forma de programar estos aspectos de una computadora.

HTML no admite ninguna de estas funciones. Es por eso que HTML no es un lenguaje de programación.

HTML no permite la lógica, el control, el almacenamiento y la recuperación de datos, los bucles o cualquier otra cosa que haga un lenguaje de programación. HTML es un lenguaje de marcado para estructurar documentos”.

Ejemplos de lenguajes de programación

Python y Rust califican como lenguajes de programación de computadoras. También lo hacen C y Java.

Todos estos lenguajes proporcionan una forma de declarar variables y asignar valores a esas variables. Así es como los lenguajes de programación gestionan los datos.

Estos lenguajes admiten declaraciones condicionales if... then... else . Así es como se realiza la lógica condicional.

Estos lenguajes también admiten bucles for y while. Así es como se realiza la lógica repetitiva e iterativa millones de veces por segundo.

HTML no tiene características equivalentes. HTML no puede programar una computadora. Por lo tanto, HTML no es un lenguaje de programación de computadoras.

¿HTML combinado con CSS califica como lenguaje de programación?

Todas laspáginas web modernas utilizan una combinación de CSS y HTML para la maquetación y el diseño. HTML da formato al texto de la página, mientras que CSS estructura y aplica estilo a la página con fuentes, diseño de página y colores.

Una pregunta que surge a menudo es si CSS es un lenguaje de programación o si la combinación de CSS y HTML cumple con el umbral para calificar como lenguaje de programación. Desafortunadamente, no lo hacen.

Puedes hacer cosas impresionantes con HTML y CSS. Hay varios ejemplos en JSFiddle donde los desarrolladores implementan la Criba de Eratóstenes, una forma de calcular números primos, con HTML y CSS. Ese es un algoritmo complicado y ciertamente demuestra cómo HTML y CSS pueden aprovechar la potencia de procesamiento de una CPU.

Desafortunadamente, la implementación de HTML y CSS requiere demasiada codificación. Al final, esto destaca las deficiencias de HTML y CSS como supuestos lenguajes de programación, frente a sus méritos.

CSS proporciona la capacidad de declarar estilos como elementos de clase, pero describir estas construcciones como variables es una exageración. Y sí, un desarrollador puede aplicar estilos condicionalmente con CSS, pero no a través de una sintaxis if…else tradicional. CSS proporciona solo formas rudimentarias de realizar cálculos e implementar lógica condicional, y carece por completo de una estructura de bucle iterativo.

Incluso combinado con CSS, no podemos decir honestamente que HTML es un lenguaje de programación.

Para profundizar en el punto, cada vez que se requiere un procesamiento complicado para representar una página HTML, se debe inyectar un programa real en la mezcla. Es por eso que vemos HTML combinado regularmente con Java, PERL y PHP en el servidor y JavaScript en el cliente.

HTML es en realidad un lenguaje de marcado

HTML no es un lenguaje de programación. Es un lenguaje de marcas (markup). De hecho, ese es el nombre de la tecnología: HyperText Markup Language. Ese hecho autoidentificado por sí solo debería resolver el debate.

Entonces, ¿qué pasa si HTML es un lenguaje de programación o no?

Tal vez la verdadera pregunta sea esta: ¿importa si HTML se ajusta a la definición técnica de un lenguaje de programación o no?

"Sospecho por qué la gente quiere decidir esto. Con demasiada frecuencia, se trata de controlar quién es un 'programador real' y quién no lo es. No hagas eso".  Ned Batchelder, ingeniero de software. 

Batchelder dijo que puede ver ambos lados en el debate. Una persona podría argumentar razonablemente que HTML es un lenguaje de programación porque es un lenguaje de computadora, estructurado para decirle a una computadora qué hacer, específicamente cómo mostrar una página. "Hay reglas, y si las rompes, no hará lo que quieres".

Que HTML sea técnicamente un lenguaje de programación o no, no disminuye su importancia en el mundo del desarrollo de software. No disminuye las habilidades de las personas que crean sitios web increíbles con HTML.

HTML es el primer lenguaje que debes aprender

Aunque HTML no es un lenguaje de programación, sigue siendo el primer lenguaje que cualquier persona que quiera convertirse en programador debe aprender.

Es fácil escribir tu primer programa HTML. Todo lo que necesitas es un navegador web y un editor de texto. No hay necesidad de instalar compiladores o intérpretes como lo harías con Java o Python.

Además, obtienes resultados instantáneos. Cuando un programa funciona, puedes ver los resultados de su esfuerzo en un navegador web inmediatamente.

Las lecciones que un aspirante a desarrollador aprende de HTML se trasladarán a lo largo de su carrera de programación. Éstos incluyen:

El papel de HTML en el desarrollo de páginas web;

  • Cómo el código se traduce en software;
  • La importancia de la estructura del programa;
  • Cómo solucionar problemas de código; y
  • El sentimiento de satisfacción cuando un programa de software funciona.

Los desarrolladores que comienzan con HTML crean una base sólida para aprender otros lenguajes informáticos, como Java o Python.

Trayectoria profesional HTML y CSS

Si quieres aprender a programar, eso es genial. Debes seguir siempre tus intereses.

Pero puedes tener una carrera satisfactoria y exitosa en informática y nunca aprender cómo compilar un archivo fuente Java o implementar un paquete NodeJS.

Los desarrolladores web autónomos con conocimientos de HTML y CSS cobran un promedio de $200 por crear un sitio web y $100 al mes por el mantenimiento continuo. Con solo 10 clientes, un desarrollador web independiente puede generar más de $15,000 al año. Con un poco de prisa, un buen desarrollador web puede duplicar eso.

Si te encanta el desarrollo de HTML y la naturaleza visual del diseño de sitios web, no permitas que el debate sobre el lenguaje de programación disminuya tu amor por el oficio. Es solo una etiqueta…es básicamente una tontería.

¿Cuál es la diferencia entre codificación y programación?

1 Comentarios

Tu opinión es importante para mí, porque me ayuda a mejorar. Si te gustó el articulo o tienes alguna sugerencia, déjame tu comentario con tu nombre para poder responderte tan pronto como pueda.

  1. Estoy de acuerdo en que NO es un lenguaje de programación (es un lenguaje de marcas); pero NO por las razones que indican.

    Existen los lenguajes "declarativos" que tampoco tienen proporcionan estructuras de bucles (prolog, por ejemplo: y SQL en sus elementos más puros... los "bucles" de SQL son prescindibles).

    ResponderBorrar
Publicar un comentario
Artículo Anterior Artículo Siguiente