Atelier – „Principiile S.O.L.I.D. în C#”
Principiile SOLID reprezintă cele 5 concepte de bază, pe care ar trebui să le îndeplinească orice cod care este scris în spiritul programării obiectate pe obiecte (POO). Ele sunt principii generale, care pot fi implementate în orice limbaj de programare, iar acronimul SOLID este format din inițiala fiecărui principiu:
- Single Responsability Principle – fiecare clasă ar trebui să aibă o singură responsabilitate
- Open-Closed Principle – fiecare clasă ar trebui să fie deschisă pentru extindere și închisă pentru modificări
- Liskov’s Substitution Principle – orice clasă derivată poate înlocui clasa de bază și codul să funcționeze corect în continuare
- Interface Segregation Principle – în loc să avem o interfață cu foarte multe metode, din care doar câteva sunt folosite, mai bine avem mai multe interfețe mai mici și le folosim doar pe cele necesare
- Dependency Inversion Principle – dacă o clasă are o dependență, această dependență ar trebui să fie o interfață, nu o clasă concretă – acest principiu încurajează decuplarea claselor și e necesar pentru testarea unitară
Dacă la orice rețetă pe care o preparăm în bucătărie putem alege marca ingredientelor folosite, în cazul acestui workshop vom alege să facem exemplele în C#, dar noțiunile prezentate pot fi adaptate ulterior oricărui alt limbaj de programare obiect-orientat.
Cui i se adresează acest curs?
- Programatorilor de C# de nivel mediu, care folosesc Visual Studio ca mediu de dezvoltare
- Sunt necesare noțiuni de bază ale Programării Orientate pe Obiect (POO):
- Ce este o clasă, o interfață și o clasă abstractă
- Ce este moștenirea și polimorfismul
În acest curs vei învăța despre:
-
Care sunt principiile SOLID și la ce ne ajută ele:
- Single Responsability Principle
- Open-Closed Principle
- Liskov’s Substitution Principle
- Interface Segregation Principle
- Dependency Inversion Principle
-
Pentru fiecare principiu discutat, vom aborda următorul format:
- Descrierea principiului și când ne ajută
- Un exemplu practic în C# (o aplicație consola sau desktop), pe care îl vom face împreună
- Avantaje și dezavantaje
Metoda de predare
- Prezentarea noțiunilor teoretice
- Exerciții practice pentru fiecare principiu SOLID, pe care le vom realiza împreună – pornind de la un exemplu de cod care ar trebui scris conform principiilor discutate, vom dezbate care este soluția pe care dorim să o abordăm, iar apoi, câte un participant curajos, va primi controlul remote al tastaturii și al mouse-ului, pentru a scrie soluția agreată (evident, sub îndrumarea trainerului și atenția celorlalți participanți)
- Dezbateri și analiză asupra soluției implementate împreună.
Materialele necesare:
- Laptop
- Să fie instalat Visual Studio 2017 (versiune minimă)
Derularea evenimentului
- Durată: 1 zi
- Program: 09:30-16:30
- Pauze: între exerciții + pauză de masă 13:00-14:00
- Comunicarea: limba română
- Materialele de curs: toate exercițiile for fi realizate pe calculatorul personal, orice suport de curs adițional va fi transferat ulterior în format electronic
- Loc: Online – (linkul va fi trimis pe email)
- Auditoriu: minim 5 participanți
- Formator: Nadia Comanici