Conținut curs
Python Basic
Introducere în Python Instalarea Python și configurarea mediului de lucru Sintaxa și indentarea în Python Variabile și tipuri de date Operatori și expresii Structuri de control: if, elif, else Bucle: for și while Funcții Module și pachete Listele în Python Tuplurile în Python Seturile în Python Dicționarele în Python String-urile în Python Lucrul cu date și timp în Python Comprehensions în Python Gestionarea excepțiilor în Python (introducere) Închideri (closures) în Python (introducere) Lambda funcții în Python Încapsularea în Python (introducere) Testarea codului în Python (introducere)
0/21
Biblioteci și pachete
- Introducere în bibliotecile standard ale Python - Introducere în bibliotecile externe ale Python - Lucrul cu fișiere în Python (introducere)
0/3
Programare orientată pe obiect
- Introducere în programarea orientată pe obiect (OOP) - Ereditatea în Python (introducere)
0/2
Dezvoltare web cu Python
Introducere în dezvoltarea web cu Python
0/1
Python Basic
Despre lecție

În această lecție, vom explora conceptele de bază ale programării orientate pe obiect (OOP). Vom discuta despre ce înseamnă OOP, ce sunt clasele și obiectele, precum și despre atribute și metode.

Ce este OOP?

Programarea orientată pe obiect (OOP) este un paradigma de programare care se bazează pe ideea de a organiza codul în „obiecte”, care reprezintă entități din lumea reală sau abstracte. Aceste obiecte conțin atribute (date) și metode (comportamente) care definesc starea și acțiunile lor. OOP facilitează o organizare clară și modulară a codului, promovează reutilizarea și încurajează o abordare mai naturală și intuitivă a rezolvării problemelor.

Clase și obiecte

În OOP, o clasă este o structură care definește o categorie sau un tip de obiect. O clasă descrie atributele și metodele pe care obiectele de acest tip le vor avea. Un obiect este o instanță a unei clase, un exemplu specific al acelei clase. Fiecare obiect are propriile sale valori pentru atributele definite de clasă și poate accesa metodele clasei.

Iată un exemplu simplu în Python:

python
class Animal:
    def __init__(self, nume, varsta):
        self.nume = nume
        self.varsta = varsta

    def descriere(self):
        return f"{self.nume} are {self.varsta} ani."

animal1 = Animal("Rex", 5)
animal2 = Animal("Fifi", 3)

print(animal1.descriere())  # Output: Rex are 5 ani.
print(animal2.descriere())  # Output: Fifi are 3 ani.

În acest exemplu, am definit o clasă Animal cu două atribute (nume, varsta) și o metodă (descriere()). Apoi am creat două obiecte (instanțe) ale clasei Animal: animal1 și animal2. Fiecare obiect are propriile sale valori pentru atribute și poate accesa metoda descriere() a clasei.

Atribute și metode

Atribute

Atributele sunt variabile asociate cu un obiect și reprezintă starea sau datele acestuia. În exemplul de mai sus, nume și varsta sunt atribute ale clasei Animal. Putem accesa atributele unui obiect folosind notația cu punct (.):

python
print(animal1.nume)  # Output: Rex
print(animal2.varsta)  # Output: 3

Metode

Metodele sunt funcții asociate cu o clasă și reprezintă comportamentele sau acțiunile pe care obiectele de acea clasă le pot efectua. Metodele sunt definite în interiorul unei clase, iar primul argument al fiecărei metode este de obicei self, care reprezintă instanța obiectului ce apelează metoda. În exemplul de mai sus, descriere() este o metodă a clasei Animal.

python
print(animal1.descriere())  # Output: Rex are 5 ani.

Metoda __init__()

Metoda specială __init__() este cunoscută drept constructorul clasei și este apelată automat atunci când se creează o nouă instanță a clasei. Constructorul este utilizat pentru a inițializa atributele obiectului și a seta starea inițială a acestuia. În exemplul de mai sus, constructorul clasei Animal primește doi parametri (nume și varsta) și inițializează atributele self.nume și self.varsta ale obiectului.

python
def __init__(self, nume, varsta):
    self.nume = nume
    self.varsta = varsta

În concluzie, programarea orientată pe obiect (OOP) este un paradigma de programare care ajută la organizarea și structurarea codului într-un mod mai eficient și intuitiv. Conceptele principale ale OOP sunt clasele, obiectele, atributele și metodele. Prin înțelegerea acestor concepte și aplicarea lor în dezvoltarea software-ului, poți crea programe mai robuste, scalabile și ușor de întreținut.