Gone Mobile
00:00:00
/
00:48:48

88: Return of Gone Mobile and the State of .NET MAUI

January 5th, 2024

Summary

In this episode, Jon and Allan discuss the state of .NET Maui, the challenges of mobile development, and the benefits of using Blazor WebView in Maui apps. They also talk about the evolution of the Mono runtime, the use of handlers in Maui, and the transition from custom renders to source generators. Overall, they highlight the improvements and advancements in the .NET Maui framework and its potential for creating cross-platform mobile apps. In this episode, Jon and Allan discuss app profiling and performance optimization, highlighting the use of tools like DS router and DS dotnet trace to profile apps and identify performance issues. They emphasize the importance of measuring and optimizing early in the development process to avoid potential problems. The conversation then shifts to the introduction of a new segment called 'Plugin Package or Product,' where they showcase a library called compiled bindings that enhances the XAML experience by providing additional operators and reducing verbosity. They express their interest in incorporating such concepts into the core product. The episode concludes with a call to action for listeners to subscribe, leave reviews, and provide topic suggestions for future episodes.

Takeaways

The .NET Maui framework has made significant progress, with improvements in tooling, performance, and support for modern mobile app development.
Blazor WebView in Maui allows developers to leverage their existing Blazor skills and codebase to build hybrid mobile apps.
The transition from custom renders to handlers in Maui simplifies the development process and improves performance.
Source generators in Maui enable automatic code generation, reducing the need for manual coding and improving productivity. App profiling and performance optimization are crucial for identifying and resolving performance issues in apps.
Tools like DS router and DS dotnet trace can be used to profile apps and gather trace files and speed scope logs for analysis.
Early measurement and optimization can help prevent performance issues and improve the overall user experience.
Compiled bindings is a library that enhances the XAML experience by providing additional operators and reducing verbosity, making it easier to work with XAML.

Plugins, Packages, and Products

This week we're talking about Compiled Bindings: https://github.com/levitali/CompiledBindings which provides {x:Bind} Markup Extension for WPF, MAUI and Xamarin Forms.

Chapters

  • 00:00 Introduction and Changes to the Podcast
  • 06:17 State of .NET Maui
  • 09:24 Dependency Injection in .NET Maui
  • 11:12 Evolution of the Mono Runtime
  • 13:14 Challenges of Mobile Development
  • 19:22 Long-Term Release of .NET Maui
  • 21:20 Blazor Hybrid App
  • 23:43 Benefits of Blazor WebView
  • 25:49 Mixing Blazor and Maui
  • 31:35 Handlers in .NET Maui
  • 35:13 Porting Custom Renders to Handlers
  • 37:03 Source Generators in .NET Maui
  • 38:56 App Profiling and Performance Optimization
  • 41:29 Plugin Package or Product: Compiled Bindings
  • 47:04 Closing Remarks and Call to Action

Episode Comments