J'ai une question sur l'endroit où documenter la logique dans javadocs. Par exemple, j'ai la signature de la méthode suivante dans une interface:Documenter la logique dans javadoc
public int getTotalAssociationsAsParent(Long id, Long type);
La méthode renvoie les associations où l'ID donné est le parent et l'association est de type « type ». ID est requis, mais si le type transmis est NULL, alors je retournerai TOUTES les associations où l'ID est le parent.
Ma question est où devrait-on documenter ce type de logique? J'hésite à le mettre dans le javadoc de l'interface car cela contraint toutes les classes d'implémentation à adhérer à cette logique. Peut-être que dans le futur, j'aurai une classe Impl qui lance une exception IllegalArgumentException si le type est NULL.
Cependant, si je le place dans un non-javadoc dans la classe Impl, alors les consommateurs de cette méthode ne connaîtront pas le comportement de la méthode avec un type NULL.
Merci pour le conseil (tout le monde). Je pense que ce que je dois faire est de mettre cela dans le javadoc de l'interface et de définir ce que cette méthode devrait faire. S'il arrive que j'ai besoin d'une méthode qui retourne toutes les associations, je crée simplement: public int getTotalAssociationsAsParent (Long id); Il convient de noter que ce n'est même pas une exigence, donc je devrais suivre le principe YAGNI ici. – sma