JavaRush /Java Blog /Random-IT /Modelli di progettazione in Java [Parte 1]
Ivan Zaitsev
Livello 33
Киев

Modelli di progettazione in Java [Parte 1]

Pubblicato nel gruppo Random-IT
Questo è un breve articolo sui modelli di progettazione in Java. Non ci sarà alcuna implementazione dei pattern, c'è solo un elenco di pattern esistenti in Java e il loro breve contenuto. Sarà utile per coloro che sono già in argomento per ripetizioni e generalizzazioni. O, al contrario, per coloro che si avvicinano ai modelli per la prima volta, per la prima panoramica dell'argomento, prima di approfondire. I design pattern (modelli di progettazione) sono soluzioni pronte all'uso per i problemi di programmazione riscontrati di frequente. Questa non è una classe o una libreria collegabile ad un progetto, è qualcosa di più. I modelli di progettazione adatti al compito vengono implementati in ciascun caso specifico. Va ricordato che un modello del genere, se applicato in modo errato o al problema sbagliato, può causare molti problemi. Tuttavia, un modello applicato correttamente aiuterà a risolvere il problema in modo facile e semplice. Modelli di progettazione in Java [Parte 1] - 1Tipi di modelli :
  • generando
  • strutturale
  • comportamentale
I modelli di creazione forniscono meccanismi di inizializzazione che consentono di creare oggetti in modo conveniente. I modelli strutturali definiscono le relazioni tra classi e oggetti, consentendo loro di lavorare insieme. I modelli comportamentali vengono utilizzati per facilitare le interazioni tra le entità. Generatori :
  • Singleton : limita la creazione di un'istanza di una classe e fornisce l'accesso al suo unico oggetto.
  • Factory : utilizzato quando abbiamo una superclasse con più sottoclassi e in base all'input, dobbiamo restituirne una dalla sottoclasse.
  • Fabbrica astratta : utilizza una super fabbrica per creare una fabbrica, quindi utilizza la fabbrica creata per creare oggetti.
  • Costruttore : utilizzato per creare un oggetto complesso utilizzando oggetti semplici. A poco a poco crea un oggetto più grande da un oggetto piccolo e semplice.
  • Prototipo : aiuta a creare un oggetto duplicato con prestazioni migliori, invece di uno nuovo, viene creato un clone restituito dell'oggetto esistente.
Strutturale :
  • L'adattatore è un convertitore tra due oggetti incompatibili. Utilizzando il modello dell'adattatore, possiamo combinare due interfacce incompatibili.
  • Composito : utilizza una singola classe per rappresentare una struttura ad albero.
  • Proxy : rappresenta la funzionalità di un'altra classe.
  • Peso mosca : invece di creare un gran numero di oggetti simili, gli oggetti vengono riutilizzati.
  • Facade : fornisce un'interfaccia semplice per il client e il client utilizza l'interfaccia per interagire con il sistema.
  • Bridge : rende le classi concrete indipendenti dalle classi di implementazione dell'interfaccia.
  • Decoratore : aggiunge nuove funzionalità a un oggetto esistente senza impegnarsi nella sua struttura.
Comportamentale :
  • Metodo modello : definisce le basi dell'algoritmo e consente ai successori di ridefinire alcuni passaggi dell'algoritmo senza modificarne la struttura nel suo complesso.
  • Mediatore : fornisce una classe mediatore che gestisce tutte le comunicazioni tra classi diverse.
  • Catena di responsabilità : consente di evitare una stretta dipendenza del mittente della richiesta dal destinatario, mentre la richiesta può essere elaborata da più oggetti.
  • Osservatore : consente ad alcuni oggetti di monitorare e reagire agli eventi che si verificano in altri oggetti.
  • Strategia : l'algoritmo della strategia può essere modificato durante l'esecuzione del programma.
  • Comando : l'interfaccia di comando dichiara un metodo per eseguire un'azione specifica.
  • Stato : un oggetto può modificare il proprio comportamento a seconda del suo stato.
  • Visitatore : utilizzato per semplificare le operazioni sui raggruppamenti di oggetti correlati.
  • Interprete : definisce una grammatica linguistica semplice per un dominio problematico.
  • Iteratore : accede in sequenza agli elementi di un oggetto di raccolta senza conoscerne la rappresentazione sottostante.
  • Memento (Custode) - utilizzato per memorizzare lo stato di un oggetto, questo stato può essere ripristinato in seguito.
Durante il corso JavaRush, ti imbatterai in un paio di modelli da questo elenco. Raccomando problemi di pattern: 1522 , 1530 , 1631 , big01 , 2912 , 3107 ... L'uso intelligente dei design pattern porta ad una maggiore affidabilità della manutenzione del codice perché, oltre ad essere una buona soluzione a un problema comune, i design pattern possono essere riconosciuti da altri sviluppatori, il che riduce il tempo in cui si lavora con determinati codici. Modelli di progettazione in Java [Parte 2]
Commenti
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION