Opleiding: Opleiding C# Professional
Wil je professioneel kunnen programmeren in C# en zelf complete applicaties op het .NET-platform kunnen bouwen, voor zowel het web als de desktop? In deze training leer je objectgeoriënteerd te ontwikkelen in C#, van syntax, klassen en overerving tot threading, generics en een databasekoppeling met Entity Framework Core. Je zet webapplicaties op met MVC en minimal API's, werkt met desktopbibliotheken en bouwt een kleine end-to-end applicatie. Hierdoor ben je in staat om zelfstandig werkende, goed onderhoudbare software te ontwikkelen.
Algemene omschrijving
C# is een objectgeoriënteerde taal van Microsoft en de basis voor softwareontwikkeling op het .NET-platform, voor zowel het web als de desktop. In deze training leer je die taal van de grond af professioneel te beheersen. Je begint bij de syntax, de tooling en de objectgeoriënteerde bouwstenen (klassen, overerving en interfaces) en werkt door naar exception handling, threading, generics en collections. Ook de moderne taalkenmerken van C# komen aan bod, zoals records, primary constructors en uitgebreide pattern matching.
Vanaf daar bouw je verder aan echte applicaties. Je zet webapplicaties op met MVC en minimal API's, werkt met de desktopbibliotheken van het platform en koppelt je software aan een relationele database in SQL Server via Entity Framework Core. Je sluit af met een praktijkopdracht waarin je een kleine end-to-end applicatie ontwerpt en bouwt, zodat alle onderdelen samenkomen in werkende code.
Onze trainers werken zelf dagelijks in C# en .NET, waardoor ze theorie en praktijk afwisselen en je tips en inzichten meegeven die je op je eigen werk herkent. Waar gewenst en mogelijk, laten we onze voorbeelden aansluiten bij de context waarin jij of je team werken. Hierdoor ben je na afloop in staat om zelfstandig goed onderhoudbare C#-applicaties te ontwikkelen.
Deze training als bedrijfstraining voor jou en je team?
Elk vraagstuk en elke situatie is anders; daarom staan tijdens een bedrijfstraining jouw organisatie en (bedrijfs)vraagstukken centraal. In goed overleg stellen we een lesprogramma samen dat volledig aansluit bij jouw (jullie!) specifieke uitdaging, wensen en dagelijkse werkpraktijk.
Programma
Tijdens de training C# Professional komen onderstaande onderwerpen aan bod.
NB: Afhankelijk van snelle ontwikkelingen op dit expertisegebied, kan de werkelijke trainingsinhoud hier van afwijken. Bel ons gerust voor meer informatie over de actuele inhoud.
- Taalfundament en objectgeoriënteerd programmeren
-
- Kennismaken met het .NET-platform en de tooling (Visual Studio, CLI), en de projectstructuur en het buildproces doorgronden
- De C#-syntax doorgronden: variabelen, datatypes, operatoren en control flow met pattern matching
- Klassen en objecten opzetten met properties, velden, methoden, constructors en access modifiers
- Overerving toepassen met basisklassen, afgeleide klassen, abstracte klassen en interfaces
- Werken met moderne C#-taalkenmerken zoals records, primary constructors en uitgebreide pattern matching
- Foutafhandeling, code-organisatie en best practices
-
- Exceptions afhandelen met try/catch/finally en using-statements en eigen exception-classes schrijven
- Code ordenen met namespaces, using-directives en aliasing
- Werken met delegates, events, extension methods en partial classes
- Utility classes inzetten zoals StringBuilder, Math, DateTime en TimeSpan, en configuratie beheren met IConfiguration
- Coding standards, naming conventions en de SOLID-principes toepassen
- Webapplicaties met MVC en minimal API's
-
- De MVC-architectuur opzetten met model, view en controller
- Routing, model binding en dependency injection inrichten
- Minimal API's bouwen als lichtgewicht alternatief voor klassieke MVC-routing
- REST API's aanspreken en JSON-serialisatie met foutafhandeling verzorgen
- Desktopapplicaties
-
- Werken met de desktopbibliotheken van het .NET-platform voor Windows-functionaliteit
- De desktopframeworks in algemene termen leren kennen, van WinForms en WPF tot MAUI
- Blazor verkennen als alternatieve route voor moderne clients
- Threading en synchronisatie
-
- Threads starten en werken met de thread pool en de Task Parallel Library
- Asynchrone methoden schrijven met async/await
- Gedeelde resources beveiligen met locks, Monitor en SemaphoreSlim
- Deadlocks voorkomen en werken met thread-safe collections
- Data, collections en Entity Framework Core
-
- Generieke methoden en klassen opzetten met constraints en covariance/contravariance
- Werken met collections zoals List, Dictionary, Queue en Stack
- Data bevragen en bewerken met LINQ-to-Objects
- Een relationele database in SQL Server opzetten en benaderen met Entity Framework Core
- Kiezen tussen code-first en database-first, en queries, tracking en migrations verzorgen
- Bestanden verwerken met streams, readers en writers, inclusief JSON- en XML-serialisatie
- Praktijkopdracht
-
- Een kleine end-to-end applicatie ontwerpen op basis van C# en een database
- Web- en desktopbibliotheken combineren tot een werkende toepassing
- De aangeleerde best practices toepassen op je code
De training is praktisch en interactief van opzet, met veel ruimte voor jouw vragen en werksituatie. Je gaat aan de slag met passende praktijkvoorbeelden. Door actief te oefenen, te analyseren en te evalueren, maak je je de materie stap voor stap eigen en ervaar je hoe je objectgeoriënteerde code opzet en uitbouwt tot werkende applicaties.
Onze trainers zijn, naast trainer, dagelijks werkzaam op dit expertisegebied. Ze beschikken dus niet alleen over de meest actuele kennis, maar hebben ook essentiële praktijkervaring. Hierdoor zijn ze in staat om een waardevolle vertaalslag te maken van ‘kennis’ naar ‘toepassing binnen jouw organisatie en werksituatie’.
Doelen
Na deze training ben je in staat om:
- Objectgeoriënteerd te programmeren in C# met klassen, overerving, interfaces en moderne taalkenmerken
- Webapplicaties te bouwen met MVC en minimal API's en deze aan REST API's te koppelen
- Desktopapplicaties op te zetten met de desktopbibliotheken van het .NET-platform
- Een relationele database in SQL Server op te zetten en te benaderen met Entity Framework Core en LINQ
- Een kleine end-to-end applicatie te ontwerpen en te bouwen volgens beproefde coding standards en de SOLID-principes