What this book covers
Part 1, Exploring .NET MAUI
Chapter 1, Getting Started with .NET MAUI, provides an introductory overview of cross-platform technologies. As part of this introduction, .NET MAUI is compared with other cross-platform technologies to highlight its unique features. Additionally, this chapter guides you through the process of setting up a .NET MAUI development environment. By reading this chapter, you’ll gain a broad understanding of cross-platform technologies that will assist you in selecting the most suitable option for your project.
Chapter 2, Building Our First .NET MAUI App, walks you through the process of setting up a new project, which will serve as the foundation for the development work presented in this book. Additionally, this chapter expounds upon the .NET MAUI project structure and comprehensively discusses the application lifecycle. By the end of this chapter, you’ll have mastered how to create a new project and acquired basic debugging skills pertinent to a .NET MAUI application.
Chapter 3, User Interface Design with XAML, introduces you to the concept of user interface design using XAML. This chapter explores the basic understanding of XAML along with .NET MAUI’s UI elements. Upon completion of this chapter, you’ll have gained the necessary proficiency to create your own user interface design.
Chapter 4, Exploring MVVM and Data Binding, introduces key topics in .NET MAUI app development, including the MVVM pattern and data binding. We will start with theory and then apply what we learn to the development work of the password management app. You will learn how to use data binding and apply it to the MVVM pattern.
Chapter 5, Navigation using .NET MAUI Shell and NavigationPage, explores the essential aspects of navigation in .NET MAUI app development. This includes topics such as the utilization of .NET MAUI Shell and NavigationPage
for efficient navigation. The chapter begins with a theoretical overview and then transitions into practical use cases, specifically focusing on the development of a password management app. By the end of this chapter, you will have a robust understanding of how to effectively implement navigation within your .NET MAUI apps.
Chapter 6, Software Design with Dependency Injection, delves into design principles, specifically providing an overview of SOLID design principles. Subsequently, the chapter elucidates the use of dependency injection in .NET MAUI and incorporates this technique into our app development process. By the end of this chapter, you will not only have a broad understanding of SOLID design principles, but also a detailed understanding of dependency injection.
Chapter 7, Using Platform-Specific Features, covers sophisticated topics related to the utilization of platform-specific functionalities in .NET MAUI development. This chapter will guide you through the fundamental steps involved in implementing platform-specific code. This knowledge will be further cemented as you delve deeper into developing platform-specific features in our application.
Part 2, Implementing .NET MAUI Blazor
Chapter 8, Introducing Blazor Hybrid App Development, introduces the concept of developing applications using .NET MAUI Blazor. This chapter guides you through creating a new Blazor Hybrid app and provides instructions on converting a .NET MAUI XAML app to a .NET MAUI Blazor Hybrid app.
The knowledge you’ll acquire includes understanding the basic environment setup and Razor syntax that’s fundamental to .NET MAUI Blazor application development.
Chapter 9, Understanding Blazor Routing and Layout, focuses on the layout and routing aspects of a Blazor Hybrid app. This chapter provides insight into the setup process of the router and usage of layout components. By the end of this chapter, you’ll understand how to design a layout and set up routing for your application.
Chapter 10, Implementing Razor Components, delves into the concept of Razor components and the usage of data binding within them. This chapter will teach you how to create a Razor class library and guide you in refining existing Razor code to craft reusable Razor components. By the end of this chapter, you’ll have a practical understanding of how to effectively implement Razor components.
Part 3, Testing and Deployment
Chapter 11, Developing Unit Tests, introduces you to the unit test framework available for .NET MAUI. This chapter will teach you how to utilize xUnit and bUnit to develop effective unit test cases. Additionally, you will learn how to construct unit test cases for .NET classes as well as how to create unit test cases specifically for Razor components using bUnit.
Chapter 12, Deploying and Publishing in App Stores, discusses the procedure for preparing application packages for app stores and setting up a CI/CD workflow using GitHub Actions. This chapter provides insight into creating packages suitable for Google Play, Apple Store, and the Microsoft Store. Additionally, you will learn how to automate the package creation process using GitHub Actions, streamlining your publication efforts.