Significado de Paradigma de programación
Sustantivo masculino compuesto. «Paradigma», del griego parádeigma, «modelo, ejemplo»; «programación», del latín programma. Calco del inglés programming paradigm.
Un paradigma de programación es un estilo general para pensar y estructurar el código, que define cómo se organizan los datos, las instrucciones y el flujo de un programa.
Un mismo lenguaje puede admitir más de un paradigma a la vez, y una misma persona programadora suele combinar varios según el problema que tenga que resolver en cada momento.
Qué es un paradigma de programación
Frente a un mismo problema, distintos paradigmas proponen formas distintas de resolverlo. Para sumar los números de una lista, un estilo imperativo describiría paso a paso cómo recorrerla y acumular el resultado en una variable; un estilo funcional, en cambio, describiría el resultado como la aplicación de una operación de suma sobre toda la lista, sin detallar el recorrido explícito. Ambos programas hacen lo mismo, pero parten de una forma distinta de plantear la solución.
Un paradigma no es un lenguaje de programación concreto, sino un conjunto de ideas y principios que pueden aplicarse en varios lenguajes distintos. Muchos lenguajes modernos son multiparadigma: permiten escribir código siguiendo más de un estilo dentro del mismo programa, según convenga en cada parte.
Lo estudian las ciencias de la computación, dentro de los fundamentos de la programación, comparando cómo cada paradigma facilita ciertos tipos de problemas y complica otros, y cómo influye en la legibilidad y el mantenimiento del código resultante.
Origen de la expresión paradigma de programación
«Paradigma» procede del griego parádeigma, «modelo, muestra, ejemplo a seguir», formado sobre paradeiknýnai, «mostrar junto a». El uso de «paradigma» para nombrar un marco general de pensamiento se extendió en filosofía de la ciencia antes de aplicarse a la programación, donde nombra un enfoque compartido para resolver problemas mediante código. La expresión completa traduce el inglés programming paradigm.
Los primeros lenguajes de programación seguían de forma casi exclusiva un estilo imperativo, cercano al funcionamiento interno del ordenador. A medida que se desarrollaron otras formas de plantear un programa —basadas en objetos, en funciones matemáticas o en reglas lógicas—, se hizo necesario un término que agrupara esos distintos enfoques generales: así se consolidó «paradigma de programación».
Tipos de paradigmas de programación
| Paradigma | En qué consiste | Ejemplo de enfoque |
|---|---|---|
| Imperativo | Describe paso a paso las instrucciones que cambian el estado del programa. | Un bucle que recorre una lista y acumula un resultado en una variable. |
| Orientado a objetos | Organiza el código en objetos que combinan datos y comportamiento. | Una clase Coche con sus propios atributos y métodos. |
| Funcional | Construye el programa combinando funciones que no modifican datos existentes. | Obtener una lista nueva aplicando una operación a cada elemento de la original. |
| Declarativo | Describe qué resultado se quiere obtener, sin detallar los pasos exactos para lograrlo. | Una consulta que pide los datos que cumplen una condición, sin indicar cómo buscarlos. |
La programación funcional y la declarativa están relacionadas: la funcional suele considerarse un caso particular del enfoque declarativo, centrado en construir el programa a partir de funciones matemáticas.
Ejemplos de uso de paradigma de programación
El equipo eligió el paradigma orientado a objetos para modelar los distintos tipos de producto de la tienda como clases relacionadas.
En la asignatura de programación funcional aprendieron a resolver problemas sin usar bucles ni variables que cambian de valor.
El lenguaje admite varios paradigmas de programación, así que parte del código sigue un estilo imperativo y otra parte, uno funcional.
El profesor comparó los cuatro paradigmas de programación principales resolviendo el mismo ejercicio con cada uno de ellos.
Sinónimos y palabras relacionadas
Sinónimos: estilo de programación (uso más informal, con un alcance algo menor).
Antónimos: no tiene antónimos propiamente dichos.
No es lo mismo que:
- Lenguaje de programación: es la herramienta concreta con la que se escribe código; el paradigma es el enfoque general que ese código puede seguir, y un mismo lenguaje puede admitir varios paradigmas.
- Patrón de diseño: resuelve un problema concreto y recurrente dentro de un paradigma, casi siempre el orientado a objetos; el paradigma es el marco general, mucho más amplio que un patrón concreto.
- Metodología de desarrollo: organiza el proceso de trabajo de un equipo, no la forma de estructurar el código; son cuestiones independientes entre sí.
Preguntas frecuentes sobre paradigma de programación
¿Cuál es el mejor paradigma de programación?
No existe uno mejor en abstracto: cada paradigma facilita ciertos tipos de problemas y complica otros. La elección depende del problema concreto, del lenguaje disponible y de las preferencias del equipo que va a mantener el código.
¿Un lenguaje de programación puede seguir varios paradigmas a la vez?
Sí, muchos lenguajes modernos son multiparadigma y permiten combinar, por ejemplo, un enfoque orientado a objetos con elementos de programación funcional dentro del mismo programa.
¿Qué diferencia hay entre programación imperativa y declarativa?
La imperativa describe paso a paso cómo llegar a un resultado, cambiando el estado del programa en cada instrucción; la declarativa describe qué resultado se quiere obtener, dejando que el sistema decida cómo lograrlo.