viernes, 25 de febrero de 2011

Clasificación de los lenguajes de programación, según:

a.Bajo, intermedio y alto nivel

b.Imperativos, declarativos, orientados a objetos, naturales

c.Primera, segunda, tercera, cuarta y quinta generación



a. Lenguajes de bajo nivel



Los lenguajes de bajo nivel son más fáciles de utilizar que los lenguajes máquina, pero, al igual, que
ellos, dependen de la máquina en particular. El lenguaje de bajo nivel por excelencia es el ensamblador
(assembly languuje). Las instrucciones en lenguaje ensamblador son instrucciones conocidas como
nernotécnicos (mnemonics). Por ejemplo, nemotécnicos típicos de operaciones aritméticas son: en
inglés, ADD, SUB, DIV, etc.; en español, SUM, RES, DIV, etc.



Lenguaje de nivel medio






Suelen ser clasificados de alto nivel, pero permiten ciertos manejos de bajo nivel. Son precisos para ciertas aplicaciones como la creación de sistemas operativos, ya que permiten un manejo abstracto (independiente de la máquina, a diferencia del lenguaje ensamblador), pero sin perder mucho del poder y eficiencia que tienen los lenguajes de bajo nivel.
Una característica distintiva, por ejemplo, que convierte al lenguaje de programación C en un lenguaje de medio nivel y al lenguaje de programación Pascal en un lenguaje de alto nivel, es que en el primero es posible manejar las letras como si fueran números (en Pascal no), por el contrario, en Pascal es posible concatenar las cadenas de caracteres con el operador suma y copiarlas con la asignación (en C es el usuario el responsable de llamar a las funciones correspondientes).


Lenguajes de alto nivel



Los lenguajes de alto nivel son los más utilizados por los programadores. Están diseñados para que las
personas escriban y entiendan los programas de un modo mucho más fácil que los lenguajes máquina
y ensambladores. Otra razón es que un programa escrito en lenguaje de alto nivel es independiente de
la máquina; esto es, las instrucciones del programa de la computadora no dependen del diseño del
hurdware o de una computadora en particular. En consecuencia, los programas escritos en lenguaje
de alto nivel son portables o transportables, lo que significa la posibilidad de poder ser ejecutados con
poca o ninguna modificación en diferentes tipos de computadoras; al contrario que los programas en
.


b.Lenguajes imperativos







La programación imperativa, en contraposición a la programación declarativa es un paradigma de programación que describe la programación en términos del estado del programa y sentencias que cambian dicho estado. Los programas imperativos son un conjunto de instrucciones que le indican al computador cómo realizar una tarea.
La implementación de hardware de la mayoría de computadores es imperativa; prácticamente todo el hardware de los computadores está diseñado para ejecutar código de máquina, que es nativo al computador, escrito en una forma imperativa. Esto se debe a que el hardware de los computadores implementa el paradigma de las Máquinas de Turing. Desde esta perspectiva de bajo nivel, el estilo del programa está definido por los contenidos de la memoria, y las sentencias son instrucciones en el lenguaje de máquina nativo del computador (por ejemplo el lenguaje ensamblador).
Los lenguajes imperativos de alto nivel usan variables y sentencias más complejas, pero aún siguen el mismo paradigma. Las recetas y las listas de revisión de procesos, a pesar de no ser programas de computadora, son también conceptos familiares similares en estilo a la programación imperativa; cada paso es una instrucción, y el mundo físico guarda el estado (Zoom).
Algunos lenguajes imperativos


•ASP 
•BASIC 
•Lenguaje de programación C 
•Fortran 
•Pascal 
•Perl 
•PHP 
•Lua 
•Java 



Lenguajes declarativos






En la programación declarativa las sentencias que se utilizan lo que hacen es describir el problema que se quiere solucionar, pero no las instrucciones necesarias para solucionarlo. Esto último se realizará mediante mecanismos internos de inferencia de información a partir de la descripción realizada


Tipos

Existen varios tipos de lenguajes declarativos:

•Los lenguajes lógicos, como Prolog. 
•Los lenguajes algebraicos, como Maude y SQL 
•Los lenguajes funcionales, como Haskell 


LENGUAJE ORIENTADO A OBJETOS





Se le llama así a cualquier lenguaje de programación que implemente los conceptos definidos por la programación orientada a objetos.
Cabe notar que los conceptos definidos en la programación orientada a objetos no son una condición sino que son para definir que un lenguaje es orientado a objetos. Existen conceptos que pueden estar ausentes en un lenguaje dado y sin embargo, no invalidar su definición como lenguaje orientado a objetos.
Quizás las condiciones mínimas necesarias las provee el formalismo que modeliza mejor las propiedades de un sistema orientado a objetos: los tipos de datos abstractos.
Siguiendo esa idea, cualquier lenguaje que permita la definición de tipos de datos , de operaciones nuevas sobre esos tipos de datos, y de instanciar el tipo de datos podría ser considerado orientado a objetos.
Esta definición concuerda incluso con ciertos ejemplos prácticos, que no son considerados dentro de la programación orientada a objetos, pero que podrían serlo. Por ejemplo, la programación de interfaces gráficas de usuario para los sistemas X-Window utilizando infraestructuras de funciones y APIs como Motif, Xview y Xlib, son realizadas usualmente en lenguaje C, pero organizando el código en una manera que "parecen objetos" (los Widgets).
[editar] Ejemplos de lenguajes orientados a objeto


•C++

•Objective C

•Java

•Smalltalk

•Eiffel

•Lexico (en castellano)

•Ruby

•Python

•OCAML

•Object Pascal

•CLIPS

•Visual .net

•Actionscript
•COBOL

•Perl

•C#

•Visual Basic.NET

•PHP

•Simula

•Delphi

•PowerBuilder




LENGUAJE NATURAL DE PROGRAMACION


NATURAL es un lenguaje de cuarta generación de Software AG.
Código del programa ¡Hola Mundo! en NATURAL:
WRITE '¡Hola Mundo!'
END
Tiene la sentencia de control de flujo "ESCAPE TOP", la cual es similar a "continue" en C, o "Continue For" en "Visual Basic.NET 2005", excepto que también funciona dentro de una subrutina para retornar desde la misma y continuar con la siguiente iteración del bucle de proceso.
Como "continue", evita gran número de indentaciones cuando se usan bloques anidados de instrucciones dentro de cualquier sentencia de tipo bucle.





c. Primera, segunda, tercera, cuarta y quinta generación



LENGUAJES DE PRIMERA GENERACIÓN




Lo constituyen los lenguajes maquina. 
Estos se consideran como de bajo nivel por que no existe un programa de codificación menos complicado que el que utiliza los símbolos binarios 1 y 0.
•Ascii, utiliza ceros y unos para representar letras del alfabeto. 
Como este es el lenguaje del CPU, los archivos de texto traducidos a los grupos binarios ASCII pueden leerse por casi cualquier plataforma de sistemas de computadoras.


LENGUAJES DE SEGUNDA GENERACIÓN




•A estos se les denomió lenguaje ensamblador.
•Los lenguajes ensambladores usan códigos como a para agregar o mvc para mover, y asi sucesivamente.
•Los programas de software de sistemas tales como los sistemas operativos y los programas de utilidad se escriben con frecuencia en un lenguaje ensamblador.


LENGUAJES DE TERCERA GENERACIÓN




•Estos son mas fáciles de aprender y usar que los lenguajes maquina y el lenguaje ensamblador, pues su similitud con la comunicación y comprensión humana cotidiana es mayor. 
•Enunciados, Print, Total sales, Read normal Pay etc.
•Aunque son mas fáciles de programar, no son tan eficientes en términos de rapidez operacional y memoria.
Son relativamente independientes del hardware de la computadora. Esto significa que el mismo programa puede utilizarse en varias computadoras diferentes de distintos fabricantes 

LENGUAJES DE CUARTA GENERACIÓN




•Son lenguajes que se relacionan menos con procedimientos y que son aun mas parecidos al ingles que los lenguajes de tercera generación.
•Algunas características incluyen capacidades de consulta y base de datos, de creación de códigos y capacidades gráficas.

Ejemplos Visual C++, Visual Basic, Power Builder, Delphi, Forte y muchos otros.
•Lenguajes de consulta son utilizados para hacer preguntas ala computadora con frases parecidas alas de un idioma, ejemplo el inglés.
•Lenguaje de consulta estructurado. Lenguaje estándar que a menudo se usa para realizar consultas y manipulaciones ala base de datos.


LENGUAJES DE QUINTA GENERACIÓN





•Alrededor de la mitad 1998 surgieron gripos de herramientas de lenguajes de quinta generación, los cuales combinan la creación de códigos basadas en reglas, la administración de reutilización y otros avances.
•Programación basada en conocimiento. Método para el desarrollo de programas de computación en el que se le ordena ala computadora realizar un propósito en vez de instruirla para hacerlo.



No hay comentarios:

Publicar un comentario en la entrada