Praktikum Softwareentwicklung 2 SS 2005 Dipl.-Ing. Thomas Kotzmann Dipl.-Ing. Markus Löberbauer Dipl.-Ing. Dr. Herbert Prähofer Institut für Systemsoftware Johannes Kepler Universität Linz Pratikum SWE 2 M. Löberbauer, T. Kotzmann, H. Prähofer 1
Ziele der LVA Arbeiten mit einer umfangreichen Klassenbibliothek Grundprinzipien und Techniken kennen lernen und verstehen selbstständiges Erarbeiten und Anwenden von Techniken Aufbauen auf und Erweitern von Frameworks Design komplexer Anwendungsprogramme Pratikum SWE 2 M. Löberbauer, T. Kotzmann, H. Prähofer 2
Abhaltung der LVA Teile der Java 2 Plattform werden in der LVA in einem Folienvortrag vorgetragen weitere Literatur zum Selbststudium und Nachlesen wird angegeben Anwendung der Techniken in mehreren Programmieraufgaben 1. Multithreading-Applikation 2. Utilities und Input/Ouput 3. GUI-Applikation 4. JavaBeans-Komponente 5. Client-Server-Programm mit Networking und RMI 6. DB-Applikation mit Web-Interface Benotung abgegebene Praktikumsaufgaben (50 %) schriftliche Prüfung (50 %) Pratikum SWE 2 M. Löberbauer, T. Kotzmann, H. Prähofer 3
Kapitel 0. Einführung, Wiederholung Überblick Exceptions Interfaces Innere Klassen Ereignisse 1. Basistechnologien Utilities Multithreading Reflection Collections Input/Output 3. Verteilte Anwendungen Networking Remoting Security 4. Datenbanken und Web- Programmierung JDBC Servlets Webservices WebStart 2. Graphische Oberflächen Swing Internationalisierung JavaBeans Pratikum SWE 2 M. Löberbauer, T. Kotzmann, H. Prähofer 4
Terminplanung Nr 1 2 Termin 07.03.2005 14.03.2005 Ostern Inhalt VL Einführung Multithreading, Utilities Folien 00.Inhalt.pdf 01.Einleitung.pdf 11.Utilities.pdf 12.Multithreading.pdf Aufgaben 1. UE Multithreading-Applikation Abgabe Ostern 3 4 5 6 7 8 04.04.2005 11.04.2005 18.04.2005 25.04.2005 02.05.2005 09.05.2005 Pfingsten Sammlungen Reflection Ein- und Ausgabe Swing Swing Internationalisierung JavaBeans Networking, Security Security Remoting, 13.Sammlungen.pdf 14.Reflection.pdf 15.Ein_und_Ausgabe.pdf 21.Graphische_Oberflaechen_Teil1.pdf 22.Graphische_Oberflaechen_Teil2.pdf 23.Graphische_Oberflaechen_Teil3.pdf 24.Internationaliserung 25.JavaBeans.pdf 31.Networking.pdf 33.Security.pdf 32.Remoting.pdf 2. UE Utilities und Collections + IO 3.UE GUI-Applikation 4. UE JavaBeans-Komponente 1.UE 2.UE 3.UE 9 10 23.05.2005 30.05.2005 Remoting JDBC 41.JDBC.pdf 5.UE Client-Server-Programm 4.UE 11 12 13 06.06.2005 13.06.2005 20.06.2005 Servlets und JSP Diverses Besprechung 42.Servlet.pdf 51.WebServices.pdf 52.WebStart.pdf 6.UE DB-Applikation mit Web Interface 5.UE 6.UE 14 27.06.2005 Test Pratikum SWE 2 M. Löberbauer, T. Kotzmann, H. Prähofer 5
Literatur Java API Dokumentation, http//java.sun.com Java Tutorials, http//java.sun.com/developer/onlinetraining/ C. Horstmann, G. Cornell, Core Java 2, Band 1 Grundlagen und Band 2 Expertenwissen, Markt + Technik, 2003 Programme Download http//www.horstmann.com/corejava.html Guido Krüger, Handbuch der Java-Programmierung, 3. Auflage, HTML- Ausgabe 3.0.1 komplettes Download unter http//www.javabuch.de D. Flanagan, Java in a Nutshell, 4. Auflage, O Reilly, 2003. D. Flanagan, Java Examples in a Nutshell, O Reilly, 2003. Pratikum SWE 2 M. Löberbauer, T. Kotzmann, H. Prähofer 6
Java SDK Java 2 Platform Standard Edition (J2SE) version 1.4.2 (http//java.sun.com/j2se/1.4.2/index.jsp) ausreichend für die LVA Java 2 Platform Standard Edition (J2SE) version 1.5 (http//java.sun.com/j2se/1.5.0/index.jsp) neueste Version Pratikum SWE 2 M. Löberbauer, T. Kotzmann, H. Prähofer 7
Entwicklungsumgebungen Eclipse (http//www.eclipse.org/) sehr gute Entwicklungsumgebung frei erhältlich JBuilder (http//www.borland.com/) professionelle Entwicklungsumgebung von Borland Version Foundation frei erhältlich hat interaktiven GUI-Designer NetBeans (http//www.netbeans.org/) Entwicklungsumgebung von Sun frei erhältlich hat interaktiven GUI-Designer JavaBeans Development Kit (http//java.sun.com/products/javabeans/software/bdk_download.html) Entwicklungswerkzeuge zur JavaBeans-Entwicklung BeanBuilder (https//bean-builder.dev.java.net/) Entwicklungswerkzeug zur JavaBeans-Entwicklung Pratikum SWE 2 M. Löberbauer, T. Kotzmann, H. Prähofer 8
Überblick über die Java-Bibliothek Pratikum SWE 2 M. Löberbauer, T. Kotzmann, H. Prähofer 9
Überblick über die Java-Klassenbibliothek Pratikum SWE 2 M. Löberbauer, T. Kotzmann, H. Prähofer 10
Wichtige Packages der Java-Klassenbibliothek (1) Basisbiliothek Sammlungen, Datum, Uhrzeit und Internationalisierung, einige weiter zentrale Utilities Arbeiten mit Texten in internationalisierten Anwendungen Input/Output Streaming Fundamentale Klassen wie Wrapper für Basisdatentypen, Basisklasse, Laufzeitsystem, Multithreading Zugriff auf Metainformation Einfache User Interfaces und Graphik Komponentenmodell von Java Klassen für Netzwerkapplikationen Remote Method Invocation Security Framework von Java JDBC = Zugriff auf relationale Datenbanken Pratikum SWE 2 M. Löberbauer, T. Kotzmann, H. Prähofer 11
Wichtige Packages der Java-Klassenbibliothek (2) Erweiterte Bibliothek Mächtige, plattformunabhängige Klassenbibliothek für GUI Klassen für Print-Service XML Support Klassen für Audio (sowohl MIDI als auch Sampled-Audio) Erweiterte Klassen für Netzwerkprogrammierung Erweiterte Klassen für RMI-IIOP (Corba) Verschlüsselungstechnik Klassen für Naming-Services Pratikum SWE 2 M. Löberbauer, T. Kotzmann, H. Prähofer 12