Quiconque de trouver de nommage des classes et des méthodes de l'une des parties les plus difficiles dans la programmation?

Donc je suis en train de travailler sur cette classe qui est censé demander de l'aide de la documentation à partir d'un fournisseur par le biais d'un service web. J'essaie de le nommer DocumentRetriever, VendorDocRequester, DocGetter, mais ils n'ont tout simplement pas l'air bon. J'ai fini la navigation à travers dictionary.com pendant une demi-heure à essayer de trouver un mot adéquat.

De commencer la programmation avec de mauvais noms, c'est comme avoir un très mauvais jour de cheveux le matin, le reste de la journée se passe en descente à partir de là. Feel me?

  • Pourquoi voulez-vous une classe, une fois que vous avez clairement besoin seulement d'une fonction? Assurez-vous que vous découvrez steve-yegge.blogspot.com/2006/03/... pour le verbe comme nom de classe de problème.
  • Ou, aller de l'avant & refactoriser lorsque vous avez enfin savoir ce qu'il doit être appelé.
  • Si les noms sont un problème pour vous, ne pas faire de la programmation orientée objet. Je veux dire, ne pas l'utiliser largement. Si vous êtes d'écrire un bout de code qui récupère un document et le processus, ne vous forcez pas à séparer la récupération et le traitement de deux classes, car le plus cool C# les gars le faire. Vous pouvez même écrire à la fois la récupération et le traitement dans une méthode, et juste ajouter un petit commentaire au-dessus de chacun d'eux.
  • De quoi êtes-vous de nommage?: méthode: utiliser des verbes, comme get, set, enregistrer, etc. classes et variables: utilisation des noms, comme document, l'utilisateur, le contexte, etc. interfaces: utilisez les adjectifs, comme imprimable, clonable, itératif, etc. Après la lecture de ce thread, j'aime bien Spolsky de suggestion pour les classes et les variables (il utilise des noms) et TravisO de suggestion pour les méthodes (il utilise des verbes). Aussi ne pas rendre les objets qui se terminent par " er " .
  • "Il y a deux problèmes difficiles dans l'informatique: l'invalidation du cache, des conventions de nommage, et silencieux de dépassement".
  • La version que j'ai entendu il y a 2 problèmes difficiles en informatique: nommage, et décalage par 1 erreur."
  • J'ai entendu dire que l'un de trop. La formulation ci-dessus, j'ai entendu de mon père, et je l'aime, que c'est un peu plus nuancée.
  • Voir, le deuxième point est auto-référentielle de la phrase, subtilement ce qui implique qu'il est à seulement 1 problème difficile. Par le processus d'élimination, c'est à gauche avec de nommage.
  • En fait, je l'ai entendu comme "tout-en-un", pas de "compenser-en-un". Dans ce cas, on pourrait faire valoir que le problème difficile qui est à gauche est en fait l'invalidation du cache. De toute façon, il semble que l'original a une certaine nuance que je n'avais pas vu avant, donc merci pour ça.
  • Et projets. Surtout dans le monde de la SOIE, de nommage des projets est peut-être même le plus dur de tous.