Ce este POO?

Introducere în Programarea Orientată pe Obiecte în Python

George Boorman

Curriculum Manager, DataCamp

Programare procedurală

 

  • Cod ca o secvență de pași
  • Excelent pentru analiza datelor

Scări

1 Image source: https://unsplash.com/@tateisimikito
Introducere în Programarea Orientată pe Obiecte în Python

Gândirea în secvențe

 

pictograme reprezentând o persoană în pat, o cafea și o servietă

 

un set de pictograme reprezentând multe activități

Introducere în Programarea Orientată pe Obiecte în Python

Programare procedurală

 

  • Cod ca o secvență de pași
  • Excelent pentru analiza datelor

Programare orientată pe obiecte

 

  • Cod ca interacțiuni între obiecte
  • Excelent pentru dezvoltarea de software
  • Cod mentenabil și reutilizabil!
Introducere în Programarea Orientată pe Obiecte în Python

Obiecte

$$\Large{\text{Obiect = date + funcționalitate}}$$

silueta unei persoane cu laptop reprezentând un client

                                                          Stare - datele unui obiect

                                                  Comportament - funcționalitatea unui obiect

Introducere în Programarea Orientată pe Obiecte în Python

Obiecte în Python

  • Tot ce există în Python este un obiect
Obiect Tip
5 int
"Hello" str
pd.DataFrame() DataFrame
sum() function
... ...
Introducere în Programarea Orientată pe Obiecte în Python

Clasele ca șabloane

  • Clasă: un șablon pentru obiecte, care definește stările și comportamentele posibile

clasa client

Introducere în Programarea Orientată pe Obiecte în Python

Clasele ca șabloane

  • Clasă : un șablon pentru obiecte, care definește stările și comportamentele posibile

clasa client ramificată în obiecte client

Introducere în Programarea Orientată pe Obiecte în Python

Clase în Python

  • Obiectele Python de același tip se comportă la fel
  • lists este o clasă
    • Creată cu valori separate prin virgulă [1, 2, 3, 4, 5]
    • Partajează aceleași metode, ex., .append()
  • Utilizați type() pentru a afla clasa
type([1, 2, 3, 4, 5])
<class 'list'>
Introducere în Programarea Orientată pe Obiecte în Python

Atribute și metode

Stare ↔ atribute
import pandas as pd
df = pd.DataFrame({"a": [1,2,3], 
                   "b": [4,5,6]})

# shape attribute df.shape
(3, 2)
  • Utilizați obj. pentru a accesa atribute și metode
Comportament ↔ metode
import pandas as pd
df = pd.DataFrame({"a": [1,2,3], 
                   "b": [4,5,6]})

# head method df.head()
   a  b
0  1  4
1  2  5
2  3  6
Introducere în Programarea Orientată pe Obiecte în Python

Afișarea atributelor și metodelor

# Display attributes and methods
dir([1, 2, 3, 4])
['__add__',
 '__class__',
 '__contains__',
 '__delattr__', 
 ...
 'pop',
 'remove',
 'reverse',
 'sort']
# Display attributes and methods
dir(list)
['__add__',
 '__class__',
 '__contains__',
 '__delattr__', 
 ...
 'pop',
 'remove',
 'reverse',
 'sort']
Introducere în Programarea Orientată pe Obiecte în Python

Rezumat

Termen Definiție
Clasă Un șablon/model folosit pentru a construi obiecte
Obiect O combinație de date și funcționalitate; O instanță a unei clase
Stare Date asociate unui obiect, atribuite prin atribute
Comportament Funcționalitatea unui obiect, definită prin metode
Introducere în Programarea Orientată pe Obiecte în Python

Să recapitulăm!

Introducere în Programarea Orientată pe Obiecte în Python

Preparing Video For Download...