Sunteți pe pagina 1din 5

C2: Paradigmele programrii obiect

1) Care sunt paradigmele (conceptele de baz) ale programrii orientate pe obiecte? -obiectul, abstractizarea (clasa), ncapsularea, motenirea, polimorfismul i persistena 2) Ce este obiectul i ce modeleaz el? -este o entitate (concret) cu identitate proprie, caracterizat prin stare i comportament - modeleaz o entitate din lumea real sau imaginar, definit de un set propriu i unic de proprieti -anticipnd: este o instan a unei clase 3) Care sunt caracteristiciele unui obiect? - identitatea este dat de un cod unic care asigur diferenierea unui obiect fa de altul i implementat software sub forma unui identificator (ID) de tip read-only (o adres logic invariant de memorie - pointer), de regul transparent utilizatorului - starea este reprezentat de structura obiectului i valorile curente ale elementelor acestei structuri (de exemplu, valorile proprietilor, atributelor unui obiect) -comportamentul este definit de modul n care obiectul reacioneaz la evenimente cauzate de surse externe i de modul n care interacioneaz cu alte obiecte prin intermediul mesajelor (ceea ce tie s fac); este descris printr-un set de metode (operaii) Starea unui obiect este o caracteristic static a sa, iar comportamentul o caracteristic dinamic. 4) Ce reprezint o metod i cum se implementeaz? -modalitatea prin care obiectul trateaz un mesaj

-implementarea este echivalent cu o funcie sau o procedur din programarea clasic 5) Care este modelul de reprezentare al unui obiect n memeorie?

6) Ce este abstractizarea? -procesul prin care se identific i se rein numai caracteristicile eseniale ale realitii modelate -n programarea orientat pe obiecte reprezint o tehnic fundamental prin care se obin tipuri abstracte de date 7) Ce sunt clasele i ce reprezint ele? - sunt reprezentri (modele) abstracte, conceptuale ale entitilor -reprezint: un tip de date obinut prin abstractizarea unor obiecte similare; un element abstract, care descrie mulimea obiectelor cu structur i comportament identice 8) Cum este descris o clas din punct de vedere structural? -printr-o denumire -un set de atribute: vor servi drept depozite pentru datele concrete deinute de obiectele clasei -un set de metode (operaii): vor fi partajate de toate instanele clasei (adic de obiectele clasei) -atributele i metodele se mai numesc i membrii clasei

Denumire: Atribute: Metode:

9) Ce pot viza membrii unei clase? -clasa n ansamblul ei (se aplic ntregului grup de obiecte) atribute i metode de clas sau statice -fiecare obiect al clasei-atribute i metode de instan 10) Care este setul minimal de metode pe care trebuie s-l ofere fiecare clas n conformitate cu teoria programrii orientate pe obiecte? -constructor: asigur crearea i iniializarea obiectelor -destructor: asigur tergerea sau eliminarea obiectelor -modificatori: metode de modificare (actualizare) a valorii unor proprieti -selectori: metode de citire (redare) a valorii unor proprieti 11) Cnte tipuri de clase pot exista? -clase instaniabile sau concrete: clasele care au instanieri directe (contract, factur, etc.; triunghi, cerc, etc.; femeie, brbat) -clase abstracte:clasele care nu pot fi instaniate direct, nu au corespondene concrete din realitate (document; form geometric; om) 12) Ce reprezint ncapsularea i ce presupune (impune)? -capacitatea obiectelor (claselor) de a conine la un loc att date, ct i operaii/metode, dintre care numai o parte sunt vizibile din exterior -impune: ca toate atributele de instan ale unei clase s fie invizibile din exteriorul acesteia; accesarea lor s fie posibil doar prin intermediul unor metode puse la dispoziie de clas (interfa)

13) Care sunt avantajele ncapsulrii? -datele nu mai sunt separate de prelucrri -obiectele apar ca nite cutii negre care ascund detaliile de implementare -se asigur securitatea datelor stocate de un obiect mpotriva modificrilor neautorizate sau accidentale -obiectele sunt uor de utilizat prin intermediul interfeei care descrie ce poate realiza o clas (NU cum) 14) Cum pot fi declarai membrii unei clase pentru a asigura protecia i flexibilitatea lor n utilizare? -public: accesibili din afara clasei -private: nu sunt accesibili din exteriorul clasei -protected: accesibili numai claselor derivate 15) Ce este motenirea? -procesul prin care atributele i operaiile unei clase (clas de baz, superclas) sunt preluate automat de o alt clas (clas derivat sau subclas) -orice clas derivat va fi de tipul (is a) clasei de baz -o tehnic prin care se ncurajeaz reutilizarea i partajarea datelor (permite crearea de noi clase pe baza unora deja existente) -prin motenire se pot exprima relaii deosebite ntre clase: clasificri, ierahizri, generalizri, specializri 16) Ce reprezint polimorfismul? -capacitatea obiectelor de a se comporta diferit la primirea aceluiai mesaj (adic obiecte diferite conin aceleai operaii, care ns vor executa aciuni diferite exemple: apeleaz un numr, schimb viteza) 17) Cum poate fi asigurat polimorfismul?

-suprancrcarea unei operaii (n cadrul aceleiai clase): utilizarea unei metode cu acelai nume, dar cu un numr diferit de parametrii -rescrierea unei operaii (ntr-o clas derivat): metoda resriscris are acelai nume, acelai numr de parametrii dar execut alt prelucrare 18) Ce descrie persistena? -durata de via a unui obiect n raport cu aplicaia care l-a creat -un obiect se consider persistent, dac starea i comportamentul su sunt conservate ntre dou execuii ale programului ce la generat 19) Cum putem reprezenta la nivel intuitiv o ierahie de clase i instane ale acestora

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