Ce este OOP?
Conceptul poate fi întâlnit sub diverse denumiri, cum ar fi:
programare orientată pe obiecte (POO),
programare obiectuală,
programare orientată spre obiect ori
OOP – Object Oriented Programming.
În Python
aproape orice este reprezentat ca un obiect, iar noțiunea este
esențială.
Suntem înconjurați de
obiecte în jurul nostru care au anumite
proprietăți ori caracteristici de bază și
funcții
care
ne fac viața mai ușoară.
Să considerăm de exemplu mașina de spălat rufe pe care o avem în casă:
Bineînțeles că fiecare produs are mult mai multe caracteristici ori funcții diferite sau nu, însă orice mașină de spălat le deține și pe acestea.
Deci, putem defini
o clasă de obiecte numită
mașină_de_spălat.
Am căutat pe Internet...
Bosch WAN28108GB,
Indesit IWC8125,
Beko WTG841 sunt mașini de spălat rufe cu anumite caracteristici.
Toate însă fac parte din aceeași clasă numită de noi ca exemplu -
mașină_de_spălat.
Așa și în cazul programării orientată pe obiecte putem defini conceptele de
clasă și
obiect.
Prin
încapsulare înțelegem mecanismul prin care
datele membre
(variabilele) și
funcțiile (numite în acest caz
metode) sunt plasate împreună,
într-o unică structură, numită
clasă.
Așadar, putem defini clasa
Atunci când
un constructor creează o nouă mașină de spălat, este realizat un nou obiect
al clasei
mașină_de_spălat, care este
o instanțiere a acesteia.
Clasa este doar o
structură abstractă, precum vedeți!
Exercițiu
Luați o foaie de hârtie și definiți și voi clase de obiecte,
cum ar fi
autoturism,
televizor ori
telefon. Notați
proprietățile și
funcțiile esențiale.
Revenim la Python
Rețineți termenii de
încapsulare,
clasă,
obiect,
dată membru,
metodă,
constructor
și
instanțiere!
Nu e greu! E un concept de excepție. Nu va fi prezentată toată teoria OOP, însă avem nevoie de aceste noțiuni pentru a înțelege cele ce urmează.
Tipurile de date prezentate până acum,
int,
float și
str, sunt
clase de obiecte:
Mecanismul. Se creează un nou
obiect reținut de variabila
x,
prin
constructorul (funcția)
int() care
instanțiază clasa numerelor întregi cu semn,
adică
int, cu valoarea
datei membru fiind
7.
Observație. După cum vedeți, numele constructorului este același cu cel al clasei respective.
Dacă am fi scris
x = int(), data membru ar fi reținut
0 (valoarea
implicită).
Avansează la pagina următoare.
Cărțile editurii noastre
O parte dintre manualele și culegerile de probleme se găsește și [
în format electronic]
securizat sub formă
de fișier *.pdf.
"
O cameră fără cărţi este ca un corp fără suflet."
(G. K. Chesterton)
Cursanții au mai cumpărat ...
[
vezi lista completă a cărților]