Reflection makes programming feel like magic, even more than it already does. It allows developers to gain access to programming capabilities, that compile time safety might not allow. Reflection is used everywhere, and it is the glue that brings some of the most advanced features in .NET together to enable us to build APIs, web applications, mobile apps, desktop apps, and so much more. Knowing how to use reflection is one thing, but very few developers fully understand it and use such a powerful tool responsibly. In this course, Microsoft Principal Software Engineering Manager Nick Consentino will teach you how to use reflection in your codebases correctly to build incredible software.
Welcome (01:47)
What will you learn in this course? (02:29)
Who is the course for and prerequisites (02:24)
Teaching style (02:07)
Static, Dynamic, Strong, and Weak (04:21)
Where does type information go? (03:30)
What Is Reflection? (06:06)
Example Use Cases (04:04)
Looking Up Types (08:04)
Filtering Type Information (12:03)
Assembly Scanning (10:50)
Example Application (15:48)
Get members of type (14:54)
BindingFlags (09:51)
Properties & Fields: Get and Set (16:46)
Calling Methods (09:46)
Constructor Info (09:26)
GetMember & InvokeMember (08:50)
Example Application (15:05)
What is an attribute (06:58)
Restrict to certain constructs (05:50)
Finding Attributes on Types (09:58)
Example Application (10:39)
Recap & Introduction (03:15)
Activator Create Instance (09:47)
Example Application (15:20)
Checking For Generics (09:59)
Using Generics From Reflection (07:57)
Make Generic Instances (04:58)
Type Discovery (07:38)
Invoking Members (15:01)
Construction (15:48)
Unsafe Accessors (10:52)
Unsafe Accessor Performance (13:37)
Code Generation (08:28)
Conclusion (03:46)
Course Info
Lifetime access
Add to Cart
Nick Cosentino is a Principal Software Engineering Manager at Microsoft and a .NET content creator. He manages the teams responsible for deploying the hundreds of services supporting the Microsoft365 suite of products to serve users across the planet. Nick brings his unique experiences to the Big Tech world having worked at a startup that scaled from a handful of employees to hundreds before it went public.
Nick runs a software engineering and dotnet-focused blog as well as a YouTube channel called Dev Leader. While he enjoys solving complex problems with software solutions, Nick is passionate about reducing barriers for people to get started on their software engineering journey.
More courses by Nick Cosentino© 2023 Dometrain. All rights reserved.