Programarea orientată pe componente ( eng. programare orientată pe componente, COP ) este o paradigmă de programare care se bazează în esență pe conceptul de componentă - un modul independent al codului sursă al programului , conceput pentru reutilizare și implementare și implementat sub forma unei varietăți de constructe de limbaj (de exemplu, „ clase ” în limbaje de programare orientate pe obiecte ), unite printr-o caracteristică comună și organizate în conformitate cu anumite reguli și restricții.
Abordarea orientată pe componente a apărut în 1987 [ 1] , când Niklaus Wirth a propus un model bloc pentru limba Oberon . Acest model a fost format în timpul studierii problemei claselor de bază „fragile” care apare la construirea unei ierarhii voluminoase de clasă . Modelul a fost că o componentă este compilată separat de altele, iar în timpul execuției , componentele necesare sunt conectate dinamic .
În 1989 [1] - Bertrand Meyer a propus ideea unei singure interacțiuni între componentele apelabile și apelabile . Această idee a fost concretizată sub forma unor soluții gata făcute: CORBA , COM , SOAP . Ulterior, suportul din limbaj a fost realizat în „Componenta Pascal” .
Situația cu introducerea unei abordări orientate pe componente, ca o limitare pentru paradigmele de programare existente , este similară cu apariția programării structurate , care a limitat tranzițiile de control neordonate folosind operatorul „GOTO” (ceea ce a făcut dificilă analiza algoritmului programului). pentru limbile existente și nu a introdus constructe noi).
Implementare în diverse limbaje de programareAbordarea orientată pe componente poate fi aplicată în multe limbaje de programare folosind constructe standard (cum ar fi: clase, interfețe, pachete, module).