Podcast
Questions and Answers
Perché il design pattern Adapter permette a certe classi di interagire?
Perché il design pattern Adapter permette a certe classi di interagire?
- Rende note le istanze di classi presenti
- Passa le chiamate tra classi implementate in linguaggi diversi
- Tiene traccia dei nomi delle classi disponibili
- Elimina l'incompatibilità tra le interfacce (correct)
Quale sarà la soluzione per il design pattern Object Adapter?
Quale sarà la soluzione per il design pattern Object Adapter?
- Nessuna istanza
- Solo una istanza per il ruolo Adapter
- Una istanza per ciascun ruolo Adapter.Adaptee, Target
- Una istanza per ciascun ruolo Adapter e Adaptee (correct)
Il design pattern Adapter può essere usato per:
Il design pattern Adapter può essere usato per:
- Decidere quale oggetto istanziare
- La riduzione dell'accoppiamento tra classi (correct)
- Controllare il verificarsi di condizioni prima di chiamare metodi
- La gestione di un object pool
Il design pattern Adapter serve a:
Il design pattern Adapter serve a:
Per il design pattern Adapter, il ruolo Adapter
Per il design pattern Adapter, il ruolo Adapter
Il design pattern Adapter a due vie:
Il design pattern Adapter a due vie:
Il design pattern Adapter traduce:
Il design pattern Adapter traduce:
Quale fra questi è un vantaggio che ottengo utilizzando il pattern Adapter?
Quale fra questi è un vantaggio che ottengo utilizzando il pattern Adapter?
Nella soluzione suggerita del design pattern Class Adapter:
Nella soluzione suggerita del design pattern Class Adapter:
Nella soluzione suggerita del design pattern Class Adapter:
Nella soluzione suggerita del design pattern Class Adapter:
La soluzione suggerita dal design pattern Class Adapter:
La soluzione suggerita dal design pattern Class Adapter:
Il design pattern Bridge permette:
Il design pattern Bridge permette:
Per una certa implementazione, il design pattern Bridge:
Per una certa implementazione, il design pattern Bridge:
Il design pattern Bridge permette alla classe client di:
Il design pattern Bridge permette alla classe client di:
Per il design pattern Bridge, Implementor:
Per il design pattern Bridge, Implementor:
Per il design pattern Bridge, la classe Abstraction:
Per il design pattern Bridge, la classe Abstraction:
In un codice che utilizza il pattern Bridge vengono creati 3 ConcreteImplementor e 4 Refined Abstraction. Se non utilizzassi il pattern, e volessi mantenere tutte le possibili combinazioni, quante classi dovrei creare?
In un codice che utilizza il pattern Bridge vengono creati 3 ConcreteImplementor e 4 Refined Abstraction. Se non utilizzassi il pattern, e volessi mantenere tutte le possibili combinazioni, quante classi dovrei creare?
Flashcards are hidden until you start studying
Study Notes
Design Pattern: Adapter
- Scopo: Il design pattern Adapter consente a classi con interfacce incompatibili di interagire tra loro.
- Risolve: L'incompatibilità tra le interfacce tramite un adattatore che converte l'interfaccia di una classe in un'altra.
- Varianti:
- Object Adapter: Utilizza un'istanza di classe per adattare l'interfaccia.
- Class Adapter: Utilizza l'ereditarietà per adattare l'interfaccia.
Design Pattern: Bridge
- Scopo: Il design pattern Bridge decouples un'astrazione dalla sua implementazione.
- Risolve: La necessità di poter modificare l'implementazione di un'astrazione senza dover modificare l'astrazione stessa.
- Elementi:
- Abstraction: Definisce l'interfaccia dell'astrazione.
- Implementor: Definisce l'interfaccia dell'implementazione.
- Refined Abstraction: Estensioni dell'astrazione.
- Concrete Implementor: Estensioni dell'implementazione.
Domande e Risposte:
-
D1: Il design pattern Adapter permette a certe classi di interagire perché:
- Risposta: (B) Elimina l'incompatibilità tra le interfacce.
-
D2: La soluzione per il design pattern Object Adapter avrà:
- Risposta: (A) Una istanza per ciascun ruolo Adapter, Adaptee, Target.
-
D3: Il design pattern Adapter può essere usato per:
- Risposta: (c) La riduzione dell'accoppiamento tra classi.
-
D4: Il design pattern Adapter serve a:
- Risposta: (A) Convertire una interfaccia di una classe in un'altra.
-
D5: Per il design pattern Adapter, il ruolo Adapter:
- Risposta: (B) È una classe.
-
D6: Il design pattern Adapter a due vie:
- Risposta: (c) Fornisce una indirettezza in più rispetto all' Adapter (versione Object).
-
D7: Il design pattern Adapter traduce:
- Risposta: (a) Invocazioni, variando nome metodi, tipi parametri etc.
-
D8: Quale fra questi è un vantaggio che ottengo utilizzando il pattern Adapter:
- Risposta: (B) Poter cambiare delle interfacce senza dover modificare il client.
-
D9: Nella soluzione suggerita del design pattern Class Adapter:
- Risposta: (D) Istanzia un Adaptee all'interno dell'Adapter.
-
D10: Nella soluzione suggerita del design pattern Class Adapter:
- Risposta: (C) L'Adapter eredita l'Adaptee.
-
D11: La soluzione suggerita dal design pattern Class Adapter:
- Risposta: (d) Cambia una classe incompatibile modificandone i metodi.
-
D12: Il design pattern Bridge permette:
- Risposta: (D) Alle classi client di distinguere fra varie astrazioni.
-
D13: Per una certa implementazione, il design pattern Bridge:
- Risposta: (B) Richiede di implementare metodi con lo stesso nome su classi diverse.
-
D14: Il design pattern Bridge permette alla classe client di:
- Risposta: (D) Tenere riferimenti a oggetti che sono sottotipi di Implementor.
-
D15: Per il design pattern Bridge, Implementor:
- Risposta: (A) È un'interfaccia.
-
D16: Per il design pattern Bridge, la classe Abstraction:
- Risposta: (C) Tiene il riferimento di una istanza.
-
D17: In un codice che utilizza il pattern Bridge vengono creati 3 ConcreteImplementor e 4 Refined Abstraction. Se non utilizzassi il pattern, e volessi mantenere tutte le possibili combinazioni, quante classi dovrei creare?
- Risposta: (B) 12.
-
D18: Un negozio vende una collezione di blocchi. Questi possono essere di metallo o di legno, dipinti, graffiati o patinati. Talvolta possono addirittura essere radioattivi o magnetizzati. Quale design pattern sarebbe adatto per risolvere questo problema?
- Risposta: Il design pattern Bridge potrebbe essere adatto per risolvere questo problema. Si potrebbe utilizzare un'interfaccia Abstraction per definire le caratteristiche generali dei blocchi (materiale, finitura) e differenti implementazioni ConcreteImplementor per definire proprietà specifiche (radioattività, magnetismo).
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.