Friday, July 04, 2025 01:02

Archive for May, 2020

IEnumerable și IEnumerator

Friday, May 8th, 2020

Înainte de a putea începe să ne ocupăm de LINQ, trebuie mai întâi să înțelegem principiile care stau la baza sa. LINQ se referă la operațiuni asupra colecțiilor de date, deci, ați ghicit: ne vom ocupa de colecții.

Ați aflat deja că dintre toate structurile de date, array-urile sunt cele mai rapide, deoarece sunt structuri de date non-generice nesortate.… Read more

Semnificația lui „this” în metodele de extensie

Monday, May 4th, 2020

În lecția despre metodele de extensie, am aflat că acestea sunt un mod frumos de a adăuga funcționalitate suplimentară tipurilor deja existente, și am făcut acest lucru prin adăugarea unei metode statice într-o clasă statică, care a luat un parametru de tip, prefixat de cuvântul cheie this, astfel:

[raw]
[/raw]

Deci, deși clasa mea originală Carte nu conține o metodă numită VindeExemplar(), pot să o apelez în metoda Main() deoarece am declarat o metodă de extensie pentru clasa Carte, iar această metodă statică VindeExemplar() a luat un parametru de tip Carte prefixat de cuvântul cheie this, care semnalează compilatorului că metoda este intenționată ca o metodă de extensie pentru tipul Carte.… Read more

Metode extensie

Monday, May 4th, 2020

Uneori, programatorii consideră că au nevoie să adauge funcționalități noi codurilor deja existente, pentru a le îmbunătăți sau a le completa. În cazul în care respectivul codul sursă este disponibil, sarcina este simplă – trebuie doar să adauge funcționalitatea necesară și să recompileze.… Read more