J'ai quelques méthodes qui ressemblent à ceci :
public void do(A a, B b);
public void do(A A, C c);
public void do(D d, A a);
public void do(D d, E e, X x, F f, Optional<A> a);
Et ainsi de suite, il existe une douzaine de méthodes qui font à peu près la même chose mais avec des paramètres différents.
J'ai alors pensé à utiliser un modèle de construction qui me permettrait d'utiliser la fonctionnalité comme ceci :
withA(a).withB(b).withX(x).do();
Cependant, le problème est que l'une des dizaines de méthodes lève une exception. Si j'utilise un modèle de construction, alors do()
devra lancer cette exception et donc tous les clients devront la gérer. À mon avis, cela ressemble à un problème.
Ma question :
- Est-ce un problème ?
- Si c'est le cas, comment l'éviter ?