Schița de curs
Sesiunea 1: Principiile SOLID și codul curat
- Trecerea în revistă a principiilor SOLID (responsabilitate unică, deschis/închis, substituție Liskov, segregare de interfață, inversiune de dependență)
- Aplicarea principiilor SOLID la codul C#.
- Principii și bune practici de cod curat
- Tehnici de refactorizare pentru a îmbunătăți mentenabilitatea și lizibilitatea codului
Sesiunea 2: Dezvoltarea de aplicații stratificate
- Înțelegerea modelului de arhitectură stratificată
- Implementarea separării preocupărilor în aplicațiile C#.
- Proiectarea și implementarea straturilor de prezentare, logică de afaceri și acces la date
- Injectarea dependențelor (DI) în aplicațiile stratificate
Sesiunea 3: Covarianță și contravarianță generică
- Explorarea covarianței și contravarianței în C#
- Utilizarea interfețelor generice și a delegaților cu covarianță și contravarianță
- Înțelegerea cuvintelor cheie in și out în parametrii de tip generic
- Exemple practice și cazuri de utilizare a covarianței și contravarianței.
Sesiunea 4: LINQ și interogări avansate
- Trecerea în revistă a noțiunilor de bază LINQ
- Profundizarea în operatorii de interogare LINQ
- LINQ cu structuri de date complexe și tipuri personalizate
- Considerații privind performanța și tehnici de optimizare
Sesiunea 5: IDisposable și gestionarea resurselor
- Înțelegerea interfeței IDisposable și a modelului Dispose
- Implementarea unei gestionări și a unei curățări adecvate a resurselor
- Utilizarea instrucțiunii using și a modelului IDisposable în C#
- Gestionarea resurselor negestionate și finalizarea
Sesiunea 6: Evenimente slabe și memorie Management
- Modele de evenimente slabe în C# pentru gestionarea evenimentelor
- Prevenirea scurgerilor de memorie cu referințe slabe
- Înțelegerea gestionării memoriei în .NET și a colectorului de gunoi
- Strategii de optimizare a utilizării memoriei și de minimizare a scurgerilor de memorie
Sesiunea 7: Filozofia formularelor și interfața utilizator Design Patterns
- Principii de proiectare și organizare a formularelor în aplicațiile C#
- MVVM (Model-View-ViewModel) și alte modele de proiectare UI
- Implementarea legăturii de date și a comenzilor în aplicațiile WPF
- Gestionarea intrărilor utilizatorului și validarea în formulare
Sesiunea 8: Paralele Programming cu fire de execuție, sarcini și Async/Await
- Introducere în conceptele de programare paralelă
- Crearea și gestionarea firelor de execuție în C#
- Lucrul cu Task Parallel Library (TPL) pentru procesare paralelă
- Programarea asincronă cu ajutorul cuvintelor cheie async și await
Cerințe
- Se așteaptă ca participanții să aibă o înțelegere fundamentală a conceptelor de programare C#, inclusiv a variabilelor, a tipurilor de date, a fluxului de control și a principiilor de bază ale programării orientate pe obiecte.
Mărturii (11)
Îmi plac foarte mult exercițiile
Ioan Adrian Gui - Bachner - Continental Automotive (avlad)
Curs - Unity: Developing 3D Games with C# and Javascript
Tradus de catre o masina
the trainer level.
Titus - Ness
Curs - Unit Testing with C#
Totul. Din nou, având în vedere cantitatea de concepte abordate de Fulvio, inclusiv explicațiile detaliate în trei zile a fost foarte bună. Mi-a plăcut că a acoperit o mulțime de concepte de care noi, ca ingineri de date, am avea nevoie.
Florim - Jisc
Curs - Programming in C# with Visual Studio
Tradus de catre o masina
The trainor is knowledgeable about the topic. He is easily to approach if you have questions. Of course, he shared his knowledge to the best he can.
Minette Mirzi Dela Cruz - Electronic Commerce Payments Inc.
Curs - Programming in ASP.NET MVC 5
Bine explicat.
Moises - Department of Defense
Curs - Programming in WPF
Tradus de catre o masina
Time management of the training. Allocated time of training was well-spent and maximized.
Edgar Caguioa - ANALOG DEVICES GEN. TRIAS, INC.
Curs - Visual Studio with VB.Net
Adaptat la nevoile noastre
Rafał - Haleon
Curs - C#.Net
Tradus de catre o masina
Am apreciat amploarea largă a cunoștințelor lui Folio. Nu numai că era familiarizat cu conținutul cursului, dar cunoștea și construcțiile din limbajele pe care le cunoșteam pentru a face exemplele mai semnificative pentru noi. În timpul intervalelor, el și-a împărtășit cunoștințele despre tehnologii și soluții din afara domeniului de formare pentru a ne oferi informații despre alte soluții pe care le-am putea folosi în viitor (și în viitoarele cursuri).
Raphael - Markit Valuations Limited
Curs - Developing Desktop Applications with Visual Studio 2012, VB.NET and SQL Server 2012
Tradus de catre o masina
Trainer knowledge and approach.
Piotr Kucharski
Curs - Introducing C# 6.0 with Visual Studio 2015/2017
Colin approached the subject in a way, and using language in a way that made it easy to understand. He managed to cover a vast amount in a small time without making it seem like "Information Overload". The training was done in a way that ensures you to take in information and use it going forward, rather than detaching each part from the next.
David - Sepura Plc
Curs - Programming in C#
Abordarea flexibilă și adaptarea exercițiilor la întrebările și problemele ridicate de cursanți.
Maciej - DataConsult S.A.
Curs - Advanced Programming in C#
Tradus de catre o masina