J'ai une interface et deux objets implémentant cette interface, massivement simplifiés;Comparaison de deux objets implémentant la même interface pour l'égalité/équivalence - Aide à la conception
public interface MyInterface {
public int getId();
public int getName();
...
}
public class A implements MyInterface {
...
}
public class B implements MyInterface {
...
}
Nous émigrons d'utiliser une mise en œuvre à l'autre, mais je dois vérifier que les objets de type B qui sont générés sont équivalentes à celles de type A. Plus précisément, je veux dire que pour toutes les méthodes d'interface un objet de type A et type B retournera la même valeur (je vérifie juste mon code pour générer ces objets est correct).
Comment vous y êtes-vous pris? Je recherche de bonnes pratiques de codage et de style ici. J'apprécie que je puisse juste itérer à travers un ensemble de clés tirant sur les deux objets qui devraient être équivalents et ensuite appeler toutes les méthodes et comparer, je pense juste qu'il peut y avoir une façon plus propre et plus extensible et je suis intéressé d'apprendre quelles options il pourrait y avoir.
Serait-il approprié/possible/conseillé d'outrepasser égal ou implémenter comparable?
Merci à l'avance,
Gavin
fantastique, cela me fait sens, je vais écrire le code comme un test et les mises en œuvre hors garde de l'équation. Vous avez raison de dire que ce code ne sera utilisé que pendant la migration. – gav