Diferencias entre Frameworks y Lenguajes

Publicado por andrea Jue 19/04/2012

En algunos proyectos web se ven datos incorrectos cuando se describe utilizando de igual forma frameworks y lenguajes, como si significaran lo mismo. Este popurri de términos tecnológicos que se utilizan indistintamente, suelen ser palabras de moda o buzzwords que atraen el posicionamiento en los buscadores, sin embargo el mensaje no tiene sentido porque las palabras técnicas tienen referencias erróneas. Los términos que más se utilizan en este tipo de mensajes sobre proyectos web son frameworks y lenguajes de programación. Hoy queremos hablarles sobre las diferencias entre estos dos términos.

Lenguaje de Programación

Un lenguaje de programación es el idioma para desarrollar un software, se podría decir que los programadores conocen el idioma con el cuál comunicarse con las máquinas. Y existen diversidad de idiomas y cada técnico esta especializado en uno pero conoce los otros también. Como ejemplo sería igual con las personas que saben otros idiomas: inglés, francés o alemán y pueden comunicarse con las nativas de esos idiomas.

Según la definición de Wikipedia "Un lenguaje de programación es un idioma artificial diseñado para expresar procesos que pueden ser llevadas a cabo por máquinas como las computadoras. Pueden usarse para crear programas que controlen el comportamiento físico y lógico de una máquina, para expresar algoritmos con precisión, o como modo de comunicación humana. Está formado por un conjunto de símbolos y reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos y expresiones. Al proceso por el cual se escribe, se prueba, se depura, se compila y se mantiene el código fuente de un programa informático se le llama programación."

Lenguajes de programación: PHP, Python, Ruby, Perl, C++, Java. Estos son los más conocidos, sin embargo, no dejan de aparecer lenguajes todos los días para realizar procesos con las máquinas. Nosotros en Punto Abierto por ejemplo estamos especializados en lenguaje de programación PHP

Frameworks

La palabra framework si la traducimos de forma directa sería "marco de trabajo", pero haciendo una traducción más adaptada a la forma de utilizarla sería estructura o infraestructura digital. En ella se trabaja escribiendo el código con un sólo lenguaje que puede ser PHP, Python, Ruby.

Según Wikipedia: "En el desarrollo de software, un framework o infraestructura digital, es una estructura conceptual y tecnológica de soporte definido, normalmente con artefactos o módulos de software concretos, con base a la cual otro proyecto de software puede ser más fácilmente organizado y desarrollado. Típicamente, puede incluir soporte de programas, bibliotecas, y un lenguaje interpretado, entre otras herramientas, para así ayudar a desarrollar y unir los diferentes componentes de un proyecto.

Para entender mejor qué es la infraestructura y cuál el lenguaje vamos a señalar algunos ejemplos:

Framework -> Django / Lenguaje de programación -> Python

Framework -> Kohana / Lenguaje de programación -> PHP

Framework -> Ruby on Rails / Lenguaje de programación -> Ruby

Framework -> Catalyst /Lenguaje de programación -> Perl

Framework -> Spring / Lenguaje de programación -> Java

Informaciones interesantes

Python: El nombre Python fue puesto por los programadores que lo crearon en honor al grupo humorístico inglés Monty Python, con películas tan buenas como La vida de Brian o El sentido de la vida. Grupo del cuál formó parte el gran director de cine Terry William con películas como Twelve Monkeys, The Imaginarium of Doctor Parnassus , Brazil.

Django nació dentro del equipo desarrollo web del periódico "Lawrence Journal-World" en Kansas, Estados Unidos. Según esta fuente: "El equipo "World Online", responsable de la producción y mantenimiento de varios sitios de noticias locales, prosperado en un ambiente de desarrollo dictado por los tiempos limites del periodismo. Para los sitios - incluyendo LJWorld.com, Lawrence.com y KUsports.com - periodistas (y administradores) demandaban que fueran añadidas características y aplicaciones enteras fueran construidas en una intensamente rápida agenda, comúnmente con solo días u horas para desarrollarlo. De este modo, Simon y Adrian habían desarrollado un web framework que les ahorraba tiempo - esa fue la única manera en que ellos pudieron construir aplicaciones mantenibles bajo los estrictos tiempos de entrega. En el verano del 2005, después de habiendo desarrollado este framework hasta un punto donde eficientemente impulsaba la mayoría de los sitios "World Online", el equipo, el cual ahora incluía a Jacob Kaplan-Moss, decidieron liberar el framework como software de codigo abierto. Lo liberaron en Julio de 2005 y lo llamaron Django, en honor al guitarrista de jazz Django Reinhardt."

La diferencia entre frameworks y lenguajes de programación no sólo se confunde para personas que no tienen conocimientos técnicos de desarrollo, incluso puede ocurrir que algunos desarrolladores como es en este caso se confundan:

Ruby on Rails (Framework que utiliza lenguaje Ruby) versus PHP (lenguaje de programación)

Como pueden ver en los comentarios los usuarios aclaran que la producción del vídeo a cargo de una empresa que trabaja en Ruby on Rails confunde los términos comparando un lenguaje con un framework.

Añadir nuevo comentario