Deep Dive: .NET MAUI

Deep dive into building native, cross-platform desktop and mobile apps in .NET

About This Course

The "Deep Dive into .NET MAUI" course is designed for those with a foundational understanding of .NET MAUI, potentially from completing the "Getting Started with .NET MAUI" course or similar experiences. This advanced course focuses on enhancing your skills and understanding of .NET MAUI, diving into more complex and technical aspects of app development. Throughout this course, you'll explore a range of topics, including advanced UI control customization, efficient memory management, asynchronous programming, and integrating various types of APIs. The curriculum is structured to provide a thorough understanding of each concept, with practical examples and real-world applications. This course also emphasizes the importance of writing maintainable and testable code, with a strong focus on cross-platform services and unit testing. It's an opportunity for developers to deepen their knowledge and expertise in building robust, high-performing applications using .NET MAUI. By the end of the "Deep Dive into .NET MAUI" course, you'll have a comprehensive understanding of advanced techniques and best practices in .NET MAUI app development, positioning you to tackle more complex projects and challenges in your professional work.

Course Curriculum

5h 36m 11 sections
Welcome
00:36 Free preview
What you’ll learn in this course
00:47 Free preview
Who is this course for?
00:41 Free preview
.NET MAUI Architecture Overview & Handlers
01:50
.NET MAUI Source Code
09:59
Architecture breakdown
03:28
CalendarView overview
01:59
Creating the CalendarView
12:48
Creating the iOS CalendarView Handler
22:07
Creating the Android CalendarView Handler
09:32
Creating the MacCatalyst CalendarView Handler
03:18
Creating the Windows CalendarView Handler
04:20
Connecting Handlers in .NET MAUI
09:51
What is Memory Management?
01:30
Managed vs Unmanaged Memory
02:13
Garbage Collection
02:30
Memory Leaks
05:05
Events
12:43
Circular References
03:39
IDisposable
08:02
Anonymous Functions
08:04
How does Async / Await work?
03:06
What does the compiler generate?
06:29
Caveats
01:43
Async / Await in action
17:54
Best practices
07:11
What are REST APIs?
03:03
REST API related libraries
02:06
Implementing Refit
07:11
Calling REST APIs in the ViewModel
12:58
Programmatic Pull-to-Refresh
09:28
Resilience
10:39
What is Local Storage?
01:36
Using IPreferences
05:11
What are Local Databases?
00:48
Creating the LibraryModelDatase
16:41
Making Database Calls in the ViewModel
08:54
What is GraphQL?
02:36
GraphQL in action
06:01
Using Postman
03:22
GraphQL recap
02:01
Using StrawberryShake.MAUI
13:07
Using GraphQL in the ViewModel
13:05
What are Cross Platform Services?
07:56
.NET MAUI Unit Testing Overview
05:52
Adding Unit Test Support to our app
07:57
Writing Our First Unit Test
12:02
Completing our Unit Test Architecture
12:17
Manual Testing Overview
09:25
Conclusion
00:42

Meet Your Instructor

Brandon Minnick

Brandon Minnick

Brandon is a Microsoft MVP and a .NET Developer Advocate at AWS, where he gets to work closely with the developer community to help fellow mobile app and cloud developers make 5-star apps. Brandon has nearly a decade of experience creating iOS and Android apps in C#, previously working at both Xamarin and Microsoft. He is also the lead maintainer of the popular .NET NuGet packages ".NET MAUI Community Toolkit" and “AsyncAwaitBestPractices." Brandon is an avid mobile app developer who loves to code and has contributed to and published countless apps!

View all courses by Brandon Minnick

What's New

Getting Started: Building .NET Applications on AWS
course

Getting Started: Building .NET Applications on AWS

Learn how to build and deploy .NET applications on AWS using CDK, Lambda, DynamoDB, S3, and more.

Learn More
What's new in C# 14
blog

What's new in C# 14

This guide covers every new C# 14 feature, explains its benefits, and provides practical code examples to help you navigate how you can use them.

Learn More
Let's Build It: AI Chatbot with RAG in .NET Using Your Data
course

Let's Build It: AI Chatbot with RAG in .NET Using Your Data

Build a Retrieval-Augmented Generation (RAG) chatbot that can answer questions using your data.

Learn More
From Zero to Hero: SignalR in .NET
course

From Zero to Hero: SignalR in .NET

Enable enterprise-grade real-time communication for your web apps with SignalR.

Learn More
Deep Dive: Solution Architecture
course

Deep Dive: Solution Architecture

Master solution architecture and turn business needs into scalable, maintainable systems.

Learn More
Migrating: ASP.NET Web APIs to ASP.NET Core
course

Migrating: ASP.NET Web APIs to ASP.NET Core

A step-by-step process to migrate ASP.NET Web APIs from .NET Framework to ASP.NET Core.

Learn More
Getting Started: Caching in .NET
course

Getting Started: Caching in .NET

Let's make the hardest thing in programming easy for .NET software engineers.

Learn More
From Zero to Hero: Testing with xUnit in C#
course

From Zero to Hero: Testing with xUnit in C#

Learn how to test any codebase in .NET with the latest version of xUnit, the industry-standard testing library.

Learn More
Create a ChatGPT Console AI Chatbot in C#
blog

Create a ChatGPT Console AI Chatbot in C#

This walkthrough is your hands-on entry point to create a basic C# console application that talks to ChatGPT using the OpenAI API.

Learn More