-
COMPILADOR e INTERPRETADO
Se ha clasificado los distintos lenguajes de programación en :
* Compilador: Traduce todo el código a la vez a un archivo ejecutable, luego se ejecuta rápidamente.
* Interpretado: Traduce y ejecuta el código línea por línea, lo que es más lento pero permite ver resultados inmediatos. -
QUÉ ES UN LENGUAJE DE PROGRAMACIÓN
Los lenguajes de programación son herramientas fundamentales en el mundo de la informática y la programación. Estos lenguajes permiten a los programadores comunicarse con las computadoras y darles instrucciones para realizar tareas específicas. -
TELAR PROGRAMABLE
Creado por Joseph Marie Jaquard en 1801, no es un lenguaje de programación en el sentido moderno, pero si un precedente importante en la historia de la programación. Su uso de tarjetas perforadas para controlar el patrón de tejido sentó las bases para la idea de programación a través de instrucciones codificadas. Este mecanismo de control, mecánico, anticipó el concepto de programación de sistemas computacionales modernos, así como de base para máquinas automáticas en diversas industrias -
LENGUAJE DE ADA LOVELACE
Entre 1842 y 1843, Ada Lovelace, no creó un "lenguaje de programación", pero fue pionera en la ideas fundamentales para la programación. Para traducir las memorias del matemático Luigi Menabrea creo un lenguaje de programación a mano para calcular la serie de números de Bernoulli con la máquina de Babbage. Así las aplicaciones de este lenguaje sirvieron para el cálculo algorítmico para máquinas, también como base para lenguajes de programación y dio Ideas para máquinas universales programables. -
MAQUINA DE TURING
La Máquina de Turing, desarrollada por Alan Turing en 1936, no usaba un "lenguaje de programación" e, como los lenguajes actuales, sino que demostraba que mediante algoritmos cualquier problema matemático podía ser resuelto. Sin embargo, su funcionamiento y los conceptos sentaron las bases de la teoría de la computación y de los lenguajes de programación modernos. También para la resolución de problemas mediante procesos lógicos Para el descifrado de códigos durante la II Guerra Mundial -
LENGUAJE MÁQUINA
NO REQUIERE DE COMPILADOR NI INTERPRETE
Primer lenguaje de programación, compuesto de 0s y 1s (binario), ejecutado directamente por la CPU. Es el lenguaje más básico y depende del hardware específico, usado en las primeras computadoras como la ENIAC. Como aplicaciones destaca la de la programación inicial, con el control directo del hardware. También el inicio de computadoras tempranas, con la ejecución de instrucciones básicas, y la automatización de procesos industriales simples. -
LENGUAJE ENSAMBLADOR
COMPILADOR
Traducía instrucciones a código máquina usando mnemónicos, lo que lo hacía más legible que el binario. Requiere un ensamblador para convertirlo en lenguaje de máquina. Fue desarrollado por Wheeler y otros para facilitar la programación en bajo nivel. Como aplicaciones destaca el control de hardware, con programación directa de dispositivos. Respecto a los Sistemas operativos, desarrollo de núcleos y controladores. Permitió ademas la Optimización de Software de alto rendimiento. -
FORTRAN
COMPILADOR
Es uno de los primeros lenguajes de alto nivel, para cálculos científicos y de ingeniería. Desarrollado por Backus en IBM. Sigue siendo utilizado en el cálculo numérico intensivo. El Fortran original fue presentado en 1957 y seguido por otras versiones. Algunas de sus aplicaciones son el cálculo científico, en modelos matemáticos. En Ingeniería, en el análisis estructural y diseño. En Meteorología para la predicción del clima. En Astrofísica para le modelado de fenómenos espaciales. -
LISP
INTERPRETADO
Lenguaje enfocado en el procesamiento simbólico en el ámbito de la IA. Fue creado por McCarthy en el MIT. Permitió el desarrollo de aplicaciones en IA, siendo uno de los lenguajes más antiguos aún en uso. Algunas de sus aplicaciones son en Inteligencia Artificial con el desarrollo de sistemas expertos. En procesamiento de datos con la manipulación simbólica y de listas. En Robótica en el control y planificación de tareas. También para creación de lenguajes de programación -
COBOL
COMPILADOR
Usado para aplicaciones de negocios, finanzas y administración, fue creado por Grace Hopper. Su principal propósito era hacer el software empresarial más accesible y entendible para los usuarios no técnicos. Algunas de sus aplicaciones son en Gestión empresarial, en sistemas de nómina y contabilidad. En la Banca, en procesos financieros y transacciones. En la Administración Pública, en administración de datos e informes. En el Comercio, en sistemas de inventario y facturación. -
BASIC
COMPILADOR E INTERPRETADO
Permite que la información sea introducida con un teclado y crea un programa que utiliza menús, como los de Windows. Permite ordenar y buscar a través de las líneas de código informático para encontrar errores. Algunas de sus aplicaciones son en la Enseñanza de programación básica. En el Desarrollo de software, con aplicaciones simples y prototipos. Para la Automatización, en el control de procesos y sistemas pequeños. En Juegos para el desarrollo de juegos simples. -
PASCAL
COMPILADOR
Desarrollado por Niklaus Wirth con el objetivo de enseñar buenas prácticas de programación estructurada. Es claro y sencillo. Es eficiente (en velocidad de compilación y en código generado). Algunas de sus aplicaciones son en la Enseñanza de programación estructurada.Creación de aplicaciones de escritorio. También en el Diseño y desarrollo de otros lenguajes de programación. En los Sistemas embebidos, con la programación de sistemas de control simples. -
C
COMPILADOR
Un lenguaje de propósito general diseñado por Ritchie en Bell. Fundamental para el desarrollo de sistemas operativos como Unix. Su flexibilidad y eficiencia sirvió en la base para muchos lenguajes modernos.Algunas de su aplicaciones son el desarrollo de Aplicaciones de sistemas y software de alto rendimiento. La creación de núcleos y controladores de hardware. Tambien en el control de dispositivos y sistemas electrónicos. En el desarrollo de videojuegos y aplicaciones gráficas. -
SMALLTALK
INTERPRETADO
Lenguaje orientado a objetos creado por Alan Kay, en Xerox PARC. Es pionero en el concepto de la programación orientada a objetos, influenciando lenguajes como Java y Python. Las principales aplicaciones son la creación de aplicaciones con un enfoque "OO", que es un enfoque de programación orientada a objetos . Diseño de entornos visuales interactivos. También el desarrollo rápido de prototipos de software. Sirve en la enseñanza de conceptos de programación orientada a objetos. -
C++
COMPILADOR
Una extensión de C que añade programación orientada a objetos. Fue creado por Bjarne Stroustrup. Impone unas normas de desarrollo que aseguran la mantenibilidad y reusabilidad del código. Sus aplicaciones son en la creación de aplicaciones de alto rendimiento. Programación de núcleos y controladores de hardware. Programación de dispositivos electrónicos y sistemas de control. Se usa en ingeniería para simulaciones complejas. Sirve para el desarrollo de motores gráficos y videojuegos. -
OBJECTIVE - C
COMPILADO
Objective-C fue bastante usado como herramienta de programación junto con las librerías creadas por NexT. Desde el año 1996 y hasta 2014 fue el lenguaje de programación nativo para el desarrollo en iOS y OS X. Sus aplicaciones son en el desarrollo de aplicaciones iOS/macOS. En el diseño de aplicaciones con interfaces de usuario (UI) complejas. También en el desarrollo con enfoque modular y reutilizable.
Para le Software empresarial, crea aplicaciones para gestión y administración. -
PYTHON
COMPILADOR e INTERPRETADO
Un lenguaje de propósito general diseñado para ser legible y fácil. Creado por Guido van Rossum. Es de código abierto, con una sintaxis sencilla que cuenta con una amplia biblioteca de herramientas. Sus aplicaciones son la creación de sitios y aplicaciones web. En el ánálisis de datos, visualización y machine learning. En Scripts para automatizar tareas repetitivas. En desarrollo de algoritmos y redes neuronales, en IA. En aplicaciones de escritorio y sistemas backend. -
R
INTERPRETADO
R esta formado por un conjunto de herramientas muy flexibles que pueden ampliarse con paquetes. Gratuito, de código abierto, su Open Source parte del proyecto GNU, (Linux o MFirefox). Sus aplicaciones son en el análisis y visualización de grandes volúmenes de datos. En modelos estadísticos y pruebas de hipótesis. Creación de modelos predictivos. En el análisis de datos genómicos y biológicos. También para el análisis de datos en áreas como economía, psicología y ciencias sociales. -
RUBY
INTERPRETADO
Ruby es reflexivo y orientado a objetos, creado por el japonés "Matz" Matsumoto. Combina una sintaxis inspirada en Python y Perl con características de programación orientada a objetos (Smalltalk). Comparte también funcionalidad con Lisp, Lua, Dylan y CLU. Sus aplicaciones son en la creación de aplicaciones web (Ruby on Rails). En Scripts para tareas de administración del sistema. Creación de interfaces en aplicaciones web. Aplicaciones de gestión de negocios y procesos. -
JAVA
COMPILADOR y INTERPRETADO
Desarrollado por James Gosling en Sun Microsystems. . Es un lenguaje que se compila en bytecode y se ejecuta en la máquina virtual Java (JVM), lo hace multiplataforma. Se utiliza en aplicaciones web con frameworks como Spring y Java EE. En el desarrollo de apps para Android, web y móviles. En sistemas de gestión empresarial (ERP) y CRM. Para el procesamiento de grandes volúmenes de datos ( Hadoop).También para el desarrollo para dispositivos con recursos limitados. -
PHP
INTERPRETADO
Script orientado al desarrollo web creado por R. Lerdorf.
Uno de los primeros que se podían incorporar directamente en el documento HTML. Se utiliza en creación de sitios dinámicos y aplicaciones web interactivas, del lado del servidor. En Plataformas como WordPress y Drupal. En el Desarrollo de tiendas en línea y plataformas de comercio electrónico. Para la creación de interfaces para integración de servicios web. En Scripts para tareas administrativas y procesamiento de datos. -
JAVA SCRIPT
INTERPRETADO
Creado por Brendan Eich en Netscape. Tiene muchas posibilidades, permite la programación orientado a objetos, con funciones, estructuras de datos complejas, etc. Se utiliza para la creación de apps móviles con frameworks como React Native. En el desarrollo de aplicaciones backend y servidores web. Para el diseño de animaciones y efectos visuales en páginas web. También en la creación de interfaces de programación para aplicaciones web. -
C #
COMPILADOR
Un lenguaje creado por Microsoft, bajo la dirección de Anders Hejlsberg. Es un compilador orientado a objetos, utilizado en el desarrollo de aplicaciones en la plataforma .NET y juegos con Unity. Se utiliza en la creación de software para Windows con .NET. Para el desarrollo web con ASP.NET. En la creación de videojuegos con Unity. También para el desarrollo de apps móviles con Xamarin. Como Software empresarial en sistemas de gestión y automatización de procesos. -
GO (Goland)
COMPILADOR
Desarrollado por Google. Es sencillo, rápido , muy utilizado en aplicaciones de servidores y red. Especializado en Cloud. Se usa para crear aplicaciones web rápidas y escalables (Gin y Echo). Herramientas (Docker y Kubernetes). Común en aplicaciones de redes y gestión de servicios, (Consul y Etcd). En bases de datos (InfluxDB) .En Herramientas como Prometheus y gestión de infraestructuras están escritas en Go. También en el desarrollo de plataformas de blockchain (Hyperledger Fabric) -
RUST
COMPILADOR
Desarrollado por Mozilla, destaca por su seguridad y la concurrencia. Combina control de bajo nivel con una gestión de memoria más segura. Popular en el desarrollo de sistemas y aplicaciones donde la eficiencia y la seguridad son críticas.Se aplica en sistemas operativos y controladores de hardware, (Redox OS). En motores de juegos (Amethyst).
En creación de aplicaciones de alto rendimiento. Para sistemas de procesamiento de datos y servidores y en redes y servicios distribuidos. -
ELIXIR
INTERPRETADO
Creado por José Valim, basado en la máquina virtual de Erlang (BEAM). Es utilizado en sistemas como redes sociales, mensajería y servicios que requieren alta disponibilidad. En Frameworks como Phoenix para aplicaciones web rápidas y eficientes. Para procesamiento en tiempo real en aplicaciones que gestionan datos en tiempo real, como mensajería o monitoreo. Usado en sistemas distribuidos y aplicaciones de microservicios. -
KOTLIN
COMPILADOR E INTERPRETADO.
Creado por JetBrains, es oficial como lenguaje de desarrollo para Android por Google. Mejora las limitaciones de Java, haciéndolo más conciso y seguro. Es lenguaje de programación estáticamente tipado. . Usado con frameworks. Permite compartir código entre Android, iOS y web. Desarrollo de aplicaciones de escritorio con Jetpack Compose. Utilizado en análisis de datos con bibliotecas como KotlinDL. -
DART
COMPILADOR e INTERPRETADO
Desarrollado por Google. Está diseñado para crear aplicaciones móviles, web y de escritorio con un solo código base.Usado principalmente con Flutter para crear aplicaciones móviles nativas para Android e iOS. Se utiliza para crear aplicaciones web rápidas y con alto rendimiento.También es usado para aplicaciones de escritorio, especialmente con Flutter para plataformas como Windows, macOS y Linux. Se puede usar en backend con frameworks como Aqueduct. -
JULIA
COMPILADOR E INTERPRETADO
Diseñado para la computación numérica y científica, con un rendimiento cercano como C y Fortran, pero con la facilidad de uso de Python. Muy utilizado en entornos académicos y de investigación. Usado en simulaciones, modelado matemático y análisis de datos. En aplicaciones en IA y aprendizaje automático. Para procesamiento de grandes volúmenes de datos. Usado en aplicaciones de alto rendimiento y computación distribuida.
En modelado financiero y análisis cuantitativo. -
TYPESCRIPT
COMPILADOR
Un superconjunto de JavaScript desarrollado por Microsoft. Mejora la escalabilidad y mantenibilidad de grandes aplicaciones web. Es de código abierto y contiene métodos, funciones y otras características de JavaScript. Usado en frontend con frameworks como Angular y React. Para aplicaciones de servidor con Node.js y frameworks como NestJS. Usado con React Native para aplicaciones móviles multiplataforma. En aplicaciones de gran escala y mantenimiento en equipos grandes. -
SWIFT
COMPILADOR
Desarrollado por Apple para reemplazar Objective-C, para el desarrollo de aplicaciones para iOS y macOS. Es mas seguro y eficiente, además de fácil de aprender para nuevos programadores. Puede usarse en conjunto con SwiftUI para crear interfaces para diferentes plataformas de Apple. Usado en aplicaciones de dispositivos Apple como Apple Watch y Apple TV. También es utilizado para el desarrollo de aplicaciones backend con frameworks como Vapor. -
CRYSTAL
COMPILADOR
Crystal es un lenguaje de programación que toma inspiración de Ruby, pero con una sintaxis estática y un rendimiento cercano al de C. Está diseñado para ser eficiente y fácil de usar. Usado con frameworks como Amber y Lucky para construir aplicaciones web rápidas y eficientes. Ideal para crear herramientas rápidas y eficientes. Aplicaciones que requieren un alto rendimiento y manejo eficiente de recursos, como servidores y procesamiento de datos. -
ZIG
COMPILADOR
Se centra en la simplicidad, rendimiento y seguridad. Es similar a C, pero mas moderno por la seguridad, manejo de errores y la gestión de la memoria. Usado para construir aplicaciones de bajo nivel, como sistemas operativos, controladores. Ideal para aplicaciones en dispositivos con recursos limitados por su bajo consumo de memoria. Utilizado en programas que necesitan un control preciso sobre el rendimiento. En el desarrollo de motores de juegos o software gráfico con eficiencia. -
NIM
COMPILADOR
Similar a Python, pero mas eficiente. Usado para crear aplicaciones de bajo nivel, como herramientas del sistema, controladores y sistemas operativos.Con frameworks se puede desarrollar aplicaciones web rápidas y eficientes. Para aplicaciones en dispositivos con recursos limitados por su eficiencia en el manejo de memoria. Usado en el desarrollo de juegos y aplicaciones gráficas de alto rendimiento. Para aplicaciones con grandes volúmenes de datos. -
BOSQUE
COMPILADOR
Creado por Microsoft. Es experimental para eliminar la complejidad accidental en el desarrollo de software, haciéndolo más fácil de razonar y depurar. Diseñado para ser un lenguaje eficiente, ideal para la creación de sistemas donde se necesita control sobre los recursos y rendimiento. Permite escribir aplicaciones que manejan múltiples tareas de forma eficiente. Para la investigación de formas más concisas y eficientes de trabajar con datos y tareas concurrentes. -
BICEP
COMPILADOR.
Desarrollado por Microsoft, para simplificar la creación de plantillas de infraestructura como código (IaC) en Azure. Es más legible y manejable , para la automatización y gestión de infraestructura en la nube. Permite automatizar la creación y configuración de recursos : máquinas virtuales, redes, bases de datos. Facilita la gestión de la infraestructura a lo largo del tiempo, con actualizaciones y cambios de manera controlada y reproducible. Se pueden crear módulos reutilizables. -
CARBON
COMPILADOR
Desarrollado por Google, diseñado como sucesor de C++. Está en sus primeras fases, se espera que tenga un impacto en el desarrollo de software de sistemas y aplicaciones de alto rendimiento. Ideal para aplicaciones como juegos, motores gráficos, y procesamiento intensivo de datos.Busca mejorar la interoperabilidad. Es adecuado para la creación de bibliotecas de uso general.Puede ser útil en el ámbito educativo para enseñar conceptos avanzados de programación. -
MOJO
COMPILADOR E INTERPRETADO
Lanzado en 2023 por Modular AI. Diseñado para aplicaciones de IA y aprendizaje automático, combinando con Python con rendimiento al de C++. Esta diseñado para integrarse en la IA, permitiendo el desarrollo rápido de modelos y sistemas de aprendizaje profundo. Una sintaxis más moderna y accesible, para tareas intensivas en cálculos, aplicaciones que requieren procesamiento de grandes volúmenes de datos, análisis de datos en tiempo real y procesamiento flujos de datos. -
LOS CINCO LENGUAJES DE PROGRAMACION MÁS DEMANDADOS EN 2024
Ver enlace para su lectura de los cinco lenguajes de programación mas populares en 2024:
https://keepcoding.io/blog/lenguajes-de-programacion-mas-usados/ -
WEBGRAFÍA
Ver Webgrafía utilizada en la elaboración de la Timeline en fichero adjunto