Durante il mio ultimo progetto ho notato, che è molto conveniente, includere i nomi dei modelli di progettazione nei nomi delle classi. Per esempio:Quando includere un nome di modello di disegno nel nome della classe?
- ContextLazyFactory
- RunOnceMediator
- ThirdPartyMediator
- MyProjectCliFacade
- BinaryGate
Rende il progetto di facile lettura. Ulteriore vantaggio è che non userete i vostri nomi come "RunOnceManager", "ContextDelayedConstruction", "ThirdPartyInterface", ecc. Che potrebbero avere un significato acuto solo per l'autore. D'altra parte, non mi piacerebbe vedere classi come vector_container nell'STL. Come pensi?
La mia vista corrente su questo argomento è: le classi che sono nodi importanti nella gerarchia di classi dovrebbero avere il loro modello di progettazione nel loro nome, per enfatizzare la struttura gerarchica e rendere il progetto molto più facile da leggere.
Downvoters: si prega di fornire un commento per spiegare perché non si è d'accordo con una risposta quando si downvote. –
+1 completamente d'accordo. – eglasius
@Jon in questo caso, penso che sia giusto ipotizzare che i downvoters si sentano forti nel metterli nel nome o nel non metterli affatto, in entrambi i casi non penso che si possa fare molto con queste informazioni (oltre che entrare una lunga discussione a riguardo). – eglasius