Il s'agit d'une bibliothèque open source conçue pour faciliter le développement d'applications en utilisant l'architecture MVVM (Modèle-Vue-VueModèle) dans le contexte de .NET MAUI. Le MVVM Community Toolkit offre un ensemble de classes et de fonctionnalités qui simplifient la mise en œuvre du modèle MVVM dans les applications .NET MAUI. Il propose des utilitaires pour la gestion de la liaison de données, la navigation entre les pages, la gestion des dialogues, la validation des données et bien d'autres fonctionnalités essentielles pour un développement efficace. Grâce à cette bibliothèque, il est possible d'accélérer le processus de création d'applications multiplateformes robustes et maintenables dans .NET MAUI en adoptant les bonnes pratiques de l'architecture MVVM.
- **[RelayCommand]** -> permet de générer une commande à partir d'une méthode (les attributs sont pris en compte automatiquement tout comme l'Asynchronisme si la méthode à pour type de retour `Async Task`)
- **[RelayCommand(CanExecute = nameof(Propriété))]** -> Activation/Désactivation des commandes en fonction d'une propriété
- **[NotifyCanExecuteChangedFor(nameof(Commande))]** -> Propriété pouvant subir des changements au sein d'une méthode
Ici encore, il existe d'autres annotations pour gérer par exemple les exceptions liées à l'asynchronisme ou pour annuler des commandes que je n'ai pas eu l'utilité.
Je ne suis pas sûr d'avoir pu exploiter toutes les capacités du toolkit mais j'ai abordé les principales ressources de l'outil. J'ai réussi à obtenir une version semblable à celle que j'ai sur ma branche master.
> *Warning* : Les dernières fonctionnalités développées sur la branche master ne sont pas disponibles sur cette branche.