Découvrir et démarrer un nouveau site web ASP.NET MVC est assez simple aujourd'hui mais le démarrer correctement avec une architecture pérenne et moderne en est une autre. C'est pourquoi nous avons voulu à travers cette session présenter des solutions concrètes, montrer les erreurs courantes, mettre l'accent sur les points sensibles ou encore vous présenter un ensemble de bonnes pratiques et de recettes autour de la plateforme. ASP.NET MVC est avant toute chose un framework dont les engagements vont bien plus loin que le simple pattern. Nous verrons donc au travers d'exemples détaillés comment structurer les projets, comment travailler et s'organiser avec l'écosystème d'ASP.NET MVC, les points sensibles de l'optimisation et des performances, les tests à tous niveaux, l'ergonomie et la qualité du rendu client ou encore les différents niveaux d'extension.
3. Architecture, bonnes pratiques et
recettes pour la réussite de vos
projets avec ASP .NET MVC
Mardi 7 Février 2012
Rui Carvalho Julien Corioland
Architecte Développeur
ArtOfNet Infinite Square
5. Agenda
Techniques Architecture
Quel est le but de cette Objectifs
session ?
Bonnes pratiques
Quelques rappels sur
ASP.NET MVC Optimisations
Pourquoi choisir ASP .NET Quelques conseils
MVC ?
Les outils incontournables
Tips & Tricks
7. Quel est le but de cette session ?
De quoi va-t-on parler ?
De nos expériences ASP .NET MVC dans « la vraie vie »
De bonnes pratiques et d’architecture
De méthodes et d’outils !
De quoi ne va-t-on pas parler ?
Du fonctionnement interne d’ASP .NET MVC
Des spécificités et détails du Framework MVC
Des toutes dernières news encore en beta
12. Pourquoi choisir ASP.NET MVC?
Technique Projet
Revenir aux Structurant : Un Framework
fondamentaux du web ! « guidé » qui repose sur des
conventions
Contrôle du rendu HTML
Réutilisation des
Testabilité connaissances et/ou de
certaines briques existantes
Extensibilité
Migration « en douceur »
depuis ASP.NET Webforms
Optimisations SEO
14. Productivité et outils
Scaffolding / Template T4
Génération de code
NuGet
Tous les outils et Framework à portée de main !
Mais aussi serveur de binaires
Déploiement :
IIS, IIS Express
Windows Azure
17. Tips & Tricks
Modèle de domaine != Modèle de vue
Vues Typées
Data annotations
Validation: client / server / les deux
Action Filters
Pattern get (lecture) > post (écriture) > redirect
Créez vos propres Helpers
Adaptez les Templates aux besoins
Vues, Partial, Display & Editor Templates
22. Architecture : Bonnes pratiques
Bootstrapper
Isolation des contrôleurs / ViewModels
Séparation UI/Code
Découplage fonctionnel : Areas
Indépendance de l’infrastructure
Indépendance du domaine
Si besoin
Séparation lectures/écritures
Event sourcing
23. Architecture : bonnes pratiques
Presentation
Bootstrapper Infrastructure
Core
Areas
Site Domain
24. Architecture : bonnes pratiques
En Complément
Tests / Non régression
Partage des tâches
Développement orienté « composants »
Possibilités de substituer un ou plusieurs composant(s) en
fonction du besoin
Injection de dépendances
27. Architecture : Données
Polyglot Persistance
Ne plus penser Modèle relationnel par défaut!
Utiliser la persistance adaptée à la nature des
données
Adapter les différents niveaux de cache
Action
Request
Session
Application
32. Conclusion
ASP.NET MVC est une plateforme
performante, structurante et évolutive
Débuter doucement et simplement
Montée en puissance et ROI assuré dans le temps
Conventions et bonnes pratiques
Migration des projets en douceur
Réutilisation de briques logicielles et de compétences
humaines
Beaucoup d’outils pour se faciliter la tâche
HTML 5Totalement supporté par ASP.NET MVC !Mise en place de cacheOutputCacheDonutcachingAsynchronePossibilité de créer des contrôleurs asynchrones pour libérer le pool de threads IIS (facilité en ASP.NET MVC 4 / .NET 4.5)Temps réelMediator, SignalR