SlideShare a Scribd company logo
1 of 41
POO Principii
Cuprins ,[object Object],[object Object],[object Object],[object Object],D. Lucanu POO – Principii
Principii POO ,[object Object],[object Object],[object Object],[object Object],[object Object],D. Lucanu POO – Principii
Concepte POO D. Lucanu POO – Principii clase obiecte atribute metode mesaje mostenire  supraincarcare suprascriere legare dinamica interfata ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Legi (reguli generale) ale POO ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],D. Lucanu POO – Principii
Obiecte si clase ,[object Object],[object Object],[object Object],[object Object],[object Object],D. Lucanu POO – Principii
Obiecte si clase ,[object Object],D. Lucanu POO – Principii ,[object Object],[object Object],[object Object],[object Object],[object Object]
Mesaje ,[object Object],D. Lucanu POO – Principii ,[object Object],[object Object]
Mostenire ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],D. Lucanu POO – Principii
Mostenire D. Lucanu POO – Principii
Principiul substituirii - contraexemplu D. Lucanu POO – Principii ,[object Object],[object Object],[object Object]
Ierarhizare D. Lucanu POO – Principii Pinguini care zboara?
Polimorfism ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],D. Lucanu POO – Principii
Polimorfism D. Lucanu POO – Principii
Relatii de asociere D. Lucanu POO – Principii ,[object Object],[object Object],[object Object]
Studiu de caz D. Lucanu POO – Principii Sistemul informatic al facultatii
Sistemul informatic al facultatii ,[object Object],[object Object],[object Object],[object Object],D. Lucanu POO – Principii
Clasa  Student ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],D. Lucanu POO – Principii
Clasa  Profesor ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],D. Lucanu POO – Principii
Generalizare: clasa Persoana ,[object Object],[object Object],[object Object],[object Object],[object Object],D. Lucanu POO – Principii
Specializare: clasele Student si Profesor (revizuite) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],D. Lucanu POO – Principii
Generalizare/specializare: reprezentare grafica D. Lucanu POO – Principii
Generalizare/specializare in C++ ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],D. Lucanu POO – Principii
Generalizare/specializare in C++  D. Lucanu POO – Principii class Student : public Persoana  { public: Student(string="", string=""); ~Student(); void addDiscUrmata(Disciplina*); private: Disciplina *discUrmate[MAX]; int nrDiscUrmate; }; class Profesor : public Persoana  { //. . . };
Relatia de asociere student-disciplina  ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],D. Lucanu POO – Principii
Relatia asociere disciplina-profesor ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],D. Lucanu POO – Principii
Relatia asociere disciplina-examen  ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],D. Lucanu POO – Principii
Relatia de asociere student-examen ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],D. Lucanu POO – Principii
D. Lucanu POO – Principii Relatia de asociere: reprezentare grafica
Relatia student-disciplina in C++ D. Lucanu POO – Principii class Student : public Persoana { public: . . . void addDiscUrmata(Disciplina*); private: Disciplina *discUrmate[MAX]; int nrDiscUrmate; }; ,[object Object],[object Object],[object Object],[object Object]
Relatia disciplina-profesor in C++ D. Lucanu POO – Principii ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Relatia disciplina-examen in C++  ,[object Object],[object Object],[object Object],[object Object],D. Lucanu POO – Principii class Examen  { public: //. . . Disciplina* getDisc() const; private: Disciplina* disc; //. . . };
Relatia student-examen in C++ D. Lucanu POO – Principii ,[object Object],[object Object],[object Object],class Examen { public: void addStudent(Student*); private: . . . struct { Student* stud; int nota; } eval[MAX_nrStudEx]; int nrStud; void setNota(Student*, int); };
D. Lucanu POO – Principii Relatia de compozitie (“hasA”)
Relatii de compozitie in C++ ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],D. Lucanu POO – Principii
Relatii de compozitie in C++  ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],D. Lucanu POO – Principii
D. Lucanu POO – Principii ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Comunicarea intre obiecte
D. Lucanu POO – Principii Comunicarea intre obiecte mesaje
Mesaje in C++ ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],D. Lucanu POO – Principii
Mesaje in C++  ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],D. Lucanu POO – Principii
Mesaje in C++  ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],D. Lucanu POO – Principii

More Related Content

More from thinkphp

Javascript patterns
Javascript patternsJavascript patterns
Javascript patternsthinkphp
 
Placemaker
PlacemakerPlacemaker
Placemakerthinkphp
 
PHP 5.3 And PHP 6 A Look Ahead
PHP 5.3 And PHP 6 A Look AheadPHP 5.3 And PHP 6 A Look Ahead
PHP 5.3 And PHP 6 A Look Aheadthinkphp
 
Atom Web Services
Atom Web ServicesAtom Web Services
Atom Web Servicesthinkphp
 
Json Rpc Proxy Generation With Php
Json Rpc Proxy Generation With PhpJson Rpc Proxy Generation With Php
Json Rpc Proxy Generation With Phpthinkphp
 
Php And Web Services
Php And Web ServicesPhp And Web Services
Php And Web Servicesthinkphp
 
Object Oriented Programming Concepts
Object Oriented Programming ConceptsObject Oriented Programming Concepts
Object Oriented Programming Conceptsthinkphp
 
Ajax Introduction Presentation
Ajax   Introduction   PresentationAjax   Introduction   Presentation
Ajax Introduction Presentationthinkphp
 

More from thinkphp (9)

Javascript patterns
Javascript patternsJavascript patterns
Javascript patterns
 
Placemaker
PlacemakerPlacemaker
Placemaker
 
PHP 5.3 And PHP 6 A Look Ahead
PHP 5.3 And PHP 6 A Look AheadPHP 5.3 And PHP 6 A Look Ahead
PHP 5.3 And PHP 6 A Look Ahead
 
Atom Web Services
Atom Web ServicesAtom Web Services
Atom Web Services
 
Json Rpc Proxy Generation With Php
Json Rpc Proxy Generation With PhpJson Rpc Proxy Generation With Php
Json Rpc Proxy Generation With Php
 
Php And Web Services
Php And Web ServicesPhp And Web Services
Php And Web Services
 
Object Oriented Programming Concepts
Object Oriented Programming ConceptsObject Oriented Programming Concepts
Object Oriented Programming Concepts
 
Ajax Introduction Presentation
Ajax   Introduction   PresentationAjax   Introduction   Presentation
Ajax Introduction Presentation
 
OOP
OOPOOP
OOP
 

Principii Poo