Next: VisualWorks
Up: Le modèle MVC
Previous: Un peu plus sur
Les problèmes habituellement rencontrés avec l'approche traditionnelle du
développement traditionnel d'applications peuvent être classées en trois catégories [How95]:
- construction de l'interface
- La construction est faite entièrement par l'utilisateur.
Il y a un manque d'assistance.
De plus, il tâtonne jusqu'à trouver la bonne visualisation.
Il manque d'outils de prototypage des vues.
- architecture de l'application
- En général, un seul modèle pilote l'application et les vues.
Il est donc surchargé.
La présence d'adapteurs ne résoud pas ce problème.
- Un tel modèle diffuse ses modifications aux (nombreux) dépendants.
Beaucoup de ces dépendants ne sont pas concernés par telle et telle modification.
Il y a perte d'efficacité et contrôle systématique du paramètre de modification
et donc perte d'efficacité.
- La vue doit connaître des informations spécifiques du modèle
(méthodes de lecture et écriture de l'aspect).
Il y a un manque d'uniformité qui oblige à enrichir inutilement le comportement des méthodes.
- Certaines vues comme les boutons nécessitent obligatoirement des adaptateurs.
- L'ouverture de l'interface est en général une méthode volumineuse et procédurale, souvent redondante.
- Cette ouverture (création de vue) est souvent invoquée dans le modèle, ce qui n'est pas son rôle.
- Le modèle contient ainsi des informations du domaine (ce qu'on modélise)
et de l'application (interface, ...).
- Les objets intéressés par un aspect d'un modèle doivent se connecter comme dépendant du modèle et donc surcharger le protocole change/update.
- Chaque modification du modèle donne lieu à un cas dans la méthode change:.
L'alternative multiple est rarement un code efficace.
- manque de variété et de flexibilité
- Il manque de support d'édtion de valeurs autres que du texte (date, entiers...).
- Il n'y a pas de support de communication entre vues (batterie de boutons, séquence de tables...).
- Il n'y a pas de support pour la gestion d'une barre de menu, habituelle dans la pluspart des interfaces utilisateur natives (Mac, Dos).
- Il n'y a pas de support pour gérer dynamiquement les interfaces (ex: options inaccessibles (grisées)...).
- Il n'y a pas de support pour les applications en multi-fenêtrage.
- Il n'y a pas de support de réutilisation d'interfaces (autre que couper/coller).
- La personnalisation des dialogues est difficile.
- Il manque des outils habituels d'interfaces tels que les champs de saisie, les saisie avec valisation, les boutons menus, ...).
VisualWorks vise à améliorer les points ci-dessus.
Next: VisualWorks
Up: Le modèle MVC
Previous: Un peu plus sur
Pascal Andre
Tue Jun 8 12:20:44 GMT 1999