Please enable JavaScript.
Coggle requires JavaScript to display documents.
Clasificación de lenguajes de programación (3. Evolución histórica.…
Clasificación de lenguajes de programación
1. Nivel de abstracción.
Nivel Bajo:
Se realiza a base del procesador
Nivel Medio:
Es un mayor frado pero tienen cualidades del bajo nivel
Nivel Alto:
Es mas parecido al lenguaje humano, de una manera cercana al pensamiento humano ignorando el funcionamiento de la maquina
Propósito
.
General
:
Apto para todo tipos de tarea
Programación de sistemas
:pencil2:
Diseñados para realizar sistemas operativos/drivers
Ejemplo:
C
Script
:
Para realizar tareas varias de control y auxiliares.
Para realizar tareas varias de control y auxiliares.
Especifico
:
Hechos para un motivo en concreto.
Ejemplo: CSound sirve para crear un archivo de audio.
3. Evolución histórica.
Primera Generacion:
Codigo máquina
Segunda Generación:
Lenguajes ensamblador.
Tercera Generación
La mayoria de los legujes modernos, diseñados para facilitar a los humanos
Cuarta Generación
Diseñados para un motivo en concreto, es decir para arreglar un tipo concreto de problemas
Dos ejemplos serian:
NATURAL
Y
Mathematica
Quinta Generación:
La intención es que el programador establezca el qué problema ha de ser resuelto y las condiciones a reunir, y la máquina lo resuelve. Se usan en inteligencia artificial
Un ejemplo seria el
prolog.
4. Manera de ejecutarse.
DOS TIPOS
Interpretados
.
Un programa (intérprete), ejecuta las instrucciones del programa de manera directa
Compilados
n programa traductor traduce el código del programa (código fuente) en código máquina (código objeto). Otro programa, el enlazador, unirá los ficheros de código objeto del programa principal con los de las librerías para producir el programa ejecutable.
5. Manera de abordar la tarea a realizar.
Declarativos
:
Indican cómo hay que hacer la tarea, es decir, expresan los pasos a realizar.
Imperativos
:
Indican qué hay que hacer. Ejemplos: Lisp, Prolog. Otros ejemplos de lenguajes declarativos, pero que no son lenguajes de programación, son HTML o SQL
6. Paradigma de programación.
Es el estilo de programación empleado
Los principales son:
programación orientada a objetos
Crean un sistema de clases y objetos siguiendo el ejemplo del mundo real, en el que unos objetos realizan acciones y se comunican con otros objetos.
programación procedural:
Divide el problema en partes más pequeñas, que serán realizadas por subprogramas (subrutinas, funciones, procedimientos), que se llaman unas a otras para ser ejecutadas.
programación lógica
La tarea a realizar se expresa empleando lógica formal matemática.
programación funcional:
a tarea se realiza evaluando funciones, (como en Matemáticas), de manera recursiva
7. Lugar de ejecución.
En sistemas distribuidos, según dónde se ejecute:
Servidor:
Se ejecutan en el servidor.
Cliente:
Se ejecutan en el cliente.
8. Concurrencia.
Concurrentes
ADA
no
concurrentes
C
9. Interactividad.
no orientados a sucesos
El flujo del programa no depende de sucesos exteriores, sino que se conoce de antemano, siendo los procesos batch el ejemplo más claro
orientados a sucesos
El flujo del programa es controlado por la interacción con el usuario o por mensajes de otros programas/sistema operativo, como editores de texto, interfaces gráficos de usuario (GUI) o kernels.
10. Realización visual.
programación visual:
l programa se realiza moviendo bloques de construcción de programas (objetos visuales) en un interfaz adecuado para ello. No confundir con entornos de programación visual, como Microsoft Visual Studio y sus lenguajes de programación textuales
programación textual:
El código del programa se realiza escribiéndolo.
11. Determinismo.
deterministas
Todos los anteriores.
probabilísticos o no deterministas:
Sirven para explorar grandes espacios de búsqueda, (como gramáticas), y en la investigación teórica de hipercomputación.
12. Productividad.
útiles o productivos:
Sus virtudes en cuanto a eficiencia, sencillez, claridad, productividad, etc., motiva que sean utilizados en empresas, administraciones públicas y/o en la enseñanza.
esotéricos o exóticos:
Inventados con la intención de ser los más raros, oscuros, difíciles, simples y/o retorcidos de los lenguajes, para diversión y entretenimiento de frikis programadores.