J'ai regardé quelques cadres pour un très grand projet comme plus de 200 pages avec plus de 50 tables etc., à développer en Silverlight. Existe-t-il des meilleures pratiques ou une suggestion de cadre pour développer une application aussi vaste? Espérons que ce sera plusieurs technologies qui composent l'application finale et intéressés à connaître vos opinions à ce sujet. Un de mes amis m'a indiqué Caliburn comme l'un des meilleurs cadres. Est-ce que quelqu'un l'a utilisé pour développer une telle application?calibrer un cadre Silverlight viable pour le grand développement?
Répondre
Nous avons un projet légèrement plus petit (environ 30 pages) construit sur Caliburn. Comme je le vois, la seule complication avec plus de pages serait la consommation de mémoire, puisque le calibrage dans son comportement prêt-à-l'emploi initialise toutes les pages (écrans/viewmodels) et les garde en mémoire. Nous avons créé notre façon personnalisée de gérer ce type de "conducteurs d'écran paresseux" qui crée viewmodel seulement quand sa page est demandée et il y a aussi un moyen de la fermer (et ainsi laisser le garbage collector s'en débarrasser). Alors maintenant, peu importe s'il y avait 30 ou 300 pages dans la demande. Il consomme autant de mémoire que nécessaire pour les pages ouvertes (en supposant qu'un utilisateur n'aura pas besoin des 300 pages ouvertes à la fois). Btw: Je prévois de passer à Caliburn.Micro, donc je vais devoir le déplacer vers ce framework. D'autre part, Caliburn.Micro est beaucoup plus propre (et je l'ai aussi bien mieux compris que lors de la création de la solution pour le vieux Caiburn) donc je m'attends à ce que ce soit une bonne idée de refactoriser la solution.
Nous utilisons Caliburn sur tous nos projets (mais c'est trompeur parce que nous avons développé ceux-ci). :-)
Le nombre de tables n'aura aucun impact, car Caliburn n'a rien à voir avec l'accès aux données. Le nombre de "pages" n'a pas nécessairement d'impact. L'utilisation du terme «page» m'amène à penser que vous avez en tête une métaphore de l'interface utilisateur de navigation (style navigateur). Si c'est le cas, vous pouvez toujours bénéficier de Calbiurn lors de l'utilisation de cette approche, mais ce n'est pas la "voie Caliburn" naturelle. En résumé, la taille de l'application et la complexité n'ont pas d'importance. En résumé, la taille de l'application et la complexité importent peu. Afin d'avoir une meilleure idée de la raison pour laquelle Caliburn serait utile, je recommande de lire la série de messages de Rob Eisenberg, beginning here.
Notez que nous encourageons de nouveaux projets à utiliser Caliburn Micro, au lieu de l'original Caliburn. Une ressource supplémentaire pour aider pourrait être video from MIX 10 de Rob, nous discute comment rouler votre propre cadre (indépendant de Caliburn).
- 1. Un bon cadre pour le développement Web Ruby
- 2. Est-ce que Silverlight 2.0 est une plateforme de développement de jeu viable?
- 3. Comment étalonner un moniteur Mac pour le développement de l'iPhone
- 4. Produits combinant IDE cadre et visuel pour le développement web?
- 5. Cadre CSS pour le développement de l'interface utilisateur
- 6. Recommandation de cadre pour le développement d'applications iPhone/iPad distribuées
- 7. Silverlight: Rendre ListBox assez grand pour contenir tout le contenu?
- 8. ffmpeg (libavcodec) avertissement: cadre codé trop grand
- 9. Comment puis-je calibrer l'accéléromètre?
- 10. Cadre de développement d'applications mobiles
- 11. Démarrer avec le développement de silverlight/facebook
- 12. Problèmes de compatibilité avec le développement Silverlight
- 13. besoin silverlight 3 développement
- 14. Horde est-il un cadre acceptable pour le développement de groupware PHP?
- 15. Cadre de développement de jeux Android Rokon
- 16. Cadre de développement web Python pour utilisateur python 3.1
- 17. Cadre de développement de jeux Flash/iPhone
- 18. Cadre pour un site
- 19. Cadre de développement Web Java MVC?
- 20. Silverlight performance avec un grand nombre d'objets Organigramme
- 21. calibrer selon la date de naissance donnée
- 22. Grand objet dans le projet Silverlight/ASP.NET/WCF?
- 23. Réflexions sur l'abandon d'un cadre propriétaire pour un plus grand projet Open Source
- 24. Télécharger un grand fichier à Sharepoint dans une application Silverlight
- 25. Meilleure approche pour le cadre d'authentification générique
- 26. Silverlight - Prism, Unity et le cadre d'extensibilité géré,
- 27. Quel est le forum/forum le plus grand et le plus fréquenté pour le développement de l'iphone?
- 28. Cadre/outils pour le développement rapide de niche site de réseautage social?
- 29. Cadre de navigation imbriqué dans Silverlight
- 30. Un cadre EventBus pour Android
Avez-vous regardé @ PRISM/MEF pour votre solution? Pensez-vous aussi que vous avez besoin d'utiliser vos 'conducteurs d'écran paresseux' dans caliburn.micro ou est-il fixé en micro? – Nair
Nous utilisons le prisme et l'unité dans le projet Caliburn. En ce moment j'ai presque fini avec un autre, beaucoup plus petit, projet basé sur Caliburn.Micro avec MEF + Unity. Je n'utilise plus PRISM car les fonctionnalités principales (comme je le vois) ne sont plus nécessaires. Le chargement paresseux des modules applicatifs ne s'est pas avéré être une bonne solution (les utilisateurs doivent attendre quand ils ne s'y attendent pas) et les régions de prisme sont remplacées par les contextes de vue de Caliburn.Micro. – gius
Si vous ajoutez des pages/écrans à leur parent/conducteur (shell, etc.), ils sont chargés dans la mémoire. Le problème est s'il y a beaucoup de ces pages. Mais ce n'est pas la principale préoccupation de CB/C.M. C.M ne résout pas cela non plus alors je vais devoir le porter aussi. – gius