C# 12 Advanced Development – eLearning

Take your C# and .NET skills to the next level and explore the features and techniques used in modern application development. The course covers advanced areas of C# and .NET, including asynchronous programming, parallelisation, design patterns, test-driven development, dependency injection, web development and containerisation with Docker.

Order e-learning course here

The course is designed for developers who already have experience with the core features of C# and want to build more advanced, flexible and maintainable applications.

You will explore modern C# language features and gain a deeper understanding of areas such as nullable types, generics, delegates, events and lambda expressions. The course also covers parallel and asynchronous programming, dynamic programming and newer language features.

In addition, you will work with modern .NET application development, including ASP.NET Core, Docker, design patterns, unit testing, test-driven development and dependency injection.

What will you get out of the course?

After completing the course, you will be able to:

  • Use modern C# language features and innovations
  • Work effectively with nullable reference and value types
  • Apply asynchronous programming techniques
  • Work with parallelisation and concurrency
  • Use delegates, events and lambda expressions
  • Work with generics in more advanced scenarios
  • Understand and use dynamic programming in .NET
  • Develop web applications with ASP.NET Core
  • Containerise .NET applications using Docker
  • Apply common software design patterns
  • Use unit testing and test-driven development
  • Apply refactoring techniques
  • Use test doubles, stubs and mocks
  • Understand and apply dependency injection

Who is this course for?

The course is suitable for C# developers who already understand the core features of the language and want to develop more advanced skills in modern C# and .NET development.

Prerequisites

Participants should have at least six months of C# programming experience.

Course content

The course covers:

  • Introduction to .NET
  • Nullable types
  • C# language innovations
  • Delegates, events and lambda expressions
  • Generics
  • Parallelisation and asynchronous methods
  • Dynamic programming
  • Containerising .NET applications
  • .NET web applications with ASP.NET
  • Design patterns
  • Unit testing in .NET
  • Unit testing with xUnit.net
  • Test-driven development
  • Test doubles
  • Dependency injection