Første
Oversigt
Java Beans - dag 4 serie, Planche nr. 41
Print af Java Beans - dag 4
1 : Java Beans - dag 4
Javabeans intro
Visual Age (VAJ) intro
Øvelse i VAJ
BeanInfo-klasser
En praktisk anvendelse
SU2000
2 : Definitioner
3 : Nøglekoncepter for bønner
Instrospektion
Properties
Kommunikerer med hændelser
Persistens
public metoder
4 : Bønner: Introspektion
Signaturmetode
Navnekonvention
getXX, setXX m.m.
Standard API'er i java.lang.Objekt
BeanInfo-klasse
Navnekonvention
XXXXBeanInfo
Udvider eller begrænser standard API
5 : Bønner: Properties
på oversættertidspunkt
på designtidspunkt
når bønnen sættes ind
6 : Event-kommunikation
Kommunikation via events
Implementere
Listener-metoder
addXXXX-metoder
7 : Persistens
Bønner kan gemmes i ændret tilstand.
Bønner implementere Serializeable
(eller arver egenskaben fra en Superklasse)
8 : Brug af bønner
9 : En simpel bønne (gennemgang)
10 : Bønne-makefile
Lav en Makefile (simple.mak)
nmake file
Create a JAR file with a suitable manifest.
11 : Lav en bønne
Kør make (nmake)
i BDK: Toolbox -> Loadjar
Flyt SimpleBean til arbejdsareal
12 : Visual Age for Java
1. Demo af GUI-eksempel
2. Øvelse - Huskelisteprogram (ToDo)
Papirvejledning
3. Særlige funktioner
Debug
BeanInfo
Workbench vs. Repository
Professionel Edition
Enterprise Edition
Programstafetter
4. SU-projektet
13 : Introduktion til VAJ
Hurtig programmeludvikling (RAD)
Visuel Composition Editor (VCE)
Wizards ("SmartGuides")
Projektstyring
Projekter (Projects)
Pakker (Packages)
Klasser / Interfaces (Class)
Metoder / Variable (Methods / Fields)
14 : Nøglekoncepter
Repository
En database i internt format
Indeholder alt og alle versioner
Workbench
En database i internt format
Indeholder kun en version
Ændringer i workspace
gemmes automatisk i repository
Begge er filer
..IDE\REPOSITORY\IVJ.DAT
..IDE\PROGRAMMER\IDE.ICX
Backup!!!!
15 : Ind og ud af VAJ
Export
Eksporterer til omgivelser
Import
Importerer fra omgivelser
Virker på (versionerede):
Projekter, Pakker, Klasser
Formater
VAJ-intern (repository), jar-filer eller direktory
Vælg
bytecode (class), kildetekst (java), resources eller alt.
16 : VAJ symboler
17 : Workbench-vindue
18 : Workbench-vindue
Projekter
Et eller flere pakker (komplet)
Pakker
Et javaelement
En eller flere klasser
Klasser/Interfaces
Et javaelement
Indeholder metoder og variable
Metoder (Methods)
Variable (Fields)
19 : Visuel Composition Editor
Manipulerer javabønner
Visuelle bønner
Ikke-visuelle bønner
Bønner i VAJ har
Egenskaber (properties)
Hændelser (Events)
Metoder (Methods)
Bønner kan forbindes (connections)
20 : VCE-vindue
21 : Demonstration
22 : Øvelse - "Kapitel 3"
Giv alle synlige tekster dansk indhold
(Men bebehold de engelske navne på klasser, metoder og variable)
23 : VAJ - Forbindelser
Property-to-property
Event-to-method
Event-to-code
Parameter-from-property
Parameter-from-code
Parameter-from-method
source
target
24 : Øvelse - "Kapitel 3 fortsat"
25 : Øvelse - "Kapitel 4"
bruger Event-to-code
Test og versioner
26 : Øvelse - "Kapitel 5"
Hente huskelister
Gemme huskelister
Gør billedet pænt
27 : Visual Age for Java
Debug
BeanInfo-klasser
Workbench vs. Repository
Professionel Edition
Enterprise Edition
Programstafetter
28 : Udvikling af Beans
BeanInfo-klassen
VAJ-demo af tæller-bønne
29 : BeanInfo-klassen
Vælge hvilke egenskaber (properties) bønne-brugere kan se
Tilknytte en ikon til klassen
Angive rette-klasser (customizer-class)
Lade egenskaber være reserveret eksperter
Give mere sigende vejledning til bønne-bruger
30 : "Feature Descriptors"
BeanDescriptor
klassens navn og type, samt evt. customzirs
PropertyDescriptor
klassens properties
IndexedPropeteriesDescriptor
klassens properties, hvis det er arrays
EventSetDesdriptor
klassens hændelser (events)
MethodDescriptor
klassens metoder
ParameterDescriptor
parametrene til klassens metoder
31 : Definer BeanInfo-klasse
1. Giv den navn XXXXBeanInfo
hvis klassens navn er XXXX
2. Implementer BeanInfo interface
Eller udvid f.eks. SimpleBeanInfo
3. Definer eller overskriv BeanInfo-metoderne
Ikke implementerede metoder betyder ingen adgang!
4. Tilknyt evt. en ikon-fil
metode getIcon(int)
5. Angiv klassen og evt. customizer
metoder getBeanDescriptor()
32 : Customizer
Med property editorer
Med customizers
33 : Property Editor
34 : Tilknytning
Direkte i BeanInfo-klassen
setPropertyEditorClass(
)
Via en klassemetode
java.Beans.PropertyEditorManager.registerEditor
parametre typenavn og editorklasse
Opslag med XXXXEditor navn
Hvor XXXX er typenavnet
35 : Customizer
Udvides direkte eller indirekte fra Component-klassen
Dvs. er et visuelt komponent
Implementere java.beans.Customizer interface
Definere en default konstruktør
Tilknyttes via BeanInfo-klassens getBeanDescriptor metode
36 : Persistens
Angiv 'transient' for variable, der IKKE skal gemmes
Implementer (overskriv) metoderne
private void writeObject(java.io.ObjectOutputStream out)
private void readObject(java.io.ObjectInputStream in)
Total kontrol af persistens
37 : Fremtiden?
Java Activation Framework (JAF)
Automatisk start, svarer til MIME
beancontext
Udvidede muligheder for at få oplysninger om JavaBeans-miljøet
Drag and Drop
Mulighed for at trække og slippe ind og ud af javamiljøet
38 : Demo
39 : US2000
Projektansvarlig: SU-styrelsen
Udviklerstab: SU-styrelsen (2), CSC Danmark (10)
Kontraktform: "Time and material"
Produktionsklar: November 1999 - foråret 2000 (løbende)
Projektstart: august 1998
Legacy-server: IBM VSE og CICS, SAG Adabas Natural
Webserver: AIX
Klienter: Browsere med java plugin-support
Brugermodel (GUI):
1. Trælignende menustruktur
2. MDI-lignedne arbejdsareal med arbejdsvinduer
40 : US2000 arkitektur
41 : US2000 "beans"
© 2000 BLA*net - Leif E. Andersen, leander@blanet.dk
Første
Oversigt
Java Beans - dag 4 serie, Planche nr. 41