Programare Orientata pe Obiecte pentru Incepatori : Partea 1

iNoob | Stefanescu Mihai | 2020-10-11

Sunt sigur ca orice om ce a avut si cel mai mic contact cu un limbaj de programare precum PHP, C++, Visual Basic (VB.NET) sau chiar Java stie ce este aceea programare orientata pe obiecte. In fine, nu mai pierd timpul insirand toate limbajele de programare orientata pe obiecte pentru ca sunt prea multe si puteti gasi toata listaaici, am sa incep sa explic mai in detaliu.

Ce este Programarea Orientata pe Obiecte?

Ai auzit vre-o data de termenul OOP (Object-Oriented Programming)? Daca lucrezi in acest domeniu cu siguranta ai auzit termenul fie la un professor, fie la un coleg de munca, fie la un prieten, s.a.m.d. Dar, daca acum auzi prima data acest termen am sa explic la ce se refera.

Programarea orientata pe obiecte este de fapt modul de programare ce se foloseste de obiecte…acestea fiind formate din mai multe functii sau metode ce au de dus la indeplinire o anumita treaba. In acest tip de programare este posibil sa intalniti denumiri precum data abstraction, inheritance, polymorphisc sau encapsulation (da, am dat aceste denumiri in engleza pentru ca ar fi ciudat sa le traduc…).

Ba chiar mai mult, veti intalni mult mai multi termeni noi…ce sunt obiectele? ce este abstraction. polymorphism, encapsulation?

Relaxeaza-te si continua lectura! ????

Ce sunt obiectele?

Obiectele sunt reprezentarile computerizate a obiectelor din lumea reala si contine mai multe metode si functii. Fiecare obiect are o anumita folosinta, anumite proprietati si attribute. Drep exemplu sa luam o masina.O masina este defapt un obiect din lumea reala, folosit in primul rand pentru transport…O masina are mai multe proprietati si/sau atribute precum culoarea, viteza, inaltime, s.a.m.d…exact la fel ca un obiect in programare.

Ce sunt abstraction, inheritance, encapsulation si polymorphism?

Abstraction –  inseamna eliminarea sau ascunderea deliberata a unor detalii ale unui proces sau artefact pentru a releva mai clar alte aspecte sau detalii.

Inheritance – este un mod de a construi un obiect cu ajutorul functiilor definite in alt obiect.

Encapsulation – se refera la doua notiuni inrudite dar distincte. Este folosit ca un mecanism de a limita accesul unor anumite obiecte.

Polymorphism – ? este abilitatea de a crea o variabila, functie sau un obiect ce contine mai multe forme.

De ce sa folosesc aceasta metoda de programare?

  • Cod Refolosibil
  • Cod usor de intretinut
  • Dezvoltarea rapida a software-ului
  • Producerea de scripturi de calitate

Bine de stiut

  • Programarea orientata pe obiecte pare extrem de complicata la inceput
  • Programarea procedurala este dezordonata si greu de intretinut

Iata si un exemplu de clasa scrisa in PHP

class Caine {
public $culoare = "brown";
public $ochi = "brown";

public function vorbeste() {
echo "Woof! Woof!";
}

public function alearga() {
echo "Cainele tau alearga";
}

public function nevoi() {
echo "XD";
}
}

$caine = new Caine();
$caine->vorbeste();
$caine->alearga();

Aceasta clasa va afisa exact acest mesaj:

Woof! Woof! Cainele tau alearga

Un obiect este de fapt o instanta a unei clase.

Atat pentru moment, in curand voi publica si continuarea acestui tutorial.


Imi place ce faci aici
Daca iti place ce fac aici imi poti cumpara o cafea Buy Me a Coffee at ko-fi.com

Stefanescu Mihai
Programator de ~8 ani, am lucrat la proiecte din mai multe industrstrii, de la eCommerce la telecomunicatii la automatizari. In acest timp am folosi diferite tehnologii, de la PHP, MySQL, PostgreSql, RabbitMq, Redis, Memcached si altele.
       

Get in touch
Pentru nelamuriri, dubii, comentarii si chestii de pe suflet ne putem auzi pe Discord, Reddit sau poti deschide o discutie noua pe forum.

Posteaza un comentariu

Comentarii

Ionescu Victor
Ionescu Victor | 2020-09-26 14:29
Clasele php nau delegates/eventuri ca in dotnet?

SydowBlog
SydowBlog | 2020-09-26 14:29
Chiar imi este de ajutor aceasta initiativa a ta. Tocmai am inceput un curs de php pe codecademy.com dupa ce am sa il termin(cateva zile) incep sa ma uit peste ce ai scris tu.

Laur
Laur | 2020-09-26 14:29
Cand vine urmatorul articol ? As avea nevoie de mai multe informatii aici pe partea de OOP. Multumesc

Club-ul este dedicat membrilor si ofera access la mai multe zone ale website-ului.

🗝ïļ Login 🌟 Register

🔖 Bookmarks ⊞
âœĻ Pentru a sustine aceasta comunitate am sa te rog sa te autentifici sau sa te inregistrezi!

🌊ïļ Discord ⊞

Folosim cookie-uri pentru a oferi functionalitatile critice ale aplicatiei Invata-Programare. Folosim cookie-uri si pentru a analiza traficul, pentru care e nevoie de consimtamantul dvs. explicit.

⮆ïļ