Galileo Computing < openbook >
Galileo Computing - Professionelle Buecher. Auch fuer Einsteiger.
Galileo Computing - Professionelle Buecher. Auch fuer Einsteiger.


Java ist auch eine Insel von Christian Ullenboom
Buch: Java ist auch eine Insel (Galileo Computing)
gp Kapitel 22 Komponenten durch Bohnen
gp 22.1 Grundlagen der Komponententechnik
gp 22.1.1 Brauchen wir überhaupt Komponenten?
gp 22.1.2 Visuelle und nichtvisuelle Komponenten
gp 22.1.3 Andere Komponententechnologien oder: Was uns Microsoft brachte
gp 22.2 Das JavaBeans Development Kit (BDK)
gp 22.2.1 Eine Beispielsitzung im BDK
gp 22.2.2 Verknüpfungen zwischen Komponenten
gp 22.2.3 Beans speichern
gp 22.3 Die kleinste Bohne der Welt
gp 22.4 Jar-Archive für Komponenten
gp 22.5 Worauf JavaBeans basieren
gp 22.6 Eigenschaften
gp 22.6.1 Einfache Eigenschaften
gp 22.6.2 Boolesche Eigenschaften
gp 22.6.3 Indizierte Eigenschaften
gp 22.7 Ereignisse
gp 22.7.1 Multicast und Unicast
gp 22.7.2 Namenskonvention
gp 22.8 Weitere Eigenschaften
gp 22.8.1 Gebundene Eigenschaften
gp 22.8.2 Anwendung von PropertyChange bei AWT-Komponenten
gp 22.8.3 Veto-Eigenschaften. Dagegen!
gp 22.9 Bean-Eigenschaften anpassen
gp 22.9.1 Customizer
gp 22.10 Property-Editoren
gp 22.11 BeanInfo
gp 22.12 Beliebte Fehler


Galileo Computing

22.5 Worauf JavaBeans basierentoptop

Wir haben mit dem BDK erste Bekanntschaft mit Komponenten gemacht und wollen uns nun damit beschäftigen, welche Java-Technologien hinter den Beans stecken und wie wir damit selbst Beans entwickeln können. Wichtige Merkmale von Beans sind:

gp Selbstbeobachtung (Introspection): Eine Klasse lässt sich von außen auslesen. So kann ein spezielles Programm, wie das BDK oder eine visuelle Entwicklungsumgebung, eine Bean analysieren und ihre Eigenschaften abfragen. Auch umgekehrt kann eine Bean herausfinden, ob sie etwa gerade von einem grafischen Entwicklungswerkzeug modelliert wird oder in einer Applikation ohne GUI Verwendung findet.
gp Eigenschaften (Properties): Attribute beschreiben den Zustand des Objekts. In einem Modellierungswerkzeug lassen diese sich ändern. Im BDK standen die Eigenschaften etwa in dem Property-Sheet. Da eine Bean meistens eine grafische Komponente ist, besitzt sie etwa eine Hintergrundfarbe. Diese Informationen können von außen durch bestimmte Methoden abgefragt und verändert werden. Ändern wir hier die Hintergrundfarbe im BDK, zeigt die Bean diese sofort an. Für alle Eigenschaften werden spezielle Zugriffsmethoden definiert; sie werden Property-Design-Pattern genannt.
gp Ereignisse (Events): Wir können die Komponente Ereignisse auslösen lassen, so dass sie Zustandsänderungen und visuelle Interaktionen an andere Beans oder Dienstprogramme weiterleitet. Grundlage für die Ereignisbehandlung ist das Modell von Java 1.1 mit Auslösern und Empfängern.
gp Anpassung (Customization): Der Bean-Entwickler kann die Eigenschaften einer Bean visuell und interaktiv anpassen.
gp Speicherung (Persistenz): Jede Bean kann ihren internen Zustand, also die Eigenschaften, durch Serialisierung speichern und wiederherstellen. So kann ein Builder-Tool die Komponenten laden und benutzen. Ein spezieller Externalisierungsmechanismus erlaubt dem Entwickler die Definition eines eigenen Speicherformats, zum Beispiel als XML-Datei.

Zusätzlich zu den notwendigen Grundpfeilern lässt sich durch Internationalisierung die Entwicklung internationaler Komponenten vereinfachen. Verwendet eine Bean länderspezifische Ausdrücke wie Währungsformate oder Datumsformate, kann der Bean-Entwickler mit länderunabhängigen Bezeichnern arbeiten, die dann in die jeweilige Landessprache übersetzt werden.

Das Komponentenmodell

Das Komponentenmodell für JavaBeans ist eine Sammlung von APIs, die der Entwicklung der Softwarekomponenten dient. Beans können mit dem JDK erstellt werden, eine zusätzliche Bibliothek ist nicht notwendig. Einige neue Entwicklungen wie das Beans-Activation-Framework (JAF) (http://java.sun.com/products/javabeans/glasgow/jaf.html) werden durch ein spezielles javax-Paket abgehandelt, was in diesem Buch allerdings keine Rolle spielt. Mit dem JAF lassen sich beliebige Datentypen erkennen, und auf diese Daten lässt sich mittels einer allgemeinen Technik zugreifen.





Copyright (c) Galileo Press GmbH 2004
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


[Galileo Computing]

Galileo Press GmbH, Gartenstraße 24, 53229 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, info@galileo-press.de