ElTicus.com

Programación, lenguajes y recursos para programadores

Recurso no clasificado
Clasificaci贸n de los lenguajes de programaci贸n
Clasificados seg煤n el estilo de programaci贸n y el modo de traducci贸n
Publicado por JL Fecha: 2007-02-16 16:12:31 Idioma: Espa帽ol Tipo de documento: Articulo

Clasificaci贸n de los lenguajes de programaci贸n

Clasificaci贸n seg煤n el estilo de programaci贸n

De acuerdo con el estilo de programaci贸n, podemos clasificar los lenguajes en las siguientes categor铆as:

  • Imperativos: Son aquellos lenguajes, que basan su funcionamiento en un conjunto de instrucciones secuenciales, las cuales, al ejecutarse, van alterando las regiones de memoria donde residen todos los valores de las variables involucradas en el problema que se plantea resolver. Es decir, se cambia progresivamente el estado del sistema, hasta alcanzar la soluci贸n del problema.
    Como un ejemplo ilustrativo vamos a escribir un programa en un lenguaje de este tipo para calcular el factorial de un n煤mero positivo x.
     READ(x); 
      fac := 1 ; 
     for i = 1 to x do
     { 
     fac := fac * i ; 
     } 
     WRITELN(fac);

  • Declarativos: En este paradigma, m谩s que el 驴c贸mo? desarrollar paso a paso un proceso, nos interesa el 驴qu茅? deseamos obtener a trav茅s del programa. Quiz谩s el lenguaje declarativo que nos sea m谩s familiar, es SQL, el cual es utilizado para interactuar con la informaci贸n de bases de datos, concentr谩ndose (como se podr谩 observar en el siguiente ejemplo), s贸lo en los resultados que van a ser obtenidos, dej谩ndole al traductor la tarea de c贸mo llegar a ellos y present谩rnoslos
     SELECT * FROM alumnos WHERE sexo = "M" ORDER BY edad

  • Orientados a Objetos: Este 煤ltimo paradigma, como se puede observar en la figura 1, algunas veces se mezcla con alguno de los otros 2 modelos, sin embargo mantiene caracter铆sticas propias, que lo diferencian claramente. Los programas de este tipo, se concentran en los objetos que van a manipular, y no en la l贸gica requerida para manipularlos. Ejemplos de objetos pueden ser: estudiantes, coches, casas etc, cada uno de los cuales tendr谩 ciertas funciones (m茅todos) y ciertos valores que los identifican, teniendo adem谩s, la facultad de comunicarse entre ellos a trav茅s del paso de mensajes. Cabe mencionar con m谩s detalle los elementos fundamentales que deben de poseer este tipo de lenguajes:

    • Abstracci贸n: Determinaci贸n de las caracter铆sticas de los objetos, que sirven para identificarlos y hacerlos diferentes a los dem谩s.
    • Encapsulamiento: Es el proceso que agrupa y almacena los elementos que definen la estructura y el comportamiento de una abstracci贸n, en un mismo lugar.
    • Modularidad: Es la propiedad de agrupar las abstracciones que guardan cierta relaci贸n l贸gica, y a la vez minimizar la interdependencia entre las diversas agrupaciones.
    • Jerarqu铆a: Consiste en establecer un orden o una clasificaci贸n de las abstracciones.


Clasificaci贸n seg煤n el modo de traducci贸n

Ahora bien, si tomamos como referencia las herramientas usadas en el proceso de traducci贸n y ejecuci贸n de los programas

  • Programa Fuente : Escrito por el Programador
  • Traductor : Programa que Logra el Entendimiento
  • Programa Objeto : Es el que Entiende la M谩quina

vamos a tener la siguiente clasificaci贸n de lenguajes:

  • Lenguajes Ensamblados: Se refieren al lenguaje ensamblador, que viene a ser una representaci贸n simb贸lica de las instrucciones correspondientes al lenguaje ensamblador de alguna arquitectura espec铆fica, con lo que, casi siempre, la correspondencia entre las instrucciones de este lenguaje, y las del lenguaje m谩quina son de 1 a 1, si bien existen algunas excepciones, que dan lugar a lo que se conoce como lenguajes macro-ensambladores.
  • Lenguajes Compilados: Son aquellos, que son traducidos de un lenguaje de alto nivel (como FORTRAN o PASCAL) a lenguaje m谩quina o bien a lenguaje ensamblador, produciendo un programa objeto permanente.
  • Lenguajes Interpretados: Estos lenguajes, tienen la particularidad, de que no producen c贸digo objeto, sino que cada instrucci贸n es analizada y ejecutada a la vez, lo que ofrece mucha interacci贸n con los usuarios, pero a la vez resultan ineficientes, cuando se desea ejecutar repetitivamente un programa.
  • Lenguajes Preprocesados: Son lenguajes que son traducidos primeramente a un lenguaje intermedio de m谩s bajo nivel, para posteriormente volverlos a traducir y producir el programa objeto. Este tipo de lenguajes fueron creados, con la idea de proporcionar un lenguaje m谩s potente que el lenguaje intermedio, mediante la implementaci贸n de algunas macroinstrucciones.


Clasificaci贸n seg煤n el entorno de programaci贸n

Finalmente, existen otros conceptos tomados en cuenta para agrupar los lenguajes, que dan origen a diversas clasificaciones, entre los que destacan las siguientes:

  • Lenguajes de cuarta generaci贸n 4GL: Estos lenguajes se distinguen por formar parte de un entorno de desarrollo, que comprende el manejador de una base de datos, y todo lo que de esto se deriva, como la administraci贸n de un diccionario de datos, el control de accesos, el manejo de la consistencia de la informaci贸n y otras caracter铆sticas enfocadas a facilitar los programas de acceso y explotaci贸n de la informaci贸n. Como ejemplos podemos citar a los 4 grandes: POSTGRE, SYSBASE, INFORMIX, y ORACLE.
  • Lenguajes Visuales. Se les llama de esta manera a los lenguajes que forman parte de una aplicaci贸n dotada de una Interfase gr谩fica, la cual por medio de iconos y otras herramientas visuales y simb贸licas, pretenden facilitar las tareas rutinarias de los programadores, como son el dise帽o y desarrollo de formularios e informes. Los ejemplos m谩s comerciales de estos lenguajes son: VISUAL BASIC, VISUAL CAFE, VISUAL FOX, etc.
  • Metalenguajes: Son lenguajes como XML, SGML y HTML que sirven para definir otros lenguajes, cuyo objetivo es llevar a cabo la estructuraci贸n de textos mediante un conjunto de etiquetas, de manera tal, que puedan ser entendidos por los humanos y tambi茅n procesado por los ordenadores. Estos lenguajes est谩n teniendo un gran auge sobre la plataforma de Internet, en la cual son usados para la creaci贸n de documentos, y el intercambio o transferencia de informaci贸n.
  • Lenguajes de prop贸sito espec铆fico: Son aquellos lenguajes desarrollados con la finalidad de resolver problemas de una naturaleza muy determinada, tal como SPSS para problemas estad铆sticos, MATLAB para c谩lculos cient铆ficos y de ingenier铆a, CAD/CAM para el dise帽o de piezas y programaci贸n de m谩quinas de control num茅rico, como tornos y fresadoras, GPSS para simulaci贸n de sistemas, CORBA para el manejo de interfaces en ambientes cliente-servidor, etc.
  • Lenguajes Script: Son lenguajes como JAVASCRIPT, VBSCRIPT o PHP, que se utilizan en ambientes clientes servidor, mediante la incrustaci贸n de c贸digo en las p谩ginas HTML, y as铆 permitir la programaci贸n del lado del cliente, buscando fundamentalmente, hacer m谩s atractivos los interfaces gr谩ficos de las p谩ginas.

Esta gran cantidad de lenguajes, se帽ala de manera clara que existe un esfuerzo continuo en la creaci贸n, y mejora de los lenguajes de programaci贸n, en aras, de hacer m谩s f谩cil la tarea del programador y/o hacer un uso m谩s eficiente de los recursos computacionales.
La b煤squeda de los objetivos antes mencionados, as铆 como la guerra mercantil de las compa帽铆as dedicadas a la producci贸n de herramientas de software, han diversificado las opciones que los programadores pueden elegir. Sin embargo, hasta nuestros d铆as, podemos decir que realmente no existe ning煤n lenguaje, o grupo de ellos, que destaque en la totalidad de las aplicaciones inform谩ticas que se desarrollan actualmente, ya que cada uno, tiene cualidades que lo hacen m谩s convenientes para algunos prop贸sitos, pero al mismo tiempo, cuentan con inconvenientes para otros.


Referencia: [liga a="http://www.iesromerovargas.net/"]http://www.iesromerovargas.net




Nadie ha puesto ning鷑 comentario todav韆


Haz un comentario sobre este tema
Nombre email (no se muestra)
comentario:
Escribe las 2 letras que ves aqu: Imagen anti-spam =




No hay comentarios

Art韈ulos relacionados:
manual Curso B谩sico de HTML Recurso no clasificado Check de dise帽o Recurso no clasificado Est谩ndares en Internet Recurso no clasificado Ataques de inyecci贸n de SQL Recurso no clasificado Como ponerle un contador de visitas a tu sitio en menos de 5 minutos.
Recurso no clasificado Como imprimir la fecha en espa帽ol utilizando PHP aunque el idioma del servidor sea el ingl茅s. Recurso no clasificado Diagramas de flujo Recurso no clasificado Programa en C++ que multiplica 2 n煤meros de forma gr谩fica. Recurso no clasificado Para imprimir la fecha en espa帽ol utilizando PHP independientemente del lenguaje del servidor (Utilizando ARRAYS) Recurso no clasificado Como generar n煤meros aleatorios o pseudoaleatorios
Recurso no clasificado HERENCIA. Pilar de la programci贸n Orientada a Objetos Manual Manejo de ARRAYS en PHP Manual Manejo de ARRAYS en PHP Recurso no clasificado Breve Historia de la Programaci贸n de Computadoras Recurso no clasificado Como convertir una fecha de Lenguaje Natural a tipo DATE