List

Paradigmas de los lenguajes de programaciónUn paradigma de programación representa un enfoque particular o filosofía para diseñar soluciones.

Paradigmas de los lenguajes de programación

Los paradigmas difieren unos de otros en los conceptos y la forma de abstraer los elementos involucrados en un problema, así como en los pasos que integran su solución del problema, en otras palabras, el cómputo.

También podemos encontrar lenguajes con la influencia de dos paradigmas, como el lenguaje C++, que surgió bajo el paradigma procedimental y se transformó al paradigma orientado a objetos, de tal manera que puede soportar ambos paradigmas.

Los paradigmas más importantes son:

Paradigma imperativo o procedural.

Es el método de programación tradicional, donde los programas describen la forma de solucionar un problema a partir de una lista de instrucciones que se ejecuta de forma secuencial, a menos que se trate de estructuras de control condicionales o repetitivas, o bien, saltos de secuencia representados por la instrucción GOTO.
La programación imperativa se define a partir del cambio de estado de las variables que se produce por la ejecución de las instrucciones, por ejemplo, el programa 1.1, que calcula el área de un rectángulo, es un ejemplo de un programa imperativo, ya que describe paso a paso como solucionar el problema y el resultado corresponde al estado final de la variable area.
El lenguaje de máquina es un ejemplo de este paradigma. Otros lenguajes imperativos son:
  • Fortran,
  • Cobol,
  • Pascal,
  • Basic,
  • Ada y
  • C.

Paradigma declarativo.

En contraste con el paradigma imperativo, el objetivo de este paradigma no es describir como solucionar un problema, sino describir un problema mediante predicados lógicos o funciones matemáticas.
Dentro de este paradigma se encuentran los lenguajes de programación funcionales y los lenguajes de programación  lógicos.
Los primeros representan el problema utilizando funciones matemáticas, por ejemplo, un programa que calcule el área de un rectángulo utilizando un lenguaje funcional se vería así:
areaRectangulo(b,h) = b* h
De tal manera que para calcular el área de un rectángulo de base igual a 5 unidades y altura igual a 10 unidades, se ejecuta la función con los parámetro 5,10, es decir, areaRectángulo(5,10), la cual devuelve como resultado 50.
Los lenguajes de programación más representativos del paradigma funcional son:
  • Lisp,
  • ML y
  • Haskell.

En el caso de los lenguajes lógicos la solución se representa a través de un conjunto de reglas, por ejemplo:

areaRectangulo(b,h,area) : – multiplicacion (b,h,area)
Esta regla dice que el valor de la variable area corresponde al área del rectángulo con base b y altura h sólo si area es el resultado de multiplicar b por h. Estamos suponiendo que se ha definido el predicado multiplicación(a, b, c).
En este caso para calcular el resultado se utiliza el principio de razonamiento lógico para responder a las preguntas planteadas, por ejemplo si se desea calcular el área del mismo rectángulo, la pregunta sería la siguiente:
?areaRectangulo(5,10,X)
Y después de que se realicen los cálculos (en este caso llamados inferencias) el resultado que arrojaría sería:

 

X = 50

  • El lenguaje más representativo del paradigma lógico es Prolog.

Paradigma orientado a objetos.

En este caso la solución de un problema se plantea en términos de objetos y relaciones entre ellos.

Está basado en varias técnicas, incluyendo herencia, polimorfismo, modularidad y encapsulamiento.

En este caso se definen clases que son las plantillas para crear objetos, por ejemplo, si se quiere un programa orientado a objetos que calcule el área de un rectángulo, se debe definir una clase rectángulo que contenga un método encargado de calcular el área.
Son ejemplos de este paradigma y actualmente los más utilizados:
  •  Java y
  • C# .

Deja una respuesta