Non sto chiedendo il punto di vista dell'intervista. Voglio conoscere lo scenario in tempo reale implementato nei progetti come il framework di puntelli ecc.Quali sono le differenze tra il modello di facciata e il modello di fabbrica abstarct?
risposta
Il modello di facciata viene utilizzata quando si vuoi nascondere un'implementazione o si tratta di cambiare l'interfaccia di alcune classi o set di classi. Il costruttore nasconde il processo di costruzione scomposendolo in passi più piccoli.
Il modello di fabbrica astratto viene utilizzato quando si desidera nascondere i dettagli sulla costruzione di istanze.
Fornire un'interfaccia per la creazione di famiglie di oggetti correlati o dipendenti senza specificare le loro classi concrete.
grazie per la vostra risposta. –
@AdalarasanSachithanantham Your Welcome :) –
Sono d'accordo con questa risposta. Contiene motivi semplici e comprensibili per conoscere la differenza tra questi due modelli. –
Non so perché questo è stato votato negativamente. questa è una domanda legittima.
My take - Una facciata è una classe o un gruppo di classi che nascondono l'implementazione/i servizi interni dall'utente.
Una fabbrica astratta incapsula un gruppo di fabbriche che vengono utilizzati per la creazione di oggetti, mentre la facciata può essere utilizzato per fornire l'astrazione a tutti i tipi di operazioni, non solo la creazione
Grazie per la risposta. –
Probabilmente chiuso perché sembra troppo "Qual è la differenza tra (x, y)?" :: dove x, y ∈ Modelli GoF – Barett
Sono due modelli utilizzati per le cose che sono completamente indipendenti.
Con il modello di fabbrica è sufficiente fornire un costruttore di fabbrica comune per molti costruttori diversi per la stessa cosa. Questo può essere utilizzato ogni volta che è necessario fornire un'interfaccia a un insieme di builder che devono essere utilizzati con qualcosa in comune (il prodotto) senza preoccuparsi di cosa si intende costruire o di quale stabilimento si intende utilizzare.
Il modello di facciata viene invece utilizzato per fornire un'interfaccia semplice a molte diverse operazioni che le classi client non dovrebbero vedere.
grazie per la tua risposta. –
Basta cercare un po 'di codice. Ci sono molti esempi online. – Tudor
Sono abbastanza diversi per appartenere a categorie * distinte *: una è strutturale, l'altra creazionale. –