Linea guida: Identificazione di Javabean
Questa linea guida descrive come identificare e modellare Javabean relativi ad un'applicazione J2EE.
Relazioni
Descrizione principale

Introduzione

Questa linea guida si focalizza sull'identificazione e la modellazione di Javabean.

Per maggiori informazioni sui Javabean, vedere il Concetto: JavaBean.

Identificazione di Javabean

I JavaBean sono classi Java, compilate in base alle convenzioni del modello di componente Javabean.

I JavaBean possono essere utilizzati nella loro forma semplice, in cui un Javabean mostra proprietà attraverso i relativi get e set senza generare eventi. Per un JavaBean come questo si raccomanda di nominare i get e i set secondo i campi di semplici classi Java. Questo tipo di Javabean viene comunemente utilizzato in Java Server Page, dove trasporta i dati da un modulo a una pagina Web.

Un ulteriore livello di sofisticazione può essere aggiunto se si desidera notificare altre parti sulle modifiche o i tentativi di modifica di una proprietà di Javabean. In questo caso, JavaBean deve essere progettato in modo da produrre eventi che descrivono la modifica della proprietà.

I JavaBean che producono (e gestiscono) eventi sono comuni in framework di interfaccia utente come Swing, dove vengono utilizzati per implementare il pattern strutturale Modello-Vista-Controller. I JavaBean che rappresentano i componenti visivi hanno spesso classi aggiuntive come i personalizzatori di bean, che permettono la modifica di istanze Javabean durante la progettazione

Modellazione di JavaBean

I bean Java sono modellati come classi Java.

Le proprietà dei bean Java non sono esplicitamente modellate, bensì identificate attraverso le convenzioni di denominazione Javabean.

Diagramma UML che mostra le proprietà del Cliente.

Nei diagrammi di progettazione, è utile servirsi di dipendenze che mostrano quale classe genera o gestisce eventi. I listener di evento sono introdotti come interfacce realizzate dalle implementazioni concrete.

Diagramma UML che mostra i listener di evento.