Există cinci tipuri de delegați prestabiliți pe care îi puteți utiliza în C#: Delegate, MulticastDelegate, Predicate, Func și Action. Am descris deja Delegate într-o lecție anterioară. MulticastDelegate există doar din motive istorice și de compatibilitate anteriorară, și ne permite să înlănțuim delegați, dar nu îl veți folosi în mod direct aproape niciodată.… Read more
Archive for ianuarie, 2020
Func și Action
miercuri, ianuarie 29th, 2020Delegați înlănțuiți
vineri, ianuarie 24th, 2020O proprietate utilă a obiectelor de tip delegat este aceea că mai multe obiecte pot fi atribuite unei singure instanțe delegat folosind operatorul +, proces numit înlănțuire de delegați sau delegați înlănțuiți.
Înlănțuirea delegaților nu este cu adevărat utilă până când nu vom ajunge la evenimente și abonații evenimentelor, care vor veni într-o lecție viitoare, dar este mai bine să descriu comportamentul lor acum, după ce ați văzut un pic modul de funcționare al delegaților.… Read more
Expresii lambda
duminică, ianuarie 12th, 2020În lecția anterioară scriam că putem îmbunătăți în continuare codul folosind expresii lambda. O expresie lambda este o modalitate convenabilă de a defini o funcție anonimă (fără nume) care poate fi transmisă ca variabilă sau ca parametru la un apel de metodă.… Read more
Delegați
joi, ianuarie 9th, 2020Din lecția parametrii metodelor și funcțiilor știți deja că puteți crea metode care acceptă o serie de parametri de diferite tipuri. Dar ce faceți dacă doriți să trimiteți o metodă în sine ca parametru unei alte metode? C# ne permite prin delegați să facem exact asta.… Read more
Interfețe
sâmbătă, ianuarie 4th, 2020Interfeț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
Clase ș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