Professional Documents
Culture Documents
es describir como solucionar un problema, sino describir un problema mediante predicados lgicos o funciones matemticas. Dentro de este paradigma se encuentran los lenguajes de programacin funcionales y los lenguajes de programacin lgicos. Los primeros representan el problema utilizando funciones matemticas, por ejemplo, un programa que calcule el rea de un rectngulo utilizando un lenguaje funcional se vera as:
De tal manera que para calcular el rea de un rectngulo de base igual a 5 unidades y altura igual a 10 unidades, se ejecuta la funcin con los parmetro 5,10, es decir, areaRectngulo(5,10), la cual devuelve como resultado 50. Los lenguajes de programacin ms representativos del paradigma funcional son: Lisp, ML y Haskell. En el caso de los lenguajes lgicos la solucin se representa a travs de un conjunto de reglas, por ejemplo:
Fundamentos de Programacin
Unidad 1. Introduccin a la computadora y al desarrollo de software
1.3.2 Paradigmas de los Lenguajes de Programacin
Esta regla dice que el valor de la variable area corresponde al rea del rectngulo con base b y altura h slo si area es el resultado de multiplicar b por h. Estamos suponiendo que se ha definido el predicado multiplicacin(a, b, c). En este caso para calcular el resultado se utiliza el principio de razonamiento lgico para responder a las preguntas planteadas, por ejemplo si se desea calcular el rea del mismo rectngulo, la pregunta sera la siguiente:
Y despus de que se realicen los clculos (en este caso llamadas inferencias) el resultado que arrojara sera:
El lenguaje ms representativo del paradigma lgico es Prolog. Paradigma orientado a objetos. En este caso la solucin de un problema se plantea en trminos de
objetos y relaciones entre ellos. Est basado en varias tcnicas, 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 rectngulo, se debe definir una clase rectngulo que contenga un mtodo encargado de calcular el rea. El lenguaje Java y C#, que actualmente son los ms utilizados, son ejemplos de este paradigma.