Devrais-je utiliser les conseils Spring.Net AOP Throws?
-
20-08-2019 - |
Question
Arrière-plan
J'ai un composant qui fournit certains services CRM - spécifiques à la GRC. J'ai un spécifiqueCRMAdapter qui implémente mon interface IGeneralCRM.
Un autre composant, generalCRM, expose les fonctionnalités de CRM via IGeneralCRM et utilise Spring.Net pour injecter le spécificateur CRMAdapter spécifique afin de fournir cette fonctionnalité.
Question
Je veux pouvoir intercepter une exception si le composant SpecificCRM échoue. Devrais-je implémenter les conseils de Spring.Net AOP Throws pour y parvenir ou suis-je en train d’ingénierie du problème parce que tout ce que je dois faire, c’est tout simplement d’attraper l’exception.
Existe-t-il des avantages d'une manière ou d'une autre?
La solution
Cela dépend vraiment de ce que vous avez l'intention de faire avec l'exception. L'AOP est génial, mais conduit à une configuration complexe et est souvent un peu excessif.
AOP se distingue par sa capacité à fournir une logique permettant de gérer les mêmes opérations de cross-cut sur plusieurs objets. Dans votre cas, vous semblez impliquer que vous travaillez sur une seule implémentation, je dirais donc d'essayer simplement de l'attraper pour l'instant.
Si vous pensez pouvoir réutiliser la même logique au sein de plusieurs méthodes et objets, l’AOP est une meilleure solution.
Autres conseils
Si vous utilisez déjà Spring AOP.Net et que vous n'avez pas besoin d'optimiser vos performances, je vous conseille d'utiliser un conseil. tout intégrer bien.
Sinon, attrapez juste l'exception. Vous devriez quand même avoir du code pour les exceptions, que ce soit dans les conseils ou dans les blocs try / catch.