Vous êtes sur la page 1sur 22

Lenguajes de Programacin

Tipos de lenguajes y caractersticas.

MadPitbull_99

Introduccin Lenguaje de Programacin. Es un lenguaje inventado con el fin de controlar una mquina, normalmente un ordenador.

Fuente: Tiobe.com

Clasificacin Los lenguajes de programacin se puede clasificar segn varios criterios:


1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. El nivel de abstraccin. El propsito. La evolucin histrica. La manera de ejecutarse. La mayora de los lenguajes La manera de abordar la tarea a realizar.no pueden ser clasificados puramente en una categora, La paradigma de programacin. ya que, surgen incorporando El lugar de ejecucin. ideas y filosofas de otros lenguajes. Concurrencia. Interactividad. Realizacin visual. Determinismo. Productividad.

El nivel de abstraccin Se mide el grado de cercana con la mquina (el hardware). Lenguajes de bajo nivel. Se tiene muy en cuenta las
caractersticas del procesador y del Ensamblador. hardware. Ejemplo:

Lenguajes de nivel medio. Permiten mayor grado de


abstraccin pero al mismo tiempo lenguajes de bajo nivel. Ejemplo: C. mantienen cualidades de los

Lenguajes de alto nivel. Manejan conceptos y tipos de datos de


Java, Ruby.

una manera ms cercana al pensamiento humano. Ejemplos: en slo considera lenguajes de bajo nivel y de alto nivel, (en ese caso, C es considerado de alto

Propsito Segn el tipo de problemas a tratar.


Propsito general. Aptos para todo tipo de tareas. Ejemplo: C. Propsito especfico. Hechos para un objetivo muy concreto.
Ejemplo: Csound (usado (para automatizar tareas). para crear ficheros de sonido) y Autoit

Lenguajes de programacin de sistemas. Diseados para


hacer sistemas operativos o drivers. Ejemplo: C.

Lenguajes de scripting. Para realizar tareas de control y


administracin de sistemas. Tambin llamados de procesamiento por lotes. Ejemplos: Batch, PowerShell, Bash.

Evolucin histrica Se va incrementando el nivel de abstraccin, pero en la prctica los de una generacin no terminan de sustituir a los de la anterior.
Lenguajes de primera generacin (1GL). Cdigo mquina. Lenguajes de segunda generacin (2GL). Lenguajes
ensamblador.

Lenguajes de tercera generacin (3GL). Mayor parte de los


lenguajes modernos, diseados para facilitar la programacin a los humanos. Lenguajes de cuarta generacin (4GL). Diseados para abordar un tipo concreto de problemas. Ejemplo: NATURAL (bases de datos), Mathematika (Wolfram). 1GL 2GL 3GL 4GL 5GL Lenguajes de quinta generacin (5GL). La intencin es que

Manera de ejecutarse

Lenguajes compilados. Un programa traductor, traduce el


cdigo fuente del programa en cdigo mquina (cdigo objeto). Otro programa, el enlazador, unir los ficheros de cdigo objeto del programa principal con las libreras para producir un ejecutable. Ejemplo: C.

Lenguajes interpretados. Un intrprete (programa), ejecuta las


instrucciones del programa de manera directa. Ejemplo: Python.

Lenguajes mixtos. Cmo Java, primero pasan por una fase de


compilacin en la que el cdigo fuente se transforma en bytecode. El bytecode es interpretado por cualquier equipo que disponga de la mquina virtual de Java (JVM).

Manera de abordar la tarea a realizar

Lenguajes imperativos. Indican cmo hay que hacer la tarea, es decir, expresan los pasos a seguir. Ejemplo: C. Lenguajes declarativos. Indican que hay que hacer. Ejemplo: Lisp y Prolog.

Paradigma de programacin Segn el estilo de programacin empleado. Algunos lenguajes soportan slo uno o varios. Han ido apareciendo para facilitar la tarea de programar segn el tipo de problema a abordar, o para facilitar el mantenimiento del software. Lenguajes de programacin procedural. Divide el problema
en partes ms pequeas, que sern realizadas por subprogramas (subrutinas, funciones, procedimientos), que se llaman unas a otras para ser ejecutadas. Ejemplo: Pascal.

Lenguajes de programacin funcional. La tarea se realiza


evaluando funciones (cmo Ejemplo: Haskel y Lisp. en matemticas), de manera recursiva.

Lugar de ejecucin Dependiendo de donde se ejecute.


Lenguajes de servidor. Se ejecutan en el servidor y slo se
muestra el resultado al usuario. Ejemplo: PHP.

Lenguajes de cliente. Se ejecuta en el cliente. Ejemplo:


JavaScript.

Concurrencia Segn admitan o no concurrencia de procesos, esto es, la ejecucin simultnea de varios procesos lanzados por el programa.
Lenguajes concurrentes. Ejemplo: ADA.

Lenguajes no concurrentes. Ejemplo: C.

Interactividad Segn la interactividad del programa con el usuario u otros programas. Lenguajes orientados a sucesos. El flujo del programa es
controlado por el usuario mediante interfaces grficas (GUI) u otros programas cmo el sistema operativo/kernel.

Lenguajes no orientados a sucesos. El flujo del programa no


depende de sucesos exteriores, sino que se conoce de antemano. Ejemplos: Lenguaje de procesamiento por lotes (Batch) o cualquier lenguaje imperativo.

Realizacin visual

Lenguajes de programacin visual. El programa se realiza


moviendo bloques de construccin de programas (objetos visuales) o controles usando una interfaz (IDE). Ejemplo: AppInventor (Android).

Lenguajes de programacin textual. El cdigo del programa


se realiza escribindolo. Ejemplo: Java.

Determinismo Segn se pueda predecir o no el siguiente estado del programa a partir del estado actual. Lenguajes deterministas. Ejemplo: Todos los anteriores.
Lenguajes probabilsticos. Ejemplo: cmutt (generador de texto
aleatorio).

Productividad Se caracterizan por tener virtudes tiles o productivas, u oscuras y enrevesadas. Lenguajes tiles o productivos. Sencillos, eficientes, claros y
productivos. Ejemplo: Cualquier lenguaje de uso habitual.

Lenguajes esotricos o exticos. Sobrepasan cualquier lmite


del frikismo. Usados para diversin y entretenimiento de los programadores. Ejemplo: BrainFuck, Ook!, Malbolge.

Hola mundo en lenguaje BrainFuck.

Caractersticas de los lenguajes ms difundidos

JAVA

C#

PHP

Python

JAVA Caractersticas: Orientado a objetos. Interpretado y compilado a la vez. Muy robusto y seguro. Multihebra (mltiples hilos de ejecucin). Portable (indiferente a la arquitectura). Produce applets. Extendido en el mundo empresarial. Lento respecto a lenguajes compilados.

C# (C Sharp) Caractersticas:
Sintaxis parecida a otros lenguajes, cmo C++ o Java. Lenguaje moderno y actualizado. Funciona sobre la plataforma (framework) .NET de Microsoft. Multiplataforma (Proyecto Mono). Admite uso de punteros. Junto con Java dominan el mundo empresarial. Gestin automtica de memoria. Orientado a objetos.

C Caractersticas:
Lenguaje de propsito general. Muy potente y rpido. Usado en programacin de drivers y sistemas operativos. No est ligado a ningn sistema operativo. Tipos de datos tratables directamente por el hardware. Permite gestin de memoria por parte del programador y uso de punteros. Gracias a C, surge C++ (lenguaje C + OOP).

Python Caractersticas:
Lenguaje de propsito general. Interpretado (Scripting). Multiplataforma. Orientado a objetos. Sintaxis clara (usa espacios y tabulaciones para definir bloques). Gran coleccin de libreras y buena documentacin. Usado en investigacin cientfica.

PHP Caractersticas:
Lenguaje de scripting del lado del servidor. Usado junto con HTML. Soporta todo tipo de bases de datos. Sintaxis similar a C++. El interprete es de cdigo abierto. Uso de cookies y sesiones. Gracias a su coste nulo y a la poca curva de aprendizaje que se necesita, es uno de los lenguajes ms extendidos en la Web. Dispone de una documentacin muy extensa y apoyo por parte de la comunidad.

Bibliografa

Introduccin a la programacin. Joyanes Luis Aguilar. Wikipedia.

QBitacora.
Just Google

Vous aimerez peut-être aussi