La Clasificación de los lenguajes de programación es realmente amplia debido a la variedad que existe y a los programas o tecnología a la que se aplican, pero acá te mostraremos todo lo que necesitas saber sobre este tema.
Clasificación de los lenguajes de programación
Hay distintas formas de clasificación de los lenguajes de programación, algunos de los criterios más utilizados son el nivel de abstracción, el paradigma de programación, el lugar donde ejecución, la interactividad, la productividad, entre otros. No todos los lenguajes de programación admiten clasificación.
Según el Nivel de abstracción
Los lenguajes de bajo nivel, al usar este tipo de lenguajes se tiene en cuenta cada una de las características del procesador.
Los lenguajes de nivel medio son aquellos lenguajes de programación que mantienen ciertas características de los lenguajes de bajo nivel, pero tienen un mayor grado de abstracción.
Los lenguajes de alto nivel, de los lenguajes de programación son los más parecido al lenguaje del ser humano, su nivel de complejidad y conceptualización se parece al pensamiento humano, abstrayéndose del funcionamiento de la maquina.
Hay autores que solo establecen lenguajes de programación de bajo y alto nivel.
Según el propósito
Los lenguajes de propósito general son los lenguajes de programación que sirven para cualquier tipo de tareas.
Los lenguajes de propósito específico son aquellos lenguajes que fueron creados para cumplir con un objetivo muy definido.
Los lenguajes de programación de sistemas son los creados para desarrollar los sistemas operativos o los drivers.
Los lenguajes de script son lenguajes de programación utilizados para realizar diferentes tipos de tareas de control y complementarias. Anteriormente eran los llamados lenguajes de procesamiento por lotes. Estos se dividen a su vez en de Shell, de GUI, de programación web, entre otros.
Según su evolución histórica
Los lenguajes de primera generación, los llamados códigos maquinas.
Los lenguajes de segunda generación, conocidos como lenguaje ensamblador.
Los lenguajes de tercera generación, comprende la mayoría de los lenguajes de programación modernos, ellos fueron desarrollados para hacer más sencillo para los seres humanos la programación.
Los lenguajes de cuarta generación, su diseño se basa fundamentalmente en el abordaje de un problema es especifico.
Los lenguajes de quinta generación, los lenguajes de programación de este nivel buscan que el programador establezca de qué manera se ha de resolver cualquier problema, las condiciones necesarias para lograrlo y la forma en que la maquina lo resolverá. Para ello se utiliza la inteligencia artificial.
Según su manera de ejecutarse
Los lenguajes compilados, se utilizan varios tipos de lenguajes de programación a la vez, uno sirve para traducir el código programa en código máquina, otro programa es el encargado de unir los ficheros del código maquina del programa principal con todos los códigos de las librerías para finalmente producir el programa ejecutable.
Los lenguajes interpretados, se tiene un programa que funciona de interprete, es el que establece las instrucciones del programa de una forma continua.
Según su manera de abordar la tarea a realizar
Los leguajes imperativos, son los lenguajes de programación que señalan la forma en la que hay que ejecutar la tarea, dicho de otra forma, establecen los pasos que se han de seguir para realizar la tarea.
Los lenguajes declarativos, muestran exactamente lo que se debe realizar.
Según su paradigma de programación
Los lenguajes de programación procedural son aquellos que dividen al problema en partes más pequeñas, las cuales serán usadas por diferentes subprogramas, quienes se llaman las unas a las otras para ejecutarse.
Los lenguajes de programación orientada a objetos elaboran un sistema de clases y objetos que se guían por el ejemplo dado en la vida real. Algunos desarrollan las acciones y otros se comunican con otros objetos.
Los lenguajes de programación funcional: La tarea se realiza evaluando funciones, (como en Matemáticas), de manera recursiva. Ejemplo: Lisp.
Los lenguajes de programación lógica, las tareas y asignaciones a ejecutar son expresadas mediante la lógica-matemática, señala que es lo que se va a computar.
Según el lugar de ejecución
Los lenguajes de servidor son los lenguajes de programación ejecutados en el servidor.
Los lenguajes de cliente son los lenguajes de programación ejecutados en el cliente.
Según la concurrencia
Dependen si admiten o no la concurrencia de procesos, es decir, que se realice el desarrollo simultáneo de diferentes procesos ejecutados por el programa. Los lenguajes concurrentes y los lenguajes no concurrentes.
Según la Interactividad
Los lenguajes orientados a sucesos, la circulación del programa es vigilado mediante la interacción del usuario o por los mensajes transmitidos por otros programas/el sistema operativo, como por ejemplo los editores de texto, las interfaces graficas de usuario o los kernels.
Los lenguajes no orientados a sucesos, la circulación del programa no depende de ningún tipo de sucesos exteriores, sino que es conocida desde el principio, teniendo como ejemplo claro y sencillo los procesos batch, es decir, las actualizaciones de las bases de datos, las colas de impresión de documentos, entre otros.
Según la realización visual
Los lenguajes de programación visual, la ejecución del programa se realiza mediante la movilización de los bloques de construcción de programas a través de una interfaz adecuada para esta acción. Se debe evitar confundirlos con los entornos de programación visual como puede ser Microsoft Visual Studio o con algunos de los lenguajes de programación textuales
Los lenguajes de programación textual, se debe escribir el código del programa para poder ejecutarlo.
Según su determinismo
Esta clasificación de los lenguajes de programación depende de la capacidad de predecir o no el siguiente estado del programa a partir del estado que se tiene en ese momento.
- Los lenguajes deterministas, son todos los programas anteriores que se han detallado.
- Los lenguajes probabilísticos o no deterministas, estos lenguajes de programación se utilizan para explorar los diferentes espacios de búsqueda y dentro de la investigación teórica de hipercomputacion.
Según la productividad
Los lenguajes útiles o productivos son los lenguajes de programación que poseen una gran cantidad de aspectos virtuosos en cuanto a eficiencia, sencillez, claridad, productividad, entre otros, se convierten en programas indispensables para las empresas, la administración publica o los centros educativos.
Los lenguajes esotéricos o exóticos son esos lenguajes de programación inventados por el solo placer de la diversión y entretenimiento, ellos suelen ser los más raros, los más oscuros, los más difíciles, los más simples o retorcidos que existen.
En este artículo encontrarás los siguientes temas:
- Clasificación de los lenguajes de programación
- Según el Nivel de abstracción
- Según el propósito
- Según su evolución histórica
- Según su manera de ejecutarse
- Según su manera de abordar la tarea a realizar
- Según su paradigma de programación
- Según el lugar de ejecución
- Según la concurrencia
- Según la Interactividad
- Según la realización visual
- Según su determinismo
- Según la productividad