Interfețele, la fel ca și pointerii din C/C++, sunt unul dintre acele subiecte de care programatorii începători și chiar și cei intermediari se tem, pentru că nu le înțeleg. De fapt, adevărul este că sunt simple de înțeles, iar adevărata dificultate vine atunci când pun întrebarea „de ce să le folosesc/unde trebuie să le folosesc?”.… Read more
Posts Tagged ‘programarea orientată pe obiecte’
Interfețe
sâmbătă, ianuarie 4th, 2020Clase și metode abstracte
sâmbătă, ianuarie 4th, 2020Așa cum explicam în lecția precedentă, un mod de a realiza abstracția este cu ajutorul claselor și metodelor abstracte. Cuvântul cheie abstract poate fi utilizat atât pentru clase cât și pentru metode. O clasă abstractă este o clasă care oferă o implementare parțială.… Read more
Abstracția
vineri, ianuarie 3rd, 2020Un alt principiu fundamental al Programării Orientate Obiect este abstracția. Abstracția se referă în principal la capacitatea de a folosi ceva fără să știm sau să fim interesați de modul în care acel ceva face ceea ce face. Facem acest lucru în fiecare zi: nu ne interesează cum face un computer tot ceea ce face (bine, de fapt, unii dintre noi o fac), ne pasă doar că este capabil să facă ceea ce avem nevoie de la el.… Read more
Polimorfism
vineri, ianuarie 3rd, 2020Al treilea principiu fundamental al Programării Orientate pe Obiecte (OOP) se numește polimorfism. La un nivel fundamental, polimorfia se referă la capacitatea de a avea mai multe forme sau de a se transforma în mai multe forme. Provine din termenii greci poly, care înseamnă „multiplu” și morf, care înseamnă „formă”.… Read more
Încapsularea
joi, decembrie 19th, 2019Al doilea principiu fundamental al Programării Orientate pe Obiecte este încapsularea. Definiția sa principală se referă la acțiunea de a ascunde orice lucru care nu este esențial de lumea exterioară. Nu este foarte dificil să înțelegem faptul că nu trebuie să expunem totul atunci când construim ceva.… Read more
Metode Virtuale
duminică, decembrie 8th, 2019Metodele virtuale sunt metode care pot fi suprascrise în clasele copil (derivate). În mod implicit, în .NET, metodele nu sunt virtuale. Pentru a declara o metodă ca virtuală, trebuie să o declaram folosind cuvântul cheie virtual, ca atare:
Moștenirea (inheritance)
duminică, noiembrie 17th, 2019În prima lecție a capitolului Obiecte, am discutat în mod generic despre Programarea Orientată pe Obiecte (acronim OOP – din englezescul Object Oriented Programming) și am enumerat principiile sale fundamentale: încapsularea, moștenirea, abstractizarea și polimorfismul. În această lecție, voi explica moștenirea pe larg, și modul în care ierarhiile de clase îmbunătățesc lizibilitatea și reutilizarea codului.… Read more
Namespace
miercuri, august 2nd, 2017În OOP, namespace-urile sunt containere pentru un grup de clase care au un context comun sau sunt clasificate prin funcționalitate comună. Namespace-urile nu au niciun fel de funcționalitate și nu este obligatoriu să le folosiți. Cu toate acestea, ele oferă câteva avantaje, cel mai important fiind abilitatea de a sorta și grupa codul în unități logice.… Read more
Enumerări
duminică, iulie 16th, 2017Structuri
sâmbătă, iunie 24th, 2017În C# și framework-ul .NET există două implementări ale conceptului de „clasă”, din punct de vedere al OOP: clase și structuri.
Știm deja că clasele sunt definite utilizând cuvântul cheie class; structurile sunt definite utilizând cuvântul cheie struct.… Read more