Archive

Articles taggués ‘Code-First’

Coding Dojo sur Entity Framework

Voici un rapide retour sur le coding dojo organisé le 16 juin 2011 à Objet Direct sur le thème « Entity framework code first ».

L’approche code first présentée ici a bien évolué avec la version 4.1, et notamment la partie convention over configuration qui permet de gagner en productivité et en clarté.

Pour changer du format classique des formations en soirée, nous sommes partis d’une base de coding dojo randori kata. Le programme était le suivant :

  • présentation générale d’entity framework
  • présentation du mode code first
  • mise en œuvre du coding dojo avec les règles suivantes
    • 1 machine, 1 projecteur
    • un nombre de participants inférieur à 7 personnes
    • un challenge
    • des périodes de 5 minutes, dans lesquelles un pilote et un copilote avancent sur le challenge
    • à la fin de la période, le copilote devient pilote et un autre participant devient le copilote
  • TDD

Difficultés rencontrées et constat :

  • 4, 5 personnes c’est vraiment bien
  • la période de 5 minutes n’est pas suffisante. 7 minutes c’est mieux

Les plus par rapport à un format plus classique :

  • dynamique et vivant
  • hétérogénéité des participants plus facile à gérer
  • moins de préparation
  • plus ouvert, très enrichissant : les participants peuvent introduire de nouvelles notions
  • dense, informations très condensées, rythme soutenu
  • favorise les échanges
  • objectifs plus facilement atteignables

Entity Framework 4.1

Je profite de ce billet pour diffuser l’annonce de la sortie de Entity Framework 4.1.

Entre autres choses, cette version inclut le mode « code first » que j’avais présenté ici. De fait, Entity Framework supporte maintenant trois approches :

  1. Database First : approche initialement utilisée par EF dans laquelle nous travaillons sur un modèle relationnel pour en déduire les modèles conceptuel et objet.
  2. Model First : approche implémentée dans EF 4 dans laquelle nous travaillons sur un modèle conceptuel. A partir du modèle conceptuel et de templates  personnalisables, les modèles objet et relationnel sont générés.
  3. Code First : on écrit d’abord des bonnes vieilles classes C#, les modèles conceptuel et relationnel sont déduits de classes de mapping, basées sur des expressions Lambdas.

Pour les ingénieurs d’Objet Direct Grenoble, nous aurons l’occasion de revenir sur les fonctionnalités apportées par cette version lors de la présentation technique qui aura lieu fin mai.

Entity Framework Code-First CTP5

La CTP5 de Code-First est disponible. La prochaine version annoncée pour mi 2011 sera la version finale.

J’avais présenté très rapidement Entity Framework dans ce billet en introduisant le mode fluent. La CTP5 embarque certaines fonctionnalités très intéressantes.

Je vous conseille notamment de regarder le support des annotations du namespace DataAnnotations. Ces annotations permettent de spécifier les contraintes du domaine directement dans les classes POCO. Ces contraintes seront exploitées par le modèle relationnel, par le modèle objet via Entity Framework et également par les couches d’IHM supportant ces annotations.

L’annonce de Scott Guthrie.

Categories: .NET Tags: ,