2.1 Paradigmas de programación 0. Teoría de sistemas 1
Last updated Oct 21, 2025
by
sr_labs Admin
Un paradigma de programación consiste en un método para llevar a cabo cómputos y la forma en la que deben estructurarse y organizarse las tareas que debe realizar un programa.[3](https://es.wikipedia.org/wiki/Lenguaje_de_programaci%C3%B3n#cite_note-3)? Se trata de una propuesta tecnológica adoptada por una comunidad de [programadores](https://es.wikipedia.org/wiki/Programador "Programador"), y [desarrolladores](https://es.wikipedia.org/wiki/Desarrollador_de_software "Desarrollador de software") cuyo núcleo central es incuestionable en cuanto que únicamente trata de resolver uno o varios problemas claramente delimitados; la resolución de estos problemas debe suponer consecuentemente un avance significativo en al menos un parámetro que afecte a la [ingeniería de software](https://es.wikipedia.org/wiki/Ingenier%C3%ADa_de_software "Ingeniería de software"). Representa un enfoque particular o filosofía para diseñar soluciones. Los [paradigmas](https://es.wikipedia.org/wiki/Paradigma "Paradigma") 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. Tiene una estrecha relación con la formalización de determinados lenguajes en su momento de definición. Es un estilo de programación empleado.
Un paradigma de programación está delimitado en el tiempo en cuanto a aceptación y uso, porque nuevos paradigmas aportan nuevas o mejores soluciones que lo sustituyen parcial o totalmente.
El paradigma de programación que actualmente es más utilizado es la "[orientación a objetos](https://es.wikipedia.org/wiki/Orientaci%C3%B3n_a_objetos "Orientación a objetos")" (OO). El núcleo central de este paradigma es la unión de datos y procesamiento en una entidad llamada "objeto", relacionable a su vez con otras entidades "objeto".
Tradicionalmente, datos y procesamiento se han separado en áreas diferente del diseño y la implementación de software. Esto provocó que grandes desarrollos tuvieran problemas de fiabilidad, mantenimiento, adaptación a los cambios y escalabilidad. Con la OO y características como el encapsulado, polimorfismo o la herencia, se permitió un avance significativo en el [desarrollo de software](https://es.wikipedia.org/wiki/Desarrollo_de_software "Desarrollo de software") a cualquier escala de producción. La OO parece estar ligada en sus orígenes con lenguajes como [Lisp](https://es.wikipedia.org/wiki/Lisp "Lisp") y [Simula](https://es.wikipedia.org/wiki/Simula "Simula"), aunque el primero que acuñó el título de "programación orientada a objetos" fue [Smalltalk](https://es.wikipedia.org/wiki/Smalltalk "Smalltalk").
## Clasificación por paradigmas
En general, la mayoría de paradigmas son variantes de los dos tipos principales de programación, imperativa y declarativa. En la programación imperativa se describe paso a paso un conjunto de instrucciones que deben ejecutarse para variar el estado del programa y hallar la solución, es decir, un [algoritmo](https://es.wikipedia.org/wiki/Algoritmo "Algoritmo") en el que se describen los pasos necesarios para solucionar el problema.
En la programación declarativa las sentencias que se utilizan lo que hacen es describir el problema que se quiere solucionar; se programa diciendo lo que se quiere resolver a nivel de usuario, pero no las instrucciones necesarias para solucionarlo. Esto último se realizará mediante mecanismos internos de [inferencia](https://es.wikipedia.org/wiki/Inferencia "Inferencia") de información a partir de la descripción realizada.
A continuación se describen algunas de las distintas variantes de paradigmas de programación:
## Variantes:
* Programación imperativa o por procedimientos
* Programación orientada a objetos
* Programación dirigida por eventos
* Programación declarativa
* Programación funcional
* Programación lógica
* Programación con restricciones
* Programación multiparadigma
* Programación reactiva
* Lenguaje específico del dominio
Like
·