Suffit-il que les méthodes se distinguent uniquement par le nom de l'argument (pas le type) ou vaut-il mieux le nommer plus explicitement?
Par exemple T Find<T>(int id)
vs T FindById<T>(int id)
.
Y a-t-il une bonne raison de le nommer plus explicitement (c'est-à-dire d'ajouter ById
) ou de ne garder que le nom de l'argument?
Une des raisons auxquelles je peux penser est lorsque les signatures des méthodes sont identiques mais que leur signification est différente.
FindByFirstName(string name)
et FindByLastName(string name)
ID
objet opaque et pas simplement un int
. De cette manière, vérifiez à la compilation que vous n'utilisez pas d'identifiant pour un int ou vice-versa dans une partie de votre code. Et avec ça vous pouvez avoir find(int value)
et find(ID id)
.
T Find<T>(string name)
ou(int size)
comment envisagez-vous de résoudre les problèmes inévitables?