Sunteți pe pagina 1din 2

Programarea în Windows

Home / My courses / PWINDOWS / Capitolul 1. Concepte fundamentale. Partea 1 / Scurt istoric

Scurt istoric

Înainte de apariția limbajelor de programare obiect orientată, event-handlerele erau implementate ca subrutine în cadrul unui program procedural.
Fluxul de execuție a programului era determinat de către programator și controlat de rutina principală a aplicației. Complexitatea logicii realizate
solicita implementarea unui program foarte bine structurat. Codul programului era scris de către programator, inclusiv codul necesar pentru a se
asigura că evenimentele și excepțiile erau corect gestionate, precum și codul necesar pentru a gestiona fluxul de execuție a programului. 

Într-un program controlat de evenimente nu există un flux de control. Programul principal conține o buclă de dispecerizare a evenimentelor
(dispecer de evenimente), care atunci când apare un eveniment apelează procedura adecvată de tratare a acestuia. Deoarece codul pentru bucla de
dispecerizare a evenimentelor este furnizat de obicei de mediul sau cadrul de dezvoltare bazat pe evenimente și în mare parte este invizibil pentru
programator, percepția programatorului asupra aplicației este cea a unei colecții de rutine de tratare a evenimentelor. Programatorii obișnuiți cu
programarea procedurală uneori consideră că trecerea la un mediu pilotat de evenimente solicită un efort mental considerabil.

Schimbarea accentului de la programarea procedurală la programarea pilotată de evenimente a pornit odată cu introducerea limbajelor de
programare orientate pe obiecte (OO) și a noilor metodologii de dezvoltare de la sfârșitul anilor 1970 și a fost accelerată de introducerea interfeței
grafice de utilizator (GUI), adoptată pe scară largă pentru utilizare în sistemele de operare și aplicațiile utilizatorilor finali. Până în anii 1990,
tehnologiile obiect orientate au înlocuit în mare măsură limbajele de programare procedurală și metodele de dezvoltare structurată, populare în
anii 1970 - 1980 (fig. 1).

Fig. 1. Trendurile programării

Catalizator suplimentar al acestui proces a fost schimbarea atitudinii față de bazele de date (BD), inclusiv utilizarea acestora în scopuri comerciale.
Dezvoltatorii de sisteme informatice au început să considere baza de date componentă centrală a unui sistem informatic. Software-ul utilizat pentru
accesarea bazei de date era privit ca o simplă interfață a utilizatorului la BD, care conține un set de proceduri de tratare a evenimentelor asociate
tratării interpelărilor sau actualizării BD.

Una dintre ideile fundamentale care stau în spatele programării orientate pe obiecte este aceea de a reprezenta entitățile programabile ca obiecte.
De exemplu, un program care modelează executarea comenzilor clienților într-o companie de vânzări include obiecte precum "client", "comandă",
"item al comenzii", etc. Un obiect include atât datele (atributele) atașate obiectului, acțiunile (metodele) care pot fi utilizate pentru a accesa sau
modifica atributele acestuia, cât și evenimentele care pot determina invocarea metodelor obiectului. Structura unui obiect și relația acestuia cu
aplicația de care aparține este ilustrată în diagrama din figura 2.

Fig. 2. Relația dintre obiect și aplicație


Putem spune că o clasă, în termeni foarte generali, este un șablon care definește proprietățile (atributele), metodele și evenimentele ce vor fi
implementate în orice exemplar creat în baza acestei clase. Un obiect este o instanță (reprezentant) a clasei. Există o strânsă legătura între
programarea orientată pe obiecte și programarea pilotată de evenimente. De exemplu, obiectele de pe o formă Visual C++, denumite în mod
obișnuit controale, pot fi clasificate în clase - clasa Buton, clasa TextBox, etc. - și mai multe instanțe pot apărea pe una și aceeași formă. Fiecare clasă
va avea atribute (proprietăți), care pot fi comune tuturor obiectelor de tipul respectiv (de exemplu BackgroundColour, Width, etc.) și va defini o listă
de evenimente la care un obiect va răspunde. Metodele (event-handlerele) pentru gestiunea evenimentelor sunt furnizate ca șabloane la care
programatorul trebuie doar să adauge codul care efectuează acțiunea necesară.

Last modified: Sunday, 3 May 2020, 8:29 PM

◄ Ce este PPE Jump to... Limbaje de programare pentru PPE ►

You are logged in as Mihail Curchi (Log out)


PWINDOWS
Data retention summary
Get the mobile app

S-ar putea să vă placă și