Sfondo:
Ho una comprensione approssimativa, ma di lavoro dei ~ 15 schemi di progettazione. È stata la mia esperienza nell'uso di modelli di progettazione nei miei progetti che le implementazioni risultanti di solito finiscono come alcune varianti di un modello e non sempre si adattano agli esempi di libri di testo canonici.
Caso:
Trovo utile lasciare commenti di tipo tag che suggeriscano un archetipo sottostante, ad esempio, nella seguente descrizione della classe Javadoc, l'etichetta " [Singleton]
" viene utilizzata semplicemente per descrivere che c'è solo uno di questi oggetti usati in un dato momento. Questa classe può o non può essere impostata su "limitare l'istanza di una classe a un oggetto" - Wikipedia .
/**
* [Singleton]
* The manager of all jewels, which are stored here in collections.
*/
public class JewelManager implements IDestroyable
{
Contesto:
Sto lavorando a un team con molti altri sviluppatori, ma ho bisogno di assumere che ci possano essere altri sviluppatori che lavorano al progetto con i quali mai avranno l'opportunità di parlare.
Domanda:
È fuorviante etichettare classi o metodi come un particolare modello di progettazione (Strategia, Mediatore, ecc.) Se si adattano solo vagamente a tale definizione?