C# Master Class

Vill du bemästra C# och Visual Studio? Vill du se hur enkelt och effektivt det är att implementera moderna designmönster? Vill du lära dig hur experterna programmerar, och hur de skapar bra APIer? Då är det här kursen för dig!

Under kursen tar vi vid där de klassiska Microsoft-kurserna slutar, och omfattar mer avancerade ämnen med fokus på modern arkitektur och praktisk utveckling. Fokus ligger på ren kod och verkliga situationer. Med de kunskaper du får med dig kommer du kunna producera kvalitativt bättre program på ett effektivt sätt. Kursen består av många praktiska övningar där du får applicera det du lär dig i kursen.

Kursen är uppdaterad med senaste C# version 10 och .NET 6. Även om du inte använder .NET 6 idag, så kommer du att få stor behållning av kursen då de flesta moment i kursen är applicerbara både på .NET 5/6, .NET Core och .NET Framework.

Vad du kommer lära dig

Introduction

  • C# History

  • .NET Standard

 

Roslyn compiler

  • Analyzers

  • Source Generators

 

.NET Core

  • .NET Core overview

 

Being Effective with Visual Studio 2019

  • Advanced Visual Studio features

  • Intelli Code

  • Live Share

 

Lambda and Delegate refresher

  • Delegates

  • Lambda expressions

  • Func and Action

  • Predicate

 

Value Tuples

  • Tuples vs Value Tuples

  • Deconstruction

  • Discard

 

Pattern matching

  • Switch expressions

  • Property patterns

  • Positional patterns

  • Tuple patterns

  • Relational and logical patterns

 

Working with null

  • Null-conditional operator

  • Non-nullable reference types

  • Null-forgiving operator

OO and dynamic

  • Dynamic objects

  • Late binding

 

Classes: outside-in

  • Object Oriented design

  • Command-Query Separation

  • Command Pattern

 

Dependency Inversion

  • The Dependency Inversion Principle

  • Injecting dependencies

  • DI containers

  • .NET Core generic host
     

Higher Order Programming

  • The lambda wrapper pattern

  • Closure semantics, and its uses

  • Function generators

  • Lambda vs local functions

 

Reflective Programming

  • Runtime structure of a program

  • Reflection

  • Creating types

 

Event driven architecture

  • Complexity and boundaries

  • Event aggregator pattern

  • Publish/subscribe

  • MediatR

  • C# 9 Records and immutability

 

Asynchronous programming

  • The Task abstraction

  • The Thread pool

  • Waiting for tasks

  • Continuations

  • Async and await keywords

 

Encoding and Unicode

  • Understanding unicode

  • UTF-8 and UTF-16 encoding

  • Homographs

Målgrupp

Utvecklare i C# med .NET-erfarenhet, som vill få djupare förståelse i språk och verktyg samt uppdateras på senaste utvecklingsmetoder.

Förkunskaper

God kännedom om programmering i C# och .NET. Du bör ha jobbat med .NET i minst 1-2 år. Tidigare kunskaper i Linq och lambdauttryck är starkt rekommenderat. Annars rekommenderar vi vår kurs i Avancerad C# som ger dig en bra grund. 

tore-kvadrat-BW-V2.jpg

Lärare Tore Nestenius

ca pris 20 720 kr 

ONLINE

Kurslängd: 3 dagar, alternativt 6 halvdagar             

Nivå: Master

Språk: Svenska, Engelska                   

Kurskod: T320

Nästa kurstillfälle

17-19 + 24-26/1  2022, 6 halvdagar

REFERENSER

Very good, alot of new stuff and good repetition of old stuff. Even though some concepts are familiar in other languages it feels good to have seen them in C#.

KURSDELTAGARE

I really like the exercises because the main way for me to gain knowledge is through practice. The concepts prestented are relevant and most of them used in the daily work.

KURSDELTAGARE

I think it was great. I really like the approach of showing what happens beneath the surface using sharplab. It gives you a deeper understanding when reasoning about the code I think.

KURSDELTAGARE

Great material and superb instructor. The course delved in to advanced topics in an intuitive way that did not require an unreasonable amount of expertise in the specific language but more of an overall programming know-how.

KURSDELTAGARE