Dans l'épisode #41 du podcast Stack Overflow Jeff et Joel ont discuté des idéologies GUI qui conduisent à une mauvaise utilisation. Quels toolkits de GUI avez-vous vu qui influencent le plus avantageusement les programmeurs qui les utilisent? Quel niveau de séparation (entre l'interface utilisateur et la mise en œuvre) trouvez-vous le plus efficace pour la testabilité et la convivialité?Boîte à outils GUI le plus naturel
Répondre
Quels toolkits GUI avez-vous vu qui influencent le plus avantageusement les programmeurs qui les utilisent?
Le mien, développé sur la base de l'expérience avec l'informatique et les besoins spécifiques de l'industrie pour laquelle je développe. En bref, il n'y a pas de formule magique mais seulement des outils avec lesquels vous devez utiliser votre expérience et votre jugement. Ce qui fonctionne pour mon logiciel de CAO/FAO, ne va pas fonctionner pour le site Web d'un développeur Web, ni pour un développeur de logiciels de bureau, et ainsi de suite.
Quel niveau de séparation (entre interface utilisateur et implémentation) trouvez-vous le plus efficace pour la testabilité et la convivialité?
Pour les applications traditionnelles qui s'exécutent sur le bureau d'un ordinateur, je recommande les variantes du Passive View. La classe responsable de la création et de la gestion du formulaire est un shell léger qui transmet les événements à l'objet d'interface utilisateur. L'UI_Object interagit avec le formulaire via une interface. À terme, l'objet UI implémente une interface UI_View et s'enregistre auprès d'un View Controller situé plus bas dans la hiérarchie d'objets. L'objet UI_Object exécute alors l'objet en implémentant le motif de commande qui modifie le modèle. L'objet de commande peut interagir avec les différentes vues via les interfaces exposées par le contrôle View. Cela permet de ripper les classes de formulaire et de les remplacer par des classes de raccord qui implémentent les interfaces de formulaire. Les classes stub sont utilisées pour les tests automatisés, en particulier pour les tests d'intégration.
Les interfaces définissent précisément l'interaction entre le formulaire, l'objet UI, les commandes et les vues. Ils peuvent être conçus pour être relativement indépendants de la langue, de sorte qu'ils peuvent faciliter le portage entre plates-formes.
Je ne suis pas aussi compétent avec la programmation pour le Web, mais il existe des modèles connexes qui accomplissent la même chose.
Je dois également avertir que Passive View peut être trop lourd. Vous ne voudrez peut-être pas l'utiliser pour une boîte de dialogue de configuration simple (comme la boîte de dialogue qui configure les paramètres du port série). Ce jugement demande si la facilité de maintenance et de codage vaut le temps de test supplémentaire. Si une boîte de dialogue n'est appelée que par une seule commande pour modifier certains paramètres de configuration, il est préférable de la définir dans la commande elle-même.
- 1. Boîte à outils IIS WCAT
- 2. Passage de MFC à QT ou WTL (ou autre boîte à outils GUI) recommandé pour le développement de Windows CE?
- 3. Outils de profilage pour GUI
- 4. Boîte à outils Dojo: fermer la boîte de dialogue
- 5. Contrôles de boîte à outils VS2008 Répétés
- 6. C# Inclure le contrôle dérivé dans la boîte à outils
- 7. ASP.NET MVC: Quelle boîte à outils JavaScript fonctionne le mieux?
- 8. Boîte à outils graphique de Google Talk?
- 9. ajouter AxWEBBrowser dans ma boîte à outils
- 10. Outils mysql gui 64 bits rpm
- 11. Outils Unix sous GUI pour Windows
- 12. Quelle boîte à outils GUI est la meilleure pour un LAF natif pour Python sous Windows et Linux?
- 13. Comment ajouter plusieurs contrôles de boîte à outils en XAML
- 14. Boîte à outils de contrôle ASP.NET MVC et Ajax
- 15. Comment désactiver la boîte à outils dans VisualStudio 2008
- 16. Vous essayez d'adapter la boîte à outils Dojo "Highlight Container"
- 17. Que contient votre boîte à outils de développement JavaScript?
- 18. Aucune DomainDataSource dans la boîte à outils dans Visual Studio
- 19. Comment étendre la boîte à outils de contrôle Ajax
- 20. Boîte à outils ASP.NET Problème de double clic en accordéon
- 21. Boîte à outils de développement Facebook pour .net - setinfo
- 22. Est-il possible de désactiver la boîte à outils et le concepteur Visual Studio 2008?
- 23. bonne combinaison d'une boîte à outils/bibliothèque C++, db de plate-forme croisée (pas nécessairement sql)
- 24. Masquer le volet Propriétés/Boîte à outils en dehors de l'affichage des ressources?
- 25. La boîte à outils de contrôle ASP.NET AJAX ValidatorCallout ne fonctionne pas sur le modèle d'édition
- 26. Les contrôles de la boîte à outils AJAX affichant des erreurs dans le concepteur
- 27. Comment supprimer le contrôle problématique de la boîte à outils visual studio 2008?
- 28. Boîte à outils WPF, modifier le format de la date dans DatePicker
- 29. créant un flux RSS à partir asp.net boîte à outils à l'aide datasource rss
- 30. Automatisation du langage naturel?