SlideShare una empresa de Scribd logo
1 de 9
Clasificación de lenguajes
        de programación
Un lenguaje de programación es un lenguaje inventado para controlar
  una máquina, (normalmente, un ordenador). Hay muchísimos, de
    toda clase de tipos y características, inventados para facilitar el
 abordaje de distintos problemas, el mantenimiento del software, su
               reutilización, mejorar la productividad, etc.
 Hay que tener en cuenta también, que en la práctica, la mayoría de
        lenguajes no pueden ser puramente clasificados en una
  categoría, pues surgen incorporando ideas de otros lenguajes y de
  otras filosofías de programación, pero no importa al establecer las
 clasificaciones, pues el auténtico objetivo de las mismas es mostrar
       los rangos, las posibilidades y tipos de lenguajes que hay.
   Los lenguajes de programación se pueden clasificar según varios
                 criterios. He encontrado doce en total:
Nivel de abstracción.
• Lenguajes de bajo nivel: La       • Lenguajes de nivel medio:
  programación se realiza             Permiten un mayor grado de
  teniendo muy en cuenta las          abstracción pero al mismo
  características del procesador.     tiempo mantienen algunas
  Ejemplo:                            cualidades de los lenguajes de
  Lenguajesensamblador.               bajo nivel. Ejemplo: C puede
• Lenguajes de alto nivel: Más        realizar operaciones lógicas y
  parecidos al lenguaje humano.       de desplazamiento con
  Manejan conceptos, tipos de         bits, tratar todos los tipos de
  datos, etc., de una manera          datos como lo que son en
  cercana al pensamiento              realidad a bajo nivel
  humano ignorando                    (números), etc.
  (abstrayéndose) del
  funcionamiento de la
  máquina.
  Ejemplos: Java, Ruby.
Propósito
• Lenguajes de propósito general: Aptos para todo tipo de
  tareas: Ejemplo: C.
• Lenguajes de propósito específico: Hechos para un objetivo
  muy concreto. Ejemplo: Csound (para crear ficheros de
  audio).
• Lenguajes de programación de sistemas: Diseñados para
  realizar sistemas operativos o drivers. Ejemplo: C.
• Lenguajes de script: Para realizar tareas varias de control y
  auxiliares. Antiguamente eran los llamados lenguajes de
  procesamiento por lotes (batch) o JCL (“Job Control
  Languages”). Se subdividen en varias clases (de shell, de
  GUI, de programación web, etc.).
  Ejemplos: bash (shell), mIRC
  script, JavaScript (programación web)
Evolución histórica.
• Lenguajes de primera generación (1GL): Código máquina.
• Lenguajes de segunda generación (2GL): Lenguajes
  ensamblador.
• Lenguajes de tercera generación (3GL): La mayoría de los
  lenguajes modernos, diseñados para facilitar la
  programación a los humanos. Ejemplos: C, Java.
• Lenguajes de cuarta generación (4GL): Diseñados con un
  propósito concreto, o sea, para abordar un tipo concreto de
  problemas. Ejemplos:NATURAL, Mathematica.
• Lenguajes de quinta generación (5GL): 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.
Manera de ejecutarse
Lenguajes compilados:             Lenguajes interpretados:
• Un programa traductor           • Un programa (intérprete), ejecuta
                                    las instrucciones del programa de
  traduce el código del             manera directa.
  programa (código fuente)        • También los hay mixtos, como
  en código máquina (código         Java, que primero pasan por una
  objeto). Otro programa, el        fase de compilación en la que el
                                    código fuente se transforma en
  enlazador, unirá los ficheros     “bytecode”, y este “bytecode”
  de código objeto del              puede ser ejecutado luego
  programa principal con los        (interpretado) en ordenadores
                                    con distintas arquitecturas
  de las librerías para             (procesadores) que tengan todos
  producir el programa              instalados la misma“máquina
  ejecutable. Ejemplo: C.           virtual” Java.Ejemplo: Lisp.
Manera de abordar la tarea a realizar

Lenguajes imperativos:           Lenguajes declarativos:
• Indican cómo hay que hacer     • Indican qué hay que hacer.
  la tarea, es decir, expresan     Ejemplos: Lisp, Prolog.
  los pasos a realizar.            Otros ejemplos de lenguajes
  Ejemplo: C.                      declarativos, pero que no
                                   son lenguajes de
                                   programación, son HTML (p
                                   ara describir páginas web)
                                   oSQL (para consultar bases
                                   de datos).
Lugar de ejecución
• En sistemas distribuidos, según dónde se
  ejecute:
• Lenguajes de servidor: Se ejecutan en el
  servidor. Ejemplo: PHP es el más utilizado en
  servidores web.
• Lenguajes de cliente: Se ejecutan en el cliente.
  Ejemplo: JavaScript en navegadores web.
Realización visual
• Lenguajes de programación visual: El 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
  (como Visual C#). Ejemplo: Mindscript.
• Lenguajes de programación textual: El código del
  programa se realiza escribiéndolo. Ejemplos:
  C, Java, Lisp.
Productividad
Lenguajes útiles o productivos:     Lenguajes esotéricos o exóticos:
• Sus virtudes en cuanto a          • Inventados con la intención
  eficiencia, sencillez, claridad     de ser los más
  , productividad, etc., motiva       raros, oscuros, difíciles, sim
  que sean utilizados en              ples y/o retorcidos de los
  empresas, administraciones
  públicas y/o en la                  lenguajes, para diversión y
  enseñanza. Ejemplos:                entretenimiento de frikis
  Cualquier lenguaje de uso           programadores. A veces
  habitual                            exploran nuevas ideas en
  (C, Java, C++, Lisp, Python, R      programación.
  uby, …).

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

Lenguajes autómatas.
Lenguajes autómatas.Lenguajes autómatas.
Lenguajes autómatas.
 
Revisando la jerarquía de chomsky
Revisando la jerarquía de chomskyRevisando la jerarquía de chomsky
Revisando la jerarquía de chomsky
 
DiseñO De Compilador
DiseñO De CompiladorDiseñO De Compilador
DiseñO De Compilador
 
Consideraciones para elegir un buen DBMS
Consideraciones para elegir un buen DBMSConsideraciones para elegir un buen DBMS
Consideraciones para elegir un buen DBMS
 
PARADIGMA FUNCIONAL
PARADIGMA FUNCIONALPARADIGMA FUNCIONAL
PARADIGMA FUNCIONAL
 
Unidad1 Lenguajes y automatas
Unidad1 Lenguajes y automatasUnidad1 Lenguajes y automatas
Unidad1 Lenguajes y automatas
 
Optimizacion de Compiladores
Optimizacion de CompiladoresOptimizacion de Compiladores
Optimizacion de Compiladores
 
Paradigmas de programación
Paradigmas de programaciónParadigmas de programación
Paradigmas de programación
 
Unidad4 analisis-semantico
Unidad4 analisis-semanticoUnidad4 analisis-semantico
Unidad4 analisis-semantico
 
Tecnicas matriz de trazabilidad
Tecnicas matriz de trazabilidadTecnicas matriz de trazabilidad
Tecnicas matriz de trazabilidad
 
12.diseño basado en patrones
12.diseño basado en patrones12.diseño basado en patrones
12.diseño basado en patrones
 
Diseño de Software
Diseño de SoftwareDiseño de Software
Diseño de Software
 
Arquitecturas de software - Parte 1
Arquitecturas de software - Parte 1Arquitecturas de software - Parte 1
Arquitecturas de software - Parte 1
 
Estructura de lenguaje ensamblador
Estructura de lenguaje ensambladorEstructura de lenguaje ensamblador
Estructura de lenguaje ensamblador
 
Transacciones
TransaccionesTransacciones
Transacciones
 
Ventajas y desventajas de visual studio
Ventajas  y desventajas de visual studioVentajas  y desventajas de visual studio
Ventajas y desventajas de visual studio
 
UNIDAD 1 INTRODUCCIÓN AL LENGUAJE ENSAMBLADOR
UNIDAD 1 INTRODUCCIÓN AL LENGUAJE ENSAMBLADORUNIDAD 1 INTRODUCCIÓN AL LENGUAJE ENSAMBLADOR
UNIDAD 1 INTRODUCCIÓN AL LENGUAJE ENSAMBLADOR
 
RMI
RMIRMI
RMI
 
ESPRESIONES REGULARES
ESPRESIONES REGULARESESPRESIONES REGULARES
ESPRESIONES REGULARES
 
Analizador Sintáctico
Analizador SintácticoAnalizador Sintáctico
Analizador Sintáctico
 

Similar a Clasificación de lenguajes de (20)

Eli rodas
Eli rodasEli rodas
Eli rodas
 
Clasificasion de lenguajes
Clasificasion de lenguajesClasificasion de lenguajes
Clasificasion de lenguajes
 
Clasificasion de lenguajes
Clasificasion de lenguajesClasificasion de lenguajes
Clasificasion de lenguajes
 
Clasificasion de lenguajes
Clasificasion de lenguajesClasificasion de lenguajes
Clasificasion de lenguajes
 
Trabajo
TrabajoTrabajo
Trabajo
 
Arquitectura de Computadoras
Arquitectura de Computadoras Arquitectura de Computadoras
Arquitectura de Computadoras
 
1. que es programacion
1. que es programacion1. que es programacion
1. que es programacion
 
1. Que es programacion
1. Que es programacion1. Que es programacion
1. Que es programacion
 
Lenguajes de-programacion-clase
Lenguajes de-programacion-claseLenguajes de-programacion-clase
Lenguajes de-programacion-clase
 
Lenguajes de-programacion-clase
Lenguajes de-programacion-claseLenguajes de-programacion-clase
Lenguajes de-programacion-clase
 
Clases/Tipos de lenguajes de programación
Clases/Tipos de lenguajes de programaciónClases/Tipos de lenguajes de programación
Clases/Tipos de lenguajes de programación
 
Clasificacion de lenguajes de programacion martha
Clasificacion de lenguajes de programacion marthaClasificacion de lenguajes de programacion martha
Clasificacion de lenguajes de programacion martha
 
Historia de la programacion
Historia de la programacionHistoria de la programacion
Historia de la programacion
 
Tipos de lenguaje de programacion
Tipos de lenguaje de programacionTipos de lenguaje de programacion
Tipos de lenguaje de programacion
 
Taller n°1(1)
Taller n°1(1)Taller n°1(1)
Taller n°1(1)
 
Lenguajes de programacion.
Lenguajes de programacion.Lenguajes de programacion.
Lenguajes de programacion.
 
Lenguajes de programacion.
Lenguajes de programacion.Lenguajes de programacion.
Lenguajes de programacion.
 
Dennis
DennisDennis
Dennis
 
Clase 1. lógica de la programación
Clase 1. lógica de la programaciónClase 1. lógica de la programación
Clase 1. lógica de la programación
 
Compiladores
CompiladoresCompiladores
Compiladores
 

Más de JoRgEp10

Tener un pozo a tierra
Tener un pozo a tierraTener un pozo a tierra
Tener un pozo a tierraJoRgEp10
 
Clasificación de lenguajes de
Clasificación de lenguajes deClasificación de lenguajes de
Clasificación de lenguajes deJoRgEp10
 
Sistemas numéricos
Sistemas numéricosSistemas numéricos
Sistemas numéricosJoRgEp10
 
Guía general para diseño de bases de datos
Guía general para diseño de bases de datosGuía general para diseño de bases de datos
Guía general para diseño de bases de datosJoRgEp10
 
Base de datos
Base de datosBase de datos
Base de datosJoRgEp10
 
Los perifericos
Los perifericosLos perifericos
Los perifericosJoRgEp10
 
Gestor de ficheros
Gestor de ficherosGestor de ficheros
Gestor de ficherosJoRgEp10
 

Más de JoRgEp10 (12)

Tener un pozo a tierra
Tener un pozo a tierraTener un pozo a tierra
Tener un pozo a tierra
 
Encuesta
EncuestaEncuesta
Encuesta
 
Clasificación de lenguajes de
Clasificación de lenguajes deClasificación de lenguajes de
Clasificación de lenguajes de
 
Binario
BinarioBinario
Binario
 
Sistemas numéricos
Sistemas numéricosSistemas numéricos
Sistemas numéricos
 
Guía general para diseño de bases de datos
Guía general para diseño de bases de datosGuía general para diseño de bases de datos
Guía general para diseño de bases de datos
 
Software
SoftwareSoftware
Software
 
Software
SoftwareSoftware
Software
 
Software
SoftwareSoftware
Software
 
Base de datos
Base de datosBase de datos
Base de datos
 
Los perifericos
Los perifericosLos perifericos
Los perifericos
 
Gestor de ficheros
Gestor de ficherosGestor de ficheros
Gestor de ficheros
 

Clasificación de lenguajes de

  • 1. Clasificación de lenguajes de programación Un lenguaje de programación es un lenguaje inventado para controlar una máquina, (normalmente, un ordenador). Hay muchísimos, de toda clase de tipos y características, inventados para facilitar el abordaje de distintos problemas, el mantenimiento del software, su reutilización, mejorar la productividad, etc. Hay que tener en cuenta también, que en la práctica, la mayoría de lenguajes no pueden ser puramente clasificados en una categoría, pues surgen incorporando ideas de otros lenguajes y de otras filosofías de programación, pero no importa al establecer las clasificaciones, pues el auténtico objetivo de las mismas es mostrar los rangos, las posibilidades y tipos de lenguajes que hay. Los lenguajes de programación se pueden clasificar según varios criterios. He encontrado doce en total:
  • 2. Nivel de abstracción. • Lenguajes de bajo nivel: La • Lenguajes de nivel medio: programación se realiza Permiten un mayor grado de teniendo muy en cuenta las abstracción pero al mismo características del procesador. tiempo mantienen algunas Ejemplo: cualidades de los lenguajes de Lenguajesensamblador. bajo nivel. Ejemplo: C puede • Lenguajes de alto nivel: Más realizar operaciones lógicas y parecidos al lenguaje humano. de desplazamiento con Manejan conceptos, tipos de bits, tratar todos los tipos de datos, etc., de una manera datos como lo que son en cercana al pensamiento realidad a bajo nivel humano ignorando (números), etc. (abstrayéndose) del funcionamiento de la máquina. Ejemplos: Java, Ruby.
  • 3. Propósito • Lenguajes de propósito general: Aptos para todo tipo de tareas: Ejemplo: C. • Lenguajes de propósito específico: Hechos para un objetivo muy concreto. Ejemplo: Csound (para crear ficheros de audio). • Lenguajes de programación de sistemas: Diseñados para realizar sistemas operativos o drivers. Ejemplo: C. • Lenguajes de script: Para realizar tareas varias de control y auxiliares. Antiguamente eran los llamados lenguajes de procesamiento por lotes (batch) o JCL (“Job Control Languages”). Se subdividen en varias clases (de shell, de GUI, de programación web, etc.). Ejemplos: bash (shell), mIRC script, JavaScript (programación web)
  • 4. Evolución histórica. • Lenguajes de primera generación (1GL): Código máquina. • Lenguajes de segunda generación (2GL): Lenguajes ensamblador. • Lenguajes de tercera generación (3GL): La mayoría de los lenguajes modernos, diseñados para facilitar la programación a los humanos. Ejemplos: C, Java. • Lenguajes de cuarta generación (4GL): Diseñados con un propósito concreto, o sea, para abordar un tipo concreto de problemas. Ejemplos:NATURAL, Mathematica. • Lenguajes de quinta generación (5GL): 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.
  • 5. Manera de ejecutarse Lenguajes compilados: Lenguajes interpretados: • Un programa traductor • Un programa (intérprete), ejecuta las instrucciones del programa de traduce el código del manera directa. programa (código fuente) • También los hay mixtos, como en código máquina (código Java, que primero pasan por una objeto). Otro programa, el fase de compilación en la que el código fuente se transforma en enlazador, unirá los ficheros “bytecode”, y este “bytecode” de código objeto del puede ser ejecutado luego programa principal con los (interpretado) en ordenadores con distintas arquitecturas de las librerías para (procesadores) que tengan todos producir el programa instalados la misma“máquina ejecutable. Ejemplo: C. virtual” Java.Ejemplo: Lisp.
  • 6. Manera de abordar la tarea a realizar Lenguajes imperativos: Lenguajes declarativos: • Indican cómo hay que hacer • Indican qué hay que hacer. la tarea, es decir, expresan Ejemplos: Lisp, Prolog. los pasos a realizar. Otros ejemplos de lenguajes Ejemplo: C. declarativos, pero que no son lenguajes de programación, son HTML (p ara describir páginas web) oSQL (para consultar bases de datos).
  • 7. Lugar de ejecución • En sistemas distribuidos, según dónde se ejecute: • Lenguajes de servidor: Se ejecutan en el servidor. Ejemplo: PHP es el más utilizado en servidores web. • Lenguajes de cliente: Se ejecutan en el cliente. Ejemplo: JavaScript en navegadores web.
  • 8. Realización visual • Lenguajes de programación visual: El 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 (como Visual C#). Ejemplo: Mindscript. • Lenguajes de programación textual: El código del programa se realiza escribiéndolo. Ejemplos: C, Java, Lisp.
  • 9. Productividad Lenguajes útiles o productivos: Lenguajes esotéricos o exóticos: • Sus virtudes en cuanto a • Inventados con la intención eficiencia, sencillez, claridad de ser los más , productividad, etc., motiva raros, oscuros, difíciles, sim que sean utilizados en ples y/o retorcidos de los empresas, administraciones públicas y/o en la lenguajes, para diversión y enseñanza. Ejemplos: entretenimiento de frikis Cualquier lenguaje de uso programadores. A veces habitual exploran nuevas ideas en (C, Java, C++, Lisp, Python, R programación. uby, …).