Programare Orientata pe Obiecte pentru Incepatori : Partea 1

postat acum 3 ani de Stefanescu Mihai in categorie iNoob

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.

Sunt un tanar programator din Bucuresti ce lucreaza in PHP/Mysql (MySqli/PDO), Laravel, CodeIgniter, MySQL, PostgreSQL, Wordpress, HTML5/CSS3, Sass, Photoshop si multe altele.
Google+ Community Facebook Group
Acest articol a fost mutat de pe vechea platforma.
Pentru orice eroare aparuta la mutare va rog sa ma contactati!
Comentariu postate de Ionescu Victor
Clasele php nau delegates/eventuri ca in dotnet?
Comentariu postate de SydowBlog
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.
Comentariu postate de Laur
Cand vine urmatorul articol ? As avea nevoie de mai multe informatii aici pe partea de OOP. Multumesc