Utiliser la méthodologie modèle-vue
Niveau : débutant à intermédiaire
Objectifs : exploiter le paradigme modèle-vue pour concevoir des applications
Prérequis : Premiers pas avec Qt Quick, Présentation de JavaScript, Créer une fenêtre
principale
Dans le domaine des interfaces graphiques, une bonne pratique courante est de séparer
les données (comme une liste de livres pour BiblioApp, y compris le titre, l'auteur, etc.
de chaque livre) de leur présentation (un tableau, une liste, un formulaire…). Qt Quick
encourage cette bonne pratique avec le patron de conception modèle-vue : le modèle
définit les données, la vue les affiche à l'utilisateur. Ainsi, grâce à cette conception,
pour proposer plusieurs manières de visualiser les mêmes données, il suffit de changer
la vue : un tableau des livres, une grille des couvertures, etc.
À cette définition standard s'ajoute aussi bien avec Qt Quick que PyQt la notion de
délégué, qui se charge plus particulièrement de l'affichage d'un élément donné, mais
aussi de son édition. Ce délégué peut être simple (afficher un texte avec Text) ou plus
compliqué (gérer l'édition d'une note avec des étoiles, ce qui n'existe pas de base dans
Qt Quick). Ces trois parties — modèle, vue et délégué — forment le patron de
conception MVD.
Note > Les Qt Quick Controls 2 sont loin d'être aussi avancés que la première
version en ce qui concerne les vues. Les développeurs prévoient de combler ces
lacunes. Voir la Note au début du chapitre Créer une fenêtre principale pour plus
d'informations.
L'itération actuelle de BiblioApp utilise déjà ce patron de conception, avec une vision
très simpliste des choses : le modèle est un tableau JavaScript, la vue exploite
Repeater, qui est la vue la plus basique de Qt Quick.
Figure 16.1 : Organisation du patron de conception modèle-vue-délégué
332
Niveau : débutant à intermédiaire
Objectifs : exploiter le paradigme modèle-vue pour concevoir des applications
Prérequis : Premiers pas avec Qt Quick, Présentation de JavaScript, Créer une fenêtre
principale
Dans le domaine des interfaces graphiques, une bonne pratique courante est de séparer
les données (comme une liste de livres pour BiblioApp, y compris le titre, l'auteur, etc.
de chaque livre) de leur présentation (un tableau, une liste, un formulaire…). Qt Quick
encourage cette bonne pratique avec le patron de conception modèle-vue : le modèle
définit les données, la vue les affiche à l'utilisateur. Ainsi, grâce à cette conception,
pour proposer plusieurs manières de visualiser les mêmes données, il suffit de changer
la vue : un tableau des livres, une grille des couvertures, etc.
À cette définition standard s'ajoute aussi bien avec Qt Quick que PyQt la notion de
délégué, qui se charge plus particulièrement de l'affichage d'un élément donné, mais
aussi de son édition. Ce délégué peut être simple (afficher un texte avec Text) ou plus
compliqué (gérer l'édition d'une note avec des étoiles, ce qui n'existe pas de base dans
Qt Quick). Ces trois parties — modèle, vue et délégué — forment le patron de
conception MVD.
Note > Les Qt Quick Controls 2 sont loin d'être aussi avancés que la première
version en ce qui concerne les vues. Les développeurs prévoient de combler ces
lacunes. Voir la Note au début du chapitre Créer une fenêtre principale pour plus
d'informations.
L'itération actuelle de BiblioApp utilise déjà ce patron de conception, avec une vision
très simpliste des choses : le modèle est un tableau JavaScript, la vue exploite
Repeater, qui est la vue la plus basique de Qt Quick.
Figure 16.1 : Organisation du patron de conception modèle-vue-délégué
332
