C# 12 Advanced Development - virtual



Kursarrangør: Glasspaper AS
Sted: Nettkurs / Nettstudie
Hele landet
Type:Nettkurs og nettstudie
Studie / yrkesutdanning
Undervisningstid: kl 09:00 - 16:00
Varighet: 4 days
Pris: 25.500
Neste kurs: 10.12.2024 | Vis alle kursdatoer

We provide virtual course about C# 12 Advanced Development. Once you´ve mastered the core features of C# as a programming language, you´re ready to take the next step. The .NET platform offers an incredibly rich and diverse set of APIs that cover all aspects of contemporary development.

Course description:
This course takes a detailed look at the areas of C# and .NET that have particular resonance to developers today, including asynchrony, creating decoupled and adaptable systems, test-driven development, web development, and containerization using Docker.

What you will learn:
• C# language innovations
• Nullable types
• Asynchronous programming techniques
• Parallelization and concurrency
• .NET Core and ASP.NET Core features
• Containerization using Docker
• Dynamic programming
• Dependency injection
• Design patterns
• Test-driven development

Course outline:
Module 1 - Introduction to .NET:
• Overview of .NET
• Using Visual Studio with .NET
• Understanding top-level statements

Module 2 - Nullable Types:
• Nullable reference types
• Nullable value types
• Null coalescing operators

Module 3 - C# Language Innovations - part 1:
• Tuples
• Pattern matching
• Additional pattern matching techniques
• Record types

Module 4 - C# Language Innovations - part 2:
• Ranges and indices
• Disposing objects via using declarations
• Default methods in interfaces
• Additional new features in the latest versions of C#

Module 5 - Delegates, Events, and Lambda Expressions:
• Using delegates effectively
• Lambda expressions
• Standard delegate types
• Events

Module 6 - Generics in Depth:
• Generics essentials
• A closer look at generics
• Generic structs, delegates, interfaces
• Generic methods
• Contravariance and covariance

Module 7 - Parallelization and Asynchronous Methods:
• Parallelization
• Async methods
• Async streams

Module 8 - Dynamic Programming:
• Using the dynamic keyword
• Dynamic Language Runtime (DLR)

Module 9 - Containerizing .NET Applications:
• Publishing .NET applications
• Overview of containerization and Docker
• Understanding Docker images
• A closer look at images and containers
• How to Containerize a .NET application

Module 10 - NET Web Applications:
• Getting Started with ASP.NET
• Creating a minimal ASP.NET web app
• Containerizing an ASP.NET web app
• Using VS support for containerization

Module 11 - Design Patterns:
• Overview of design patterns
• Pattern classification
• Creational patterns
• Structural patterns
• Behavioural patterns

Module 12 - Introduction to Unit Testing in .NET:
• Setting the scene
• TDD using Test Explorer
• Additional techniques

Module 13 - Unit Testing with xUnit.net:
• Getting started with xUnit.net
• A closer look at xUnit.net

Module 14 - Test-Driven Development:
• Effective test-driven development
• Refactoring techniques
• Types of test

Module 15 - Test Doubles:
• Making code testable
• Overview of test doubles
• Using stubs; Using mocks

Module 16 - Dependency Injection:
• DI concepts
• DI frameworks
• Using DI in ASP.NET
• DI examples

Instructor: Andy Olsen

Andy is a freelance consultant and instructor based in the UK, working mostly in the City of London and Oxford. Andy has been working with .NET since the Beta 1 days and has extensive experience in many facets of .NET development including WCF, WPF, WF, ASP.NET MVC Web development, and mobile applications. Andy has designed and written many Microsoft Official Curriculum courses in the last decade, and has been engaged as author and technical reviewer with Apress on some of their biggest selling books.

Target audience:
Anyone who wants course about C# 12 Advanced Development

Prerequisites:
• At least 6 months C# programming experience

Language:
• The course is given in english