
C# Programmering Avanceret
Beskrivelse
Kurset bygger videre på de fundamentale områder, berørt i SU-230 C# Programming Videregående.
Vi ser nærmere på de mange nye muligheder i C#, f.eks. pattern matching og det ”nye” switch udtryk. Derudover gennemgås en række principper og faciliteter i forbindelse med C#’s klasser herunder også SOLID principperne samt Destructor og IDisposable.
Kurset fylder også værktøjskassen med viden om Generics (generel kode med variabel datatype), Reflection (benyt ukendte programmer), brug af flertrådet kode samt grundlæggende kryptering.
Endelig er der også en grundlæggende indføring i mulighederne for brugergrænseflader (UI), fra konsol via Windows desktop (WPF) over Cross platform desktop/phone (MAUI) til Web (MVC). Vi kaster også et blik på Blazor, der er C#/.Net, afviklet direkte i browseren.
De enkelte moduler afsluttes med en opgave, hvor der er mulighed for at afprøve faciliteterne i praksis.
SuperUsers stiller Windows computere med Visual Studio til rådighed. Du er velkommen til at arbejde i dit eget miljø (fx JetBrains's Rider på Linux), men må så selv medbringe en computer.
Instruktøren anvender Visual Studio på Windows og kan kun assistere med opsætning af andre miljøer i begrænset omfang.
Certificeringspakker
Moduloversigt
- Modul 1Highlights from Volume 1- C# Basics - struct, class and record - C# Features - Inheritance - Working with Interfaces - Collections - Accessing the file system - Accessing a database - Working with the web 
 
- Modul 2Advanced C# features- Readonly elements (readonly fields, get-only and init-only properties) - Working with null - Pattern matching - Switch and throw expression - Exception filters - Local functions - C# version independent of .Net version 
 
- Modul 3Advanced .Net features- The filesystem: FileSystemWatcher, Compressed files - Logging 
 
- Modul 4Advanced classes- The SOLID principles - Extension methods - Unit testing - Partials - Indexers - Destructor & IDisposable - Delegates and events - Static classes and members 
 
- Modul 5Advanced records- Inside records 
 
- Modul 6Generics- Datatype as a "variable" - The road from array --> arrayList --> List - Do it yourself - Generic Classes
- Generic methods
 
 
- Modul 7User interfaces- UI types in .Net (an introduction) - Console
- Wpf - Windows desktop
- MAUI - Crossplatform desktop
- MVC - server based web site
- Blazor - browser based web solution
 
 
- Modul 8Threads, Tasks and asynchronous code- Implementing multitasking - The Task class
- System delegates Action<> and Func<>
 - Handling concurrency - Lock'ing
- Thread safe collections
 
 
- Modul 9Tuples, indices and ranges- Python anyone? - Tuples
- Deconstructors
- Slicing arrays
 
 
- Modul 10Assemblies and reflection- What is an assembly - Introduction to Reflection - Creating and using attributes 
 
- Modul 11Basic Cryptography- Symmetric encryption - Asymmetric encryption - X509 Certificates 
 
Er du i tvivl?
Det ligger os meget på sinde, at du finder det kursusforløb, der skaber størst værdi for dig og din arbejdsplads. Tag fat i vores kursusrådgivere, de sidder klar til at hjælpe dig!







