Thank you for sending your enquiry! One of our team members will contact you shortly.
Thank you for sending your booking! One of our team members will contact you shortly.
Course Outline
1. Introduction to .NET MAUI and Cross-Platform Development
- .NET MAUI architecture and application lifecycle
- Multi-platform project structure and single-project architecture
- Understanding handlers, controls, layouts, and platform abstractions
- Platform-specific code and conditional compilation
- Dependency management and NuGet packages
- Working with Visual Studio and the .NET CLI
- Building and running applications across Android, iOS, Windows, and macOS
- Exercise: Create and configure a multi-platform .NET MAUI application
2. Advanced MVVM Techniques and Patterns
- Review of MVVM and separation of concerns
- Advanced data binding techniques
- Compiled bindings and binding performance
INotifyPropertyChangedand observable collections- Commands, asynchronous commands, and command parameters
- CommunityToolkit.Mvvm and source generators
- ViewModels, services, and state management
- Navigation and navigation-aware ViewModels
- Handling validation and application state
- Exercise: Build a multi-page MVVM application with validation and asynchronous operations
3. Dependency Injection and Application Architecture
- Built-in .NET dependency injection
- Service lifetimes: transient, scoped, and singleton
- Registering platform-specific and shared services
- Constructor injection and service composition
- Dependency inversion and loose coupling
- Repository and service patterns
- Managing application-wide dependencies
- Configuration and environment-specific services
- Exercise: Refactor an application using dependency injection
4. Deep Dive into Customizing and Extending .NET MAUI
- Understanding handlers and the .NET MAUI rendering architecture
- Custom handlers and platform-specific implementations
- Mapping .NET MAUI controls to native platform controls
- Extending existing controls
- Creating custom controls
- Platform-specific behavior and APIs
- Effects, behaviors, and reusable UI extensions
- When to use handlers, behaviors, effects, or custom controls
- Exercise: Create and integrate a customized cross-platform control
5. Building Reusable Components and Libraries
- Designing reusable UI components
- Creating custom controls and ContentViews
- Component parameterization and data binding
- Creating reusable behaviors and converters
- Organizing shared application functionality
- Creating .NET class libraries for MAUI applications
- Packaging and distributing reusable components
- NuGet package fundamentals
- Exercise: Build a reusable component library
6. Advanced UI/UX, Layouts, and Animations
- Advanced layouts and responsive UI design
- Adaptive interfaces for phones, tablets, and desktops
- Dynamic resources and styling
- Resource dictionaries and theme management
- Light and dark themes
- Visual states and state-driven UI
- Advanced animations and transitions
- Gesture recognition
- Custom drawing and graphics
- Accessibility considerations
- Exercise: Create a responsive and animated MAUI interface
7. Handling Complex Data Scenarios
- Consuming REST APIs from .NET MAUI
- HTTP clients and asynchronous data access
- JSON serialization and deserialization
- Error handling and retry strategies
- Local data persistence
- SQLite and local databases
- Repository patterns for data access
- Offline-first application design
- Synchronization between local and remote data
- Conflict resolution strategies
- Caching and cache invalidation
- Exercise: Implement an offline-capable data-driven application
8. Performance Tuning and Optimization
- Identifying performance bottlenecks
- Startup-time optimization
- Memory management and resource usage
- Reducing unnecessary UI updates
- Optimizing bindings and collection rendering
- Efficient image loading and caching
- Async programming and avoiding UI-thread blocking
- Background processing
- Reducing application size
- Managing memory leaks and object lifetimes
- Exercise: Profile and optimize an intentionally inefficient MAUI application
9. Advanced Debugging and Profiling Techniques
- Debugging cross-platform applications
- Breakpoints, watches, and exception handling
- Diagnosing UI and lifecycle issues
- Logging and structured diagnostics
- .NET diagnostics and profiling tools
- CPU and memory profiling
- Detecting memory leaks
- Investigating slow UI rendering
- Debugging platform-specific issues
- Using device and emulator diagnostics
- Exercise: Diagnose and resolve common performance and runtime problems
10. Architectural Patterns and Best Practices for Large-Scale Applications
- Choosing an appropriate application architecture
- Clean Architecture concepts
- Layered architecture
- Separation of UI, business logic, and data access
- Repository and service abstractions
- SOLID principles in MAUI applications
- Managing application state
- Feature-based project organization
- Modular application design
- Scalability and maintainability considerations
- Exercise: Design the architecture of a production-scale MAUI application
11. Advanced Testing Strategies
- Unit testing ViewModels and services
- Testing business logic independently of the UI
- Mocking dependencies
- Testing asynchronous code
- Testing navigation and application state
- UI and integration testing concepts
- Testable application architecture
- Continuous integration considerations
- Exercise: Create a test suite for a MAUI application
12. Security in .NET MAUI Applications
- Secure application architecture
- Securely storing sensitive information
- Authentication and authorization
- Token management
- API security considerations
- Protecting locally stored data
- Secure communication with backend services
- Handling credentials and secrets
- Common mobile application security risks
- Exercise: Implement secure authentication and credential storage
13. Application Deployment and Distribution
- Building applications for different platforms
- Release versus Debug configurations
- Application signing and certificates
- Android application packaging
- iOS application deployment concepts
- Windows application packaging
- Versioning and release management
- Environment-specific configuration
- Publishing applications to app stores
- CI/CD considerations for MAUI projects
- Exercise: Prepare a MAUI application for production deployment
14. Latest .NET MAUI and Visual Studio Features
- Recent .NET MAUI improvements and changes
- New controls, APIs, and development capabilities
- Improvements to handlers and platform integration
- Visual Studio tooling and productivity features
- Modern .NET development practices
- Evaluating third-party libraries and MAUI Community Toolkit features
- Migration and upgrade considerations
- Maintaining applications across .NET versions
15. Capstone Exercise: Building a Production-Ready .NET MAUI Application
- Define application requirements and architecture
- Design the MVVM structure
- Configure dependency injection
- Implement reusable UI components
- Connect to remote and local data sources
- Add caching and synchronization
- Implement validation and error handling
- Apply performance optimizations
- Add security and authentication
- Test critical application functionality
- Prepare the application for deployment
16. Summary and Next Steps
- Review of advanced .NET MAUI concepts
- Common architectural and performance pitfalls
- Recommended development practices
- Further learning resources
- Planning the next steps toward production-ready MAUI development
- Q&A and discussion of participants' projects
Requirements
- Proficiency in the C# programming language
- A strong grasp of object-oriented programming (OOP) concepts
- Familiarity with the .NET framework
Target Audience
- Developers
14 Hours
Testimonials (5)
The topic in general, the group dynamics,
David Silva Santiago - INSTITUTO MEXICANO DEL PETROLEO
Course - Advanced .NET MAUI
Machine Translated
The course interaction
Marco Aurelio Tellez Quijano - INSTITUTO MEXICANO DEL PETROLEO
Course - Advanced .NET MAUI
Machine Translated
the mastery of the topic by the instructor
Patricia Fernandez Nicolas - INSTITUTO MEXICANO DEL PETROLEO
Course - Advanced .NET MAUI
Machine Translated
As this is a new topic for me, I liked everything, and in fact, I will apply it in a project that I am developing
CARLOS MANUEL CRUZ MALERVA - INSTITUTO MEXICANO DEL PETROLEO
Course - Advanced .NET MAUI
Machine Translated
The exercises, the practical application of the topics
Leonardo Perez Tays - INSTITUTO MEXICANO DEL PETROLEO
Course - Advanced .NET MAUI
Machine Translated