Question

Avez-vous utilisé le ORM OpenAccess de Telerik ? Comment se compare-t-il à NHibernate? Quand devrais-je envisager de l'utiliser avec NHibernate?

Était-ce utile?

La solution

Je me demande la même chose moi-même. D'un côté, il y a NH avec son auto libre et open-source, mais avec des options de support limitées. D'autre part, une nouveauté relativement récente dans la boîte à outils bien connue d'un fournisseur d'outils, OA.

OA coûte de l'argent, mais vous obtenez de l'aide. NH est gratuit, mais dans ma brève expérience, on sait que le soutien est limité et qu’il tarde à venir.

Je pense que les deux sont probablement de bons produits. J'ai décidé d'essayer OA car je suis déjà un utilisateur des outils de Telerik. L’OA et son soutien sont quand même payés.

NH utilise des classes simples et des objets sans décoration sur les propriétés de la classe. OA nécessite des décorations (bien générées par l’interface graphique OA Visual Studio).

NH nécessite une "session". dans lequel faire une unité de travail avec la base de données; OA appelle cela le "scope". Les deux utilisent "transaction".

OA intègre l'intégration à Visual Studio et peut mapper de manière ascendante et inverse une base de données. Le mappage direct vous permet de concevoir vos classes, puis de "push". ceux dans la base de données pour la persistance. Le " reverse " est pour vous " modèle de domaine " développeurs qui est ce que je préfère.

L’OA fait définitivement l’objet de mises à jour majeures alors que Telerik joue "rattrapage" depuis sa récente acquisition et sa sortie d'OpenAccess, qui appartenait auparavant à Vanatec (en Allemagne).

En ce qui concerne la "facilité d'utilisation" et " performance / évolutivité " point de vue, je voudrais savoir où chacun se tenait. Je suis sûr que quelqu'un pourrait organiser un test honnête entre les deux et prendre ces décisions.

Une chose que j’aime chez NH, ce sont les modèles disponibles pour générer le code nécessaire, et pas seulement pour le "dumb". les objets métier (qui sont tous générés maintenant par OA), mais pour une DLL et une DLL. Après de nombreuses conversations avec Telerik, j'ai l'impression qu'ils prévoient plus d'options générant du code, de sorte que l'OA est plus utile en sortie de magasin.

J'espère que ça aide! Quelqu'un s'il vous plaît essayez d'obtenir des statistiques sur les problèmes de performances.

Autres conseils

Je ne l'ai pas utilisé, mais un avantage évident pour moi est qu'OpenAccess est pris en charge par Telerik, où nHibernate est pris en charge par la communauté. En fonction de votre entreprise, cela peut être un facteur déterminant si vous êtes prêt à adopter des solutions open source sans garantie de support.

Modifier

Pour mémoire, je suis un grand partisan de nHibernate et de l’open source en général. J'utilise nHibernate depuis six mois et l'utilise pour tous les nouveaux travaux dans notre application Web. Pour ma société actuelle, c'est un bon choix (les startups aiment gratuitement).

Cependant, mon ancien employeur aurait eu beaucoup de difficulté à accepter un composant pris en charge par la communauté comme élément essentiel de son infrastructure. C’est parfaitement raisonnable, car les sites Web de ces sociétés constituent leur unique source de revenus. Voudriez-vous impliquer toute votre entreprise dans un logiciel qui ne comporte aucune responsabilité? Certaines personnes ne voudraient pas prendre ce risque.

Personnellement, j’ai trouvé que la prise en charge de nHibernate était au même niveau et encore meilleure avec certains fournisseurs commerciaux.

Mon but n'est pas de critiquer l'OSS, mais de souligner l'un des avantages de l'utilisation d'un logiciel doté d'un support de base, avec un canal d'assistance complet et doté d'un personnel dédié.

Une raison de plus: Actuellement, OpenAccess présente de meilleures caractéristiques de performance. Si vous avez besoin d’une gestion ORM rapide pour votre projet, ce sera un meilleur choix. Voir tests de performance ORM pour plus de détails.

Je dirais que nHibernate est gratuit et OpenAccess, 399 $. Bien que CodeSmith avec les modèles nHibernate soit compris entre 99 et 399 $ si vous voulez que nHibernate soit facilement automatisé. On dirait que OpenAccess a plus de transparence dans la couche de données et est probablement plus facile à gérer. Toutefois, si vous utilisiez quelque chose comme Spring.Net, nHibernate automatiserait non seulement les données, mais également la couche de services. Bien que cela avec un grain de sel, car nHibernate et Spring.Net sont un autre lot de fichiers de configuration qui doivent être conservés. Je parie que OpenAccess est une interface graphique conviviale. L'un ou l'autre fonctionne, mais il y a beaucoup plus d'informations sur nHibernate.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top