Il pattern corrente è uno dei principi di base per l'assegnazione delle responsabilità nella progettazione a oggetti.
Si supponga che alcuni oggetti debbano essere in grado di trovare un particolare Square, dato il suo nome univoco. Chi deve essere responsabile di conoscere una Square, dato il suo identificatore? Si tratta di una responsabilità di conoscere, ma Expert si applica anche alle responsabilità di fare.
Come per Creator qualunque oggetto potrebbe essere delegato a questo compito,
Anche in questo caso l'oggetto Board è il candidato migliore. L'oggetto Board deve essere al corrente delle informazioni che riguarda gli Square che crea.
Nome | Information Expert |
---|---|
Problema | Qual è un principio base per assegnare responsabilità agli oggetti? |
Soluzione | Assegnare una responsabilità alla classe che possiede le informazioni necessarie per soddisfarla. |
Una responsabilità necessità di informazioni per essere soddisfatta. In questo caso, per poter recuperare e presentare una qualsiasi Square (dato il suo nome), quale oggetto deve conoscere tutti gli oggetti Square. Precedentemente, grazie a Creator è stato stabilito che una Board aggregherà e conterrà gli Square. Pertanto Board possiede le informazioni necessarie per soddisfare questa responsabilità.