Programare orientată spre aspect

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare

Programarea orientată pe aspect este o paradigmă de programare bazată pe crearea de entități software - numite aspecte - care supraveghează interacțiunile dintre obiecte care vizează îndeplinirea unei sarcini comune. Avantajul față de programarea tradițională orientată pe obiecte este că nu trebuie să implementați codul necesar pentru a efectua această sarcină comună separat în fiecare clasă.

Utilitatea programării orientate pe aspect

Se știe că există diverse motive pentru care programarea orientată pe obiecte (OOP) este atât de răspândită în zilele noastre. Unele dintre cele mai importante sunt simplitatea ingineriei software printr -un design orientat obiect , creșterea capacității de întreținere a codului și posibilitățile crescute de reutilizare a acestuia. Cu toate acestea, de-a lungul anilor s-a realizat că modelul de dezvoltare orientat pe obiecte nu este perfect potrivit pentru modelarea tuturor problemelor pe care trebuie să le rezolve un sistem software.

De exemplu, unul dintre principiile fundamentale ale POO este modelarea programului ca un schimb de mesaje între obiecte, care sunt entități independente una de cealaltă. Acest principiu garantează cu siguranță modularitatea sistemului software dezvoltat cu un limbaj orientat pe obiecte, dar în același timp face dificilă implementarea unor caracteristici care, prin natura lor, sunt comune mai multor obiecte (cum ar fi logarea și securitatea ). Adică, există unele sarcini ale sistemului informațional care nu pot fi modelate ca obiecte, pur și simplu pentru că afectează aplicația în ansamblu.

Să luăm, de exemplu, o aplicație care trebuie să efectueze înregistrarea unor tranzacții care necesită interacțiunea dintre mai multe obiecte: fiecare dintre obiectele implicate trebuie, în propriile sale metode , să conțină cod capabil să rezolve problema menționată anterior; în acest fel se creează o redundanță inutilă în redactarea codului. Mai mult, obiectele modificate în acest scop devin mai complexe și, prin urmare, menținerea programului scade.

Programarea orientată pe aspect (AOP) s-a născut cu scopul de a rezolva probleme de acest tip. Cu alte cuvinte, aspectele modelează problemele transversale obiectelor în sine, adică sarcini (cum ar fi contabilitatea de exemplu) care în POO tradiționale sunt dificil de modelat.

În concluzie

Un program orientat spre aspect constă în esență din două seturi de constructe: aspecte și obiecte . Aspectele sunt entități externe obiectelor care observă fluxul programului generat de interacțiunile dintre obiecte, modificându-l atunci când este cazul. Dacă am compara obiecte cu actori, am putea spune că aspectele sunt spectatori, adică entități care observă acțiunile în desfășurare în program fără a fi implicați direct în ele, ci mai degrabă spectatori anumiți, având în vedere că, în anumite circumstanțe, urcă scena și participă la spectacol ( execuția programului, dincolo de metaforă).

Cele mai utilizate limbi pentru AOP

Elemente conexe

Controlul autorității LCCN (EN) sh2005004988 · GND (DE) 4724728-9 · BNF (FR) cb14544142k (data)