La programación orientada a componentes ( ing. programación orientada a componentes, COP ) es un paradigma de programación que se basa esencialmente en el concepto de un componente : un módulo independiente del código fuente del programa , diseñado para su reutilización e implementación e implementado en forma de una variedad de construcciones de lenguaje (por ejemplo, " clases " en lenguajes de programación orientados a objetos ), unidos por una característica común y organizados de acuerdo con ciertas reglas y restricciones.
El enfoque orientado a componentes apareció en 1987 [ 1] , cuando Niklaus Wirth propuso un patrón de bloques para el lenguaje Oberon . Este patrón se formó mientras se estudiaba el problema de las clases base "frágiles" que surge cuando se construye una jerarquía de clases voluminosa . El patrón era que un componente se compila por separado de los demás y, en tiempo de ejecución , los componentes necesarios se conectan dinámicamente .
En 1989 [1] - Bertrand Meyer propuso la idea de una única interacción entre los componentes llamables y llamantes . Esta idea se materializó en forma de soluciones listas para usar: CORBA , COM , SOAP . Posteriormente, se realizó el soporte del lenguaje en "Component Pascal" .
La situación con la introducción de un enfoque orientado a componentes, como una limitación para los paradigmas de programación existentes , es similar al advenimiento de la programación estructurada , que limitó las transiciones de control desordenadas utilizando el operador "GOTO" (lo que dificultó el análisis del algoritmo del programa). para lenguajes existentes y no introdujo nuevas construcciones).
Implementación en varios lenguajes de programaciónEl enfoque orientado a componentes se puede aplicar en muchos lenguajes de programación utilizando construcciones estándar (como: clases, interfaces, paquetes, módulos).