1.2 Paradigmas de la programación

En la evolución de la programación han surgido diversas técnicas de programación que se han ido adaptando a las necesidades tecnológicas e informáticas del momento. Aunque la forma de enfocar la elaboración de los programas es diferente en cada una de ellas, el objetivo es el mismo: facilitar la creación y el mantenimiento de programas informáticos. Estas técnicas se han traducido en diferentes filosofías de creación de programas que son los denominados paradigmas de programación.
Icono IDevice Actividad

Un paradigma de programación representa un conjunto de métodos sistemáticos aplicables en todos los niveles del diseño de programas. Es decir, un paradigma es una filosofía para la creación de programas.


Aunque hay muchos paradigmas de programación, en la siguiente tabla encontrarás los más comunes:

Paradigma imperativo
  • Los programas imperativos contienen instrucciones que dicen al ordenador cómo realizar una tarea. Los primeros lenguajes imperativos fueron los códigos máquina de los ordenadores, que utilizaban instrucciones sencillas y permitían implementar el hardware fácilmente, pero no servían para desarrollar programas complejos.
  • El primer lenguaje imperativo que posibilitó la creación de programas con un nivel de complejidad elevado fue FORTRAN. Hoy en día está representado por los lenguajes de programación BASIC, C ó PASCAL, entre otros.
Paradigma funcional
  • Los programas funcionales se basan en el uso de una o más funciones dentro de las cuales se pueden utilizar funciones creadas anteriormente. Su objetivo es dividir el programa en módulos de forma que cada uno de éstos realice una única función. 
  • El primer lenguaje de programación funcional fue LISP. Existen dos tipos de lenguajes funcionales: los puros (como HASKELL) y los híbridos (SAP, ML, Scheme).
Paradigma lógico
  • La programación lógica comprende la programación declarativa y la funcional. El proceso de elaboración de programas está basado en la lógica de primer orden y, a diferencia de los demás paradigmas, especifica qué debe hacer el programa y no cómo hacerlo.
  • Se emplea en aplicaciones de inteligencia artificial. El lenguaje de programación lógica por excelencia es PROLOG.
Paradigma orientado a objetos (POO)
  • La programación orientada a objetos expresa un programa como un conjunto de objetos, que colaboran entre ellos para realizar tareas. Esto permite hacer los programas y módulos más fáciles de escribir, mantener, reutilizar y volver a utilizar. Su uso se popularizó a principios de los 90 y actualmente son muchos los lenguajes de programación asociados a este paradigma.
  • Las características del paradigma orientado a objetos son: encapsulamiento, abstracción, polimorfismo y herencia.
  • Muchos lenguajes utilizados en la actualidad están orientados a objetos, como Java, C++, Python o Delphi. Un lenguaje completamente orientado a objetos es Smalltalk.
Icono de iDevice AV - Actividad de Espacios en Blanco
Ahora que ya conoces los paradigmas de programación, ¿serías capaz de indicar cuál es su principal característica?
- Basado en la lógica de primer orden, especifica qué debe hacer el programa y no cómo hacerlo.
- Contienen instrucciones que dicen al ordenador cómo realizar una tarea.   
- Su objetivo es dividir el programa en módulos de forma que cada uno realice una función.
- Expresa un programa como un conjunto de objetos que colaboran para realizar tareas.
  

Icono de iDevice Ejemplo o ejercicio resuelto

Este último paradigma de programación es uno de los más utilizados en la actualidad. Para comprenderlo bien, es necesario definir el concepto de objeto.

Un objeto contiene toda la información que permite definirlo e identificarlo frente a otros objetos. Está formado por:

- Estados.- son las propiedades del objeto representadas por variables.

- Métodos.- son los comportamientos que el objeto es capaz de hacer.

En este ejercicio te proponemos que intentes definir un objeto: "una película". Haz una lista con los estados y los métodos que contendría dicho objeto.

Icono IDevice Objetivos

En este apartado sólo hemos expuesto las características generales de los paradigmas de programación. En el siguiente documento, podrás encontrar ejemplos de cada modelo y ampliar los conocimientos sobre ellos.

 

Paradigmas de Programación


Icono IDevice Pre-conocimiento
Como en casi todos los campos, también existen mapas visuales de los paradigmas de programación. Te mostramos a continuación uno de ellos publicado en un blog sobre programación: Lambda the ultimate. En él se muestran los distintos paradigmas, las relaciones que hay entre ellos y los lenguajes de más representativos de cada uno de ellos.

La primera frase define perfectamente la intención de los paradigmas de programación. Aunque está en inglés, te la traducimos: "Más no es mejor (o peor) que menos, sólo es diferente".

 

Ya sabemos que en esta imagen no se puede leer nada, por eso te dejamos el enlace donde la podrás ver con precisión. Fíjate en los lenguajes de programación que aparecen porque serán los que estudies en el siguiente punto del tema.

 

Mapa visual de los paradigmas de programación (pdf)

 

mapa visual de los paradigmas

Img 2. Mapa de los paradigmas de programación

Imagen obtenida en la cofa con licencia Creative Commons