![]() |
Java - Grundstrukturen
Homepage von PS-Trainer - Entwicklung - Java - an PS-Trainer |
|
| Die ersten eigenen Java-Applets: In dieser Trainings-Einheit programmieren sie ihre ersten Java-Applets |
Sie erzeugen jedoch nicht die üblichen statischen "Hallo World" Applets, sondern integrieren die Applets eng in die Webseiten. Das bedeutet dynamische Programmierung, Austausch von Daten zwischen den Elementen User - Webseite - Applet. |
| Dynamische Webseiten: Damit bezeichnet man Webseiten, die Layout und Inhalt - im Gegensatz zu fix programmierten "statischen" Seiten - variabel ändern können. Eine Standardmethode dazu ist der Einsatz von JavaScript mit der Methode document.write(); |
||
|
document.write("Monitor-Breite = "+screen.width); |
|
|
Da HTML-Code zum Glück aus Klartext aufgebaut ist, kann die Übergabe von Parametern an ein Applet dynamisch programmiert werden. Der eigentliche Wert des jeweiligen Parameters wird in JavaScript programmiert - abhängig von Umgebungs-Variablen oder von der Interaktion der User. |
|
|
| Struktur eines Standard-Applets: applet enthält alle für ein Applet benötigten Klassen. awt (Abstract Window Toolkit) enthält hochintegrierte Klassen, z.B. für Fenster, Texte (Schrift, Größe, Farbe...), einfache Grafik, etc... Mit dem * importieren sie alle Klassen eines Pakets. |
Sie benötigen nicht immer alle Standard-Methoden, es schadet jedoch nichts, sie anfänglich auch als leere Methoden mitzuführen. |
| Mit dem tag <param...> übergeben sie Daten von HTML an ein Java-Applet. Dieser Vorgang (Die Auswahl des Applets, die Übergabe der Parameter...) kann mit Hilfe von JavaScript dynamisch programmiert werden. Hier sehen sie, wie die Parameter vom Applet "abgeholt" und verwertet werden: |
||
| HTML: |
|
|
| Java: |
|
|
| Methode getParameter(); übergibt Daten
von HTML (Applet-Aufruf) an ein Applet. Beachten sie die Möglichkeit
erwarteter, jedoch fehlender Parameter sowie von falsch oder fehlerhaft
übergegebenen Daten. Gute Applets unterwerfen übergebene Daten
vor der Verwendung einer "Eingangs-Kontrolle" und setzen notfalls
"default"-Werte ein. Kombinieren sie diese Technik mit der Dynamik von JavaScript: Übergeben sie "programmierte" Daten an ein Applet. |
||
Stellen eine einfache und bewährte Methode dar, dynamische Elemente in eine Webseite einzubauen. Sie verfügen über Objekte (Textfelder, Buttons...), die sowohl von den Usern als auch durch JavaScript bedient (verändert) werden können. |
<form name="testform"> </form> |
|
| Mit diesen scripts reagieren sie auf eine User-Eingabe: In diesem Beispiel wird ein Text (Mail-Adresse) eingegeben, überprüft, und das Resultat als Alarmfenster ausgegeben. Vergessen sie nicht, alle Objekte eines Formulars mit eindeutigen Namen zu versehen - unter diesen können sie die Objekte ansprechen. |
<script type="text/javascript"> <!-- function mysubmit() { } function myaction1() { } function myaction2() { } function myaction3() { } function myaction4() { } //--> </script> |
Aufgaben:
Programmieren sie die hier angeführten Projekte. Richten sie ihre Arbeits-Umgebung dazu ein, erzeugen sie dann möglichst rasch eine Vorversion. Speichern sie jede Version, testen und verbessern sie das Projekt. Während der Erzeugung neuer Versionen sollten sie stets eine zumindest halbwegs herzeigbare Version "in Sicherheit" haben. Was zählt, ist eine im Internet aufrufbare, funktionsfähige Lösung. Vergessen sie nicht, Quellcodes ebenfalls verfügbar zu machen (z.B. wie die source-Links auf den Test-Beispielen dieser Seite). |
|
| Dynamische Webseite | Erzeugen sie eine Webseite, die je nach verwendetem Browser unterschiedliche
Texte zeigt sowie die Farbe eines Objekts (body, div...) ändert. Hinweis: JavaScript-Methoden: navigator.appName, navigator.appVersion, navigator.platform... Demo für die dynamische Änderung von Farben u.a. style-Elementen. |
| Parameter-Übergabe | Geben sie einen Text und eine Zahl von einer Webseite an ein Applet
weiter. Begrenzen sie die Zahl mit 0<zahl<11 und schreiben sie den
Text in das Applet-Fenster. Der Text wird so oft wiederholt (Schleife),
wie die Zahl angibt. Hinweis: Übergeben sie die Zahl als Text (Ziffern) und wandeln sie diesen in eine Zahl um: mynum=Integer.valueOf(mynumtxt).intValue(); |
| Dynamische Parameter-Übergabe | Modifizieren sie das letzte Beispiel wie folgt: + Je nach Monitor-Größe wird ein Applet dynamisch variabler Größe eingefügt. Passen sie die Applet-Größe der Monitor-Größe sinnvoll an. + Als Text verwenden sie Name und Version des verwendeten Browsers (s.o.) + Die Wiederholungs-Zahl passen sie der Monitor-Größe sinnvoll an. Im Endeffekt erhalten sie eine Webseite, auf der ein zum Monitor passendes Applet-Fenster erscheint. Auf dieses wird eine Spalte von Texten (Browser-Name & Version) gezeichnet, die etwa 3/4 der angezeigten Fensterhöhe füllt. |
| User-Interaktion | + Webseite: Erzeugen sie eine Webseite mit einem Formular. Dort wird
ein Text sowie eine Zahl eingegeben. Bringen sie folgende Buttons an:
Zurücksetzen (reset), Löschen (clear), Absenden (submit). + JavaScript: Kontrollieren sie, ob die Länge des Eingabe-Textes ihren Bedingungen entspricht (z.B. 10...30 Zeichen Länge), sowie ob die Eingabe-Zahl im gültigen Bereich liegt (z.B. 1...20). + Zeigen sie als Ergebnis (Feedback) ein Alarm-Fenster an (alert), in welchem der überprüfte Eingabe-Text so oft wiederholt wird, wie es der Eingabe-Zahl entspricht. |
| Ausblick | Die logische Weiterentwicklung ist die Übergabe von User-Daten
an ein Applet und die Reaktion des Applets darauf. So können sie
eine Kommunikations-Schleife in Gang setzen: + User sieht das Applet im Anfangszustand (z.B. eine Grafik). + User reagiert mit Eingabe. + Applet erhält die Daten und reagiert (erzeugt eine neue Grafik). + User sieht das geänderte Applet. |