Builder: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m Bot: Modifico: de:Erbauer (Entwurfsmuster); modifiche estetiche |
|||
Riga 1:
Nella [[
Il [[design pattern]] Builder, nella programmazione ad oggetti, separa la costruzione di un oggetto complesso dalla sua rappresentazione cosicché il processo di costruzione stesso possa creare diverse rappresentazioni.
Riga 9:
Un builder permette anche di costruire un oggetto passo-passo, cosa che si può verificare quando si fa il parsing di un testo o si ottengono i parametri da un'interfaccia interattiva.
== Struttura di un Builder ==
* '''Builder''': specifica l'interfaccia astratta che crea le parti dell'oggetto Product.
* '''ConcreteBuilder''': costruisce e assembla le parti del prodotto implementando l'interfaccia Builder; definisce e tiene traccia della rappresentazione che crea.
Riga 15:
* '''Product''': rappresenta l'oggetto complesso e include le classi che definiscono le parti che lo compongono, includendo le interfacce per assemblare le parti nel risultato finale.
== Diagramma delle classi ==
[[
== Funzionamento ==
Il Client crea un oggetto Director e lo configura con gli oggetti Builder desiderati. Il Director notifica al Builder se una parte del prodotto deve essere costruita, il Builder riceve le richieste dal Director e aggiunge le parti al prodotto. Il Client riceve il prodotto dal Builder.
Questo consente di variare la rappresentazione interna del prodotto, isolare il codice per la costruzione e la rappresentazione e controllare in modo preciso il processo di costruzione.
== Esempi ==
=== Java ===
<source lang="java">
/** "Prodotto" */
Riga 624:
[[bg:Строител (шаблон)]]
[[de:
[[en:Builder pattern]]
[[es:Builder (patrón de diseño)]]
|