Opleiding: Masterclass C#
Wil je als ervaren C#-ontwikkelaar grote, schaalbare applicaties kunnen ontwerpen en laten communiceren met de systemen eromheen? In deze masterclass verdiep je je in software-architectuur, geavanceerd object-georiënteerd programmeren en design patterns, en leer je data uit te wisselen via XML, JSON, REST en moderne webservices. Je sluit af met een eigen webapplicatie waarin je alles combineert. Hierdoor ben je in staat om je ontwerpkeuzes te onderbouwen en applicaties te bouwen die meegroeien met hun gebruik.
Algemene omschrijving
Veel professionele .NET-applicaties staan niet op zichzelf: ze wisselen voortdurend gegevens uit met andere systemen en moeten blijven werken naarmate ze groeien. Tijdens deze masterclass leer je hoe je zulke applicaties ontwerpt, van de architectuurvisie en de ontwikkelmethode tot de patronen waarmee je je code schaalbaar en herbruikbaar houdt. Je bouwt daarbij voort op je bestaande kennis van C#.
Je verdiept je in geavanceerde object-georiënteerde technieken, de recente taalfeatures van C#, het LINQ-framework en parallelle en asynchrone verwerking. Daarnaast leer je data uit te wisselen met XML, JSON, REST en moderne webservices, en breng je je applicatie naar de cloud. We werken met de actuele versie van het .NET-platform, zodat je aansluit op hoe er vandaag wordt ontwikkeld. Elk onderwerp oefen je aan de hand van herkenbare praktijkvoorbeelden.
Onze trainers zijn, naast trainer, dagelijks werkzaam op dit expertisegebied. Zo pik je naast de technieken ook de afwegingen op die ervaren ontwikkelaars dagelijks in hun werk maken. Aan het eind van de training ontwikkel je in teamverband een eigen webapplicatie waarin je de behandelde technieken combineert; die opdracht vormt tegelijk je examen. Hierdoor weet je hoe je professionele, goed onderhoudbare software ontwerpt, bouwt en koppelt aan de systemen om je heen.
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 masterclass C# 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.
- Software-architectuur en versiebeheer
-
- De belangrijkste ontwikkelmethoden doorgronden, van klanteisen tot implementatie
- Applicaties gestructureerd opzetten vanuit een heldere architectuurvisie
- Versiebeheer inzetten om met een team aan één codebase te werken
- Ontwerpkeuzes toepassen op een praktijkcase
- Geavanceerd object-georiënteerd programmeren
-
- Geavanceerde OO-technieken toepassen, met generics, delegates, lambda expressions en extension methods
- Recente C#-taalfeatures inzetten, zoals records, primary constructors, pattern matching, collection expressions en top-level statements
- Exception handling, debugging en testen toepassen voor robuuste code
- Iterators, tuples, deconstruction en expression-bodied members gebruiken waar ze je code leesbaarder maken
- Design patterns
-
- Doorgronden welk ontwerpprobleem een design pattern oplost
- Veelgebruikte patterns toepassen, zoals MVC, Interface, Factory en Observer
- Goed onderhoudbare, schaalbare en herbruikbare software opzetten met patterns
- LINQ en dataverwerking
-
- Het LINQ-framework inzetten om databaseresultaten naar objecten te mappen
- Query expressions, operators en keywords toepassen
- Deferred execution doorgronden en de gevolgen daarvan voor performance
- LINQ to XML gebruiken om gestructureerde data te bevragen
- Parallel computing en asynchroon programmeren
-
- Werken met threading, tasks en parallelle constructies
- Synchronisatie toepassen om gedeelde data veilig te benaderen
- PLINQ inzetten voor parallelle query's
- Asynchroon programmeren met async en await
- Parallelle applicaties debuggen
- Data-uitwisseling en webservices
-
- XML en JSON toepassen om informatie gestructureerd vast te leggen en tussen systemen uit te wisselen
- Doorgronden hoe applicaties elkaar via een webservice benaderen
- RESTful API's ontwerpen en bouwen met ASP.NET Core Web API
- gRPC inzetten voor snelle communicatie tussen services
- Data uit externe systemen inlezen en verwerken in je applicatie
- Applicaties in de cloud
-
- Schaalbare software bouwen die geschikt is voor de cloud
- Serverless functies inzetten waar dat past
- Bepalen aan welke eisen een applicatie moet voldoen om betrouwbaar in de cloud te draaien
- Examen: je eigen webapplicatie
-
- In teamverband een webapplicatie ontwikkelen die de behandelde technieken combineert
- Architectuur, patterns en data-uitwisseling samenbrengen in één oplossing
- Je werk laten beoordelen voor het examencertificaat
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 grote applicaties ontwerpt, bouwt en koppelt aan externe systemen.
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:
- Grote, schaalbare applicaties te ontwerpen vanuit een heldere architectuurvisie
- Geavanceerde object-georiënteerde technieken, recente C#-features en design patterns toe te passen
- Data uit te wisselen met XML, JSON, REST en moderne webservices
- Parallelle en asynchrone verwerking in te zetten voor performante applicaties
- In teamverband een eigen webapplicatie te ontwikkelen waarin je de behandelde technieken combineert