– Încapsularea
– Abstracția
– Moștenirea
– Polimorfismul
Încapsularea
Încapsularea se referă la gruparea datelor și metodelor într-o singură unitate. Acest lucru permite reutilizarea funcțiilor într-un mod mai sigur. De exemplu, priviți codul de mai sus. Proprietățile sunt vizibile doar pentru domeniul de aplicare al clasei, iar funcțiile phoneColor, phoneWeight, phoneBrand, sunt vizibile pentru oricine apelează funcția.
Abstractizare
Abstractizarea ne permite să creăm un model din ceva mai complex. Gândiți-vă, de exemplu, la telefonul dvs. atunci când intrați pe Instagram și dați like sau comentați o fotografie. Există o mulțime de complexitate și logică care se întâmplă în fundal și de care nu sunteți la curent. Un alt exemplu ar fi o mașină de cafea. Să zicem că folosiți o mașină de cafea pentru a face cafea. Există o mulțime de lucruri care se întâmplă în interiorul mașinii și despre care s-ar putea să nu știți că se întâmplă. Pe dumneavoastră, în calitate de utilizator, probabil că nu vă interesează ce se întâmplă în aparat. Vrei doar cafeaua. În esență, ascunde informațiile/detaliile inutile și ne oferă doar ceea ce avem nevoie.
Ereditarism
Ereditarismul se referă la modul în care clasele pot moșteni metode sau proprietăți de la alte clase într-o structură ierarhică. În POO, există ceva numit parent class
și sub class
sau child class
. sub class
sau child class
inherits
de la clasa părinte. Un alt mod în care putem descrie acest lucru este spunând că subclasa extends
la clasa parent
.
Polimorfism
Polimorfismul înseamnă multe forme. În ceea ce privește programarea, se referă în mod specific la modul în care subclasele moștenesc toate proprietățile de la o clasă părinte, dar pot avea și proprietăți specifice proprii. De exemplu, să ne gândim la un profesor și la elevii din interiorul unei clase. Aceștia au multe caracteristici în comun, cum ar fi numele, vârsta și așa mai departe. Cu toate acestea, elevii pot avea propriile caracteristici pe care profesorul nu le are, cum ar fi nota.
Concluzie
În concluzie, OOP este o paradigmă de programare axată pe obiecte. OOP nu este specifică JavaScript, dar acesta este un exemplu de proiectare a acesteia în JavaScript. Cea mai bună analogie sau cel mai bun mod de a ne gândi la OOP, este că este, în esență, un plan pentru crearea de obiecte. Ne poate ajuta să facem codul nostru mai DRY (Don’t Repeat Yourself) prin reutilizarea codului. Nu vă faceți griji dacă nu ați înțeles acest concept de prima dată. Eu cu siguranță nu am înțeles. Am postat un link mai jos pentru mai multe informații.