Advanced Topics in C# (Udemy.com)

A discussion of the more complicated aspects of the C# language

Created by: Dmitri Nesteruk

Produced in 2021

icon
What you will learn

  • Apply sophisticated C# solutions to problems
  • Explore different programming styles and approaches

icon
Quality Score

Content Quality
/
Video Quality
/
Qualified Instructor
/
Course Pace
/
Course Depth & Coverage
/

Overall Score : 96 / 100

icon
Course Description

This course presents a collection of interesting/unusual case studies where C# is used to solve a particular problem.
This course is 100%practical, and demonstrates mainly the practical applications of C#in building solutions to common problems.
The main themes covered in this course are:
Numerics the specifics of how to work with numeric types in .
NET, with a focus on SIMDdata types and operations.
Reflection how to operate reflection mechanisms to investigate assemblies and types, how to create types and invoke their members. Also a look at the practical use of reflection for working with attributes.
Memory Management a discussion of latest C#features for high performance computation, such as the passing of value types by reference, ref structs and Span.
Extension Methods a seemingly simple mechanism has plenty of advanced uses.
In addition, this course comes with a section dedicated to assorted topics that also showcase advanced uses of C#.
These topics include:
Exploiting IDisposable shows how you can abuse the IDisposable/using mechanism in order to dynamically define operations as pairs of start/end calls. Useful for things like simple performance measurement.
Continuation PassingStyle demonstrates how you can define complex algorithms in terms of sequentially invoked methods with customized return types indicating the result of the operation.
Local Inversion ofControl shows that sometimes inversion of control happens at a local scale. Here we use extension methods to invert control on a bunch of different data types, providing useful functionality.
Beyond the Maybe Monad even though C# introduced the ?. operator in order to chain null checks together, the classic monad implementation, based on extension methods, is still relevant, as it can also handle other scenarios.
Mnemonics not so much a C#language feature but rather an interesting way of defining huge sets of similar code templates that can be expanded quickly to the code constructs you need the most.
Course Pre-RequisitesGood understanding ofC#Understanding of object-oriented programming(OOP)Experience writing real-world C# applicationsCourse Organization100% hands-onDemonstrated either in Visual Studio or using the Kinetica rendering engineDemos are single .
CSfilesHeavy use of IDEfeaturesAd-hoc use of 3rd-party packagesEnjoy!
Who this course is for:
Experienced C# developersC#/.
NET Architects

icon
Instructor Details

Dmitri Nesteruk

Dmitri is a quant, developer, book author and course author. His interests lie in software development and integration practices in the areas of computation, quantitative finance and algorithmic trading. His technological interests include C# and C++ programming as well high-performance computing using technologies such as CUDA and FPGAs. He has been a C# MVP since 2009.

icon
More courses by Dmitri Nesteruk

Design Patterns in C# and .NET

$11.99

Design Patterns in Java

$11.99

Learn Parallel Programming with C# and .NET

$11.99

Design Patterns in Modern C++

$11.99

The Rust Programming Language

$11.99

Mastering LINQ with C# and .NET

$11.99

icon
More c# courses

C# For Beginners: Learn C# Programming From Scratch

$11.99

Language-Integrated Query  ( C# ) (LINQ)

$11.99

C# Memory Tricks: Learn How To Master The Garbage Collector

$11.99

C# - Complete A to Z C# Masterclass: Hints + Coding Tips

$11.99

Let's Code: C# Programming Exercises for Beginners

$11.99

C# Tutorial - Fundamentals for Beginners

$11.99

icon
Reviews

4.8

9 total reviews

5 star 4 star 3 star 2 star 1 star
% Complete
% Complete
% Complete
% Complete
% Complete

By Moddassir Zaman on 12/20/2020

its really good, exploring some under the hood feature

By Pedro Igor on 12/20/2020

Great! Great!

By Airton Gomes de Lima on 12/13/2020

The best instructor on Udemy!

By Rejish on 12/13/2020

dmitiry nesteruk is a brilliant teacher. I love all of his course.

By Mark Van Den Beemt on 12/13/2020

This course is once again a superb course by Dmitry Nesteruk.
Dmitry is definitely one of the most knowledgeable and experienced developers on udemy and has quickly become my favourite instructor.
His explanations are clear, concise and in depth. And because of his nice timbre and speaking tempo, hes pleasant to listen to and easy to follow.
I can highly recommend this course!

By D C on 11/5/2020

I have subscribed to a number of Dmitri's courses.
The content of this course is reasonably good, but more topics need to be added to this course (for example, memory mapped files, and sharing data between application domains to name two), and as Dmitri says, this course will expand with new materials as and when.

By Jarbas Carvalho on 10/20/2020

Excellent course!

By Christopher Pollaro on 10/13/2020

Exactly what I was looking for. I have few other courses by Dmitri, and he knows his stuff and is very straight to the point, so you get a lot of information in a short amount of time.

By Francesco Gerace on 10/4/2020

Great course! Very clear :)