Une nouvelle interface dans la bêta 2 facilite les tests unitaires des applications.
Ce dossier fait suite à l'article mis en ligne la semaine dernière : Entity Framework, le retour.
Une nouvelle interface dans la bêta 2 facilite les tests unitaires des applications.
Ce dossier fait suite à l'article mis en ligne la semaine dernière : Entity Framework, le retour.
Lerman, qui a travaillé en étroite collaboration avec l’équipe de Flasko, a probablement passé plus de temps à utiliser EF4 que la majorité des développeurs externes à Microsoft. Une nouvelle interface dans la bêta 2 facilite les tests unitaires des applications. « Pour moi, il s’agit d’une exploration considérable. Par nature, je ne suis pas un développeur agile », explique Lerman. « Mais le fait d’avoir ces possibilités encouragera plus de développeurs à réaliser plus de développement agile, à penser à leur architecture et à réfléchir à la séparation des différentes questions. »
La nouvelle mouture de EF fera-t-elle taire les critiques de la communauté ALT.NET et des partisans de NHibernate ? « Je dirais que la liste de fonctionnalités de Entity Framework 4 tient mieux la comparaison avec NHibernate », déclare Jennings. « Entity Framework 4 est, sans aucun doute, plus facile d’abord pour les néophytes en matière de mappage objet/relationnel. »
Même si c’est plus facile, cela reste très éloigné de NHibernate, disent les critiques. « Il a fallu attendre la dernière version pour avoir quelque chose qui approche la prise en charge de POCO, mais ce n’est pas aussi abouti que l’équivalent NHibernate », raconte Chad Myers, un consultant .NET qui a codéveloppé Fluent NHibernate. Au lieu d’écrire des fichiers .HBM.XML, Fluent NHibernate permet aux développeurs d’écrire du mappage en C#.
« Par exemple, vous n’avez pas un contrôle aussi affiné sur les stratégies d’extraction et Entity Framework peut, au final, charger trop d’entités à partir de la base de données », indique Myers. « La prise en charge des proxy, tout du moins dans la bêta, a un comportement étrange si vous ne marquez pas vos propriétés comme virtuelles. Nhibernate échoue rapidement et vous explique l’origine du problème. »
Myers soutient également que EF reste centré sur XML. « NHibernate a un document XML, voire parfois un fragment de document XML par entité. Selon le mode de comptage, Entity Framework a trois ou quatre documents de mappage XML par entité. »
D’après Lerman, l’option de code uniquement permet aux développeurs de contourner cet aspect. Toutefois, Myers affirme que l’option de mappage de code uniquement est dépourvue de bon nombre de fonctions clé présentes dans le projet compagnon Fluent NHibernate pour Nhibernate.
Stephen Bohlen, organisateur du groupe ALT.NET de New York explique que EF4 apporte lentement, mais sûrement des réponses à ses insuffisances par rapport à d’autres outils ORM plus aboutis. « Entity Framework 4 reste quelque peu limité dans sa capacité à s’améliorer, ce du fait de certaines décisions de conception initiales qui ont abouti à la version 1 », déclare Bohlen.
« En suivant ses pratiques historiques, Microsoft déteste introduire des changements majeurs dans des versions suivantes de ses logiciels, pour le meilleur ou pour le pire », poursuit-il. « Malgré cela, Entity Framework 4 accomplit un travail honorable pour remédier aux problèmes des autres dans la communauté ORM, notamment à certaines insuffisances de la version 1. Entity Framework 4 évolue et commence à devenir un choix raisonnable en tant qu’outil ORM pour les personnes devant rester dans les limites d’un outil ORM commercial, bien que dans ce cadre, Entity Framework 4 reste à la traîne en termes de fonctionnalités et de facilité d’utilisation. »
Lerman affirme qu’une grande partie des critiques peuvent être fondées mais, pour la vaste majorité des développeurs néophytes en matière d’utilisation du mappage ORM et de modélisation, nombre de ces problèmes seront discutables. « Je pense qu’il y en aura assez dans cette version pour beaucoup de ces développeurs, mais d’autres seront d’avis que ce n’est pas assez », indique-t-il. « Elle faitquelque chose que la communauté ALT.NET attendait depuis longtemps de la part de Microsoft, à savoir intéresser le développeur type et l’encourager à utiliser plus de pratiques agiles et à réaliser des tests unitaires. »
Dans le contexte actuel, l'expérience client est un levier clé de réussite. Pour rester compétitives, les entreprises doivent adopter des stratégies CX audacieuses, en s'appuyant sur le cloud, le digital et l'IA. Alors quelles stratégies mettre en place pour garder une longueur d’avance ?