6
votes

Est-ce une bonne pratique d'utiliser la pluralité pour nommer des collections?

Tout simplement mettre, c'est une bonne idée de nommer des collections et des objets composites à l'aide de pluralité? XXX

Mon souci est que les noms de classe sont assez similaires. D'autre part, pandabearlist révèle la mise en œuvre, mais est plus facilement distinguable.


4 commentaires

Je ne sais pas si c'est une bonne pratique ou non. Mais je n'aime pas utiliser des pluriels. J'utiliserais pandabearcollection .


IMO, si j'ai des méthodes spéciales (telles que renvoyer certains éléments avec des valeurs spécifiques, etc.) ou que je veux une API stricte avec uniquement des méthodes que je permettant à l'utilisateur d'utiliser avec la collection, sinon, je voudrais réutiliser la collecte, la liste ou Set (Java).


Je préfère les noms conceptuels. Quel est le rôle de votre classe extérieure? Pensez à son objectif et choisissez un nom approprié. Pandabeartforest? Pandabearmom? Pandabeadcage? Pandabeargroup? Peut-être que vous n'avez pas besoin de la classe extérieure du tout.


Looke liée à:


3 Réponses :


2
votes

J'éviterais la pluralité.

Si vous ne voulez pas inclure le suffixe Liste , vous pouvez toujours utiliser le suffixe Collection qui est une convention standard et ne révèle pas les détails de la mise en œuvre. Bien sûr, cela dépend de la langue que vous utilisez.

Il y a aussi un travail spécifique C # - autour que j'aime utiliser si la structure n'est pas très complexe. Vous pouvez éviter de créer la classe de collecte, en déclarant toutes les méthodes comme méthodes d'extension du iEnumerable . Donc, dans ce cas, vous pouvez déclarer des méthodes d'extension sur iEnumerable , à condition que votre collection n'a pas d'autres variables privées.


0 commentaires


2
votes

Je préférerais pandabearcollection . Un nom de classe qui est un nom dénombrable acceptable d'accorder mieux avec la métaphore fondamentale de OOP, un "objet".

Par exemple, essayez de décrire la signature des deux fonctions suivantes: xxx

Le premier serait naturellement: " une fonction qui prend deux collections de panda Bears ".

Quel serait le second? " une fonction qui prend deux ours de panda "? Non, ça ne marche pas.


1 commentaires

Bon point, je pensais que la pluralité se lirait mieux, mais elle est confuse lorsque vous parlez de classes et d'objets.