Java™ Standard
The main conference (Tuesday, May 13 till Thursday, May 15) offers various sessions - choose your individual session programme.
S1 Layout und Panel-Bau in Swing: Einfach, schnell, präzise, einheitlich Karsten Lentzsch (JGoodies)In dieser Session wird ein Layout-System vorgestellt, das gute Gestaltung einfach macht und schlechte erschwert.
Dazu werden Schwächen bisheriger Layout-Manager gezeigt und wie man sie abstellen kann. Dann wird ein neuer Layout-Manager vorgestellt, wie man ihn steuert, was er erleichtert und was er erreicht. Level 2 = Kenntnisse vorausgesetzt
S2 Erste Hilfe für Swing-Oberflächen Karsten Lentzsch (JGoodies)In dieser Session wird erklärt, worauf es bei der Gestaltung von Swing-Oberflächen ankommt. Es werden wenige aber wichtige Verbote, Gebote und Ratschläge gegeben. Das Ziel ist, besser, schneller und sicherer gestalten zu können. Level 1 = Für alle Teilnehmer
S3 Testgetriebene Entwicklung von Swing-Applikationen Johannes Link (andrena objects ag)GUI-Entwicklung - insbesondere mit Swing - gilt als klassische Kontraindikation für testgetriebene Entwicklung. Der Vortrag beleuchtet, in wieweit es sich hierbei um ein Vorurteil handelt. Dazu wird an einem Beispiel demonstriert, welche Aspekte einer grafischen
Benutzerschnittstelle durch Test-First-Programmierung erfasst werden können und welche nicht. Die Zuhörer sollten die Grundlagen von JUnit, Swing und die Idee der testgetriebenen Entwicklung kennen. Level 3 = Für Experten
S4 Einführung in LDAP für Java-Entwickler Stefan Zörner (IBM e-business Innovation Center)LDAP ist ein standardisiertes Protokoll zum Zugriff auf Verzeichnisdienste wie Active Directory oder Sun ONE Directory Server. Nach einer kurzen Einführung in Verzeichnisse und LDAP wird gezeigt, wie aus Java via JNDI auf LDAP-fähige Produkte zugegriffen werden kann, um Informationen abzulegen und effizient nachzufragen. Ein besonders praxisrelevantes Thema ist die Authentisierung mit LDAP. Level 1 = Für alle Teilnehmer
S5 Einführung in JUnit: Effektive Tests erstellen Frank Westphal (IT-Berater), Johannes Link (andrena objects ag)Softwareentwicklung macht mehr Spaß, wenn wir unseren Code auf Knopfdruck testen können. Obwohl sich JUnit wachsender Beliebtheit erfreut, ist das Schreiben guter Tests ein kleines Geheimnis geblieben. Ausgehend von einer JUnit-Einführung sehen wir uns in
dieser Session einige Beispiele an, wie Probleme beim Testen entstehen, wie wir sie umgehen und geben Tipps
zum Einsatz von JUnit. Level 2 = Kenntnisse vorausgesetzt
S6 Testgetriebene Entwicklung oder wie Software änderbar bleibt Frank Westphal (IT-Berater)Software ist leicht änderbar. Zu leicht, wie sich häufig herausstellt. Eine Hürde besteht deshalb darin, Software so zu entwickeln, dass sie tut was sie soll.
Eine andere Hürde ist, einmal entwickelte Software auch problemlos weiterzuentwickeln. Diese Session gibt eine Einführung in die Testgetriebene Entwicklung. Sie lernen Techniken kennen,
durch die Sie Ihre Software "soft" halten können. Level 2 = Kenntnisse vorausgesetzt
S7 JUnit für Fortgeschrittene Arno Haase (Arno Haase Consulting)Dass automatisierte Modultests mit JUnit sowohl die Produktivität steigern als auch Spaß machen, hat sich inzwischen allgemein herumgesprochen. Aber wie testet man Datenbankzugriffe,
Netzwerkkommunikation, überhaupt I/O oder EJBs, ohne dass der Aufwand explodiert oder das Testen sehr kompliziert wird? Diese Session erklärt praxisbezogen das Testen kniffligerer Programmteile.
Level 2 = Kenntnisse vorausgesetzt
S8 Testisolation durch Mock-Objekte Johannes Link (andrena objects ag), Frank Westphal (IT-Berater)Für das Testen ist es wichtig, für jede Komponente lokale und unabhängige Tests zu erstellen. Ein Weg, um dem Ziel unabhängiger Tests näher zu kommen, führt über Dummy-, Stub- und Mock-Objekte. Dabei handelt es sich um "Objektattrappen", welche für die Dauer eines Tests die echten Objekte ersetzen. Der Vortrag beleuchtet Techniken und Nachteile der Verwendung solcher Attrappen. Teilnehmer sollten mit den Grundlagen von JUnit vertraut sein. Level 2 = Kenntnisse vorausgesetzt
S9 Code-Generierung in Java, Teil 1 Markus Völter (voelter - ingenieurbüro für softwaretechnologie)Einen wichtigen Teil modellgetriebener Softwareentwicklung stellt die
Generierung von Quellcode, üblicherweise aus Modellen, dar. Teil 1 dieser Doppel-Session erläutert, wann und wo Code-Generierung sinnvoll eingesetzt werden kann und wie man generierten und nicht-generierten
Code integriert. Außerdem wird auf die Template-basierte Codegenerierung eingegangen. Level 2 = Kenntnisse vorausgesetzt
S10 Code-Generierung in Java, Teil 2 Markus Völter (voelter - ingenieurbüro für softwaretechnologie)Als Fortsetzung des 1. Teils geht Teil 2 dieser Doppel-Session auf weitere Methoden der Code-Generierung ein, darunter Aspekt-Weaver,
Attribut-Orientierte Programmierung, Frame-Prozessoren und API-basierte
Tools. Wie schon im ersten Teil wird dabei besonders auf für Java geeignete Tools eingegangen. Level 3 = Für Experten
S11 Rule Engines in Java - Produkte und Standards Werner Eberling (Mathema Software GmbH)Die Komplexität einer Anwendung besteht heutzutage in den sich ständig verändernden Business-Anforderungen. Diese finden ihren Weg in den Code und können im nachhinein nur schwer verändert werden. Rule Engines bieten die Möglichkeit, Abläufe nicht rein programmatisch, sondern deklarativ über Regelwerke zu steuern. Hierdurch wird eine spätere Anpassung der Abläufe durch den Anwender ermöglicht. Level 1 = Für alle Teilnehmer
S12 Night School: Java Data Objects in der Praxis Andreas Holubek, Robert Munsky (Signsoft)Mit der Entwicklung der JDO-Spezifikation wurde ein Standard geschaffen, der den Datenzugriff (JDBC, SQL, ...) vor dem Entwickler verbirgt und damit deutlich mehr Komfort zur Verfügung stellt. Die Session zeigt einen tieferen Einblick in die Möglichkeiten und lässt Raum für Fragen und Antworten Rund um das Thema JDO. Ein Ausblick rundet den Themenkomplex ab. Level 2 = Kenntnisse vorausgesetzt
S13 JDBC 3.0 - Erweiterungen am Beispiel Oracle 9i Rudolf Jansen (Freiberufler)Die Session stellt einige der Erweiterungen in JDBC 3.0 vor (z.B. Update-Batching, Transaction Savepoints, ...). Am Beispiel der aktuellen Oracle 9i Rel.2-Datenbank werden die neuen Techniken anhand von Sourcecode-Beispielen erläutert sowie Empfehlungen zum Einsatz der Features in konkreten Projekten gegeben. Grundkenntnisse in JDBC werden vorausgesetzt. Level 2 = Kenntnisse vorausgesetzt
S14 SQLJ - Eine Alternative zu JDBC !? Rudolf Jansen (Freiberufler)Mit SQLJ existiert eine Alternative zu JDBC, die nach dem Precompilerprinzip arbeitet. Am Beispiel der aktuellen Oracle-Datenbank zeigt dieser Vortrag, dass bei Einsatz von SQLJ durch zusätzliche Syntax- und Semantikchecks Programmierfehler früher erkannt werden als in JDBC-Anwendungen und der Sourcecode übersichtlicher und damit besser wartbar wird. Grundkenntnisse in JDBC werden vorausgesetzt. Level 2 = Kenntnisse vorausgesetzt
S15 Vom Umgang mit dem OO-Dilemma Michael Wiedeking (MATHEMA Software GmbH)Die Objektorientierung ist unbestritten das einflussreichste Paradigma des letzten Jahrzehnts. Obwohl schon über zwanzig Jahre alt, hat es erst in den letzten Jahren Sprachen wie Java, C#, Ruby oder Python sowie die UML hervorgebracht und sich so erfolgreich in den Entwickleralltag integriert. Dennoch stößt man beim Einsatz des OO-Paradigmas immer wieder auf scheinbar unüberwindliche Probleme, die oft genug Projekte zum Scheitern bringen. Dieser Vortrag zeigt die typischen Schwierigkeiten, die das OO-Paradigma in den verschieden Methoden, Techniken und Werkzeugen mit sich bringt und vermittelt beispielhaft Lösungsansätze um das OO-Dilemma zu vermeiden. Level 1 = Für alle Teilnehmer
S16 Night School: Pinguine sind auch nur Menschen: Über den kommerziellen Einsatz von Open Source Matthew Langham (S&N AG)Wenn kommerzielle Unternehmen die Entscheidung treffen, sich mit dem Thema
Open Source zu beschäftigen, müssen sie sich auf grundlegende Veränderungen
einstellen. Versuche, über Jahre angewendete Geschäftsregeln oder etablierte
Unternehmensprozesse auf Open Source zu übertragen, werden zwangsläufig
scheitern. Letztendlich werden sie nur bewirken, dass die Unternehmen
frustriert vor dieser neuen Herausforderung kapitulieren. Vor über 2 Jahren wagte ein etabliertes Softwarehaus den Schritt, eine eigene Open Source-Gruppe zu bilden. In dieser Präsentation soll der
notwendige Wandel aufgezeigt werden, den diese Entscheidung innerhalb des
Unternehmens und an den Schnittstellen zu Kunden und Partnern mit sich
brachte. Weiterhin zeigt diese Session, mit welchen Techniken die
einzigartigen Open Source Community-Strukturen gebaut werden und wie man
sich auch als kommerzielles Unternehmen erfolgreich darin bewegen kann. Level 1 = Für alle Teilnehmer
S17 Eclipse: Entwicklungsplattform für J2EE Development Bruce Sams (mediateam)Diese Session zeigt den effektiven Einsatz der Eclipse-Entwicklungsplattform im J2EE Bereich. Es werden u.a.. firmenspezifischen "Plug-Ins", Migration von VisualAge, Editoren, VM-Swapping, Repositories und Debugger besprochen. Ferner erhalten die Teilnehmer eine Reihe von Tipps und Tricks für den souveränen Umgang mit dem Werkzeug. Level 1 = Für alle Teilnehmer
S18 SWT aus Eclipse: Eine neue Chance für Java-GUIs? Stefan Matthias Aust (3plus4 software)Das SWT (Standard Widget Toolkit) ist ein alternatives GUI-Rahmenwerk, das im Rahmen des Eclipse-Projekts entstanden ist und plattformübergreifend native Widgets für Java-Anwendungen zur Verfügung stellt. Die Session diskutiert die Vor- und Nachteile von SWT und bietet einen Einstieg in die Programmierung anhand praktischer Beispiele. Als Ausblick werden auf SWT aufbauende Anwendungsrahmenwerke, der Umgang mit OLE-Objekten unter Windows und verschiedene Möglichkeiten des Deployments behandelt. Level 1 = Für alle Teilnehmer
S19 Night School: Plug-In Entwicklung für die Eclipse-Platform Dirk Baeumer (IBM OTI Labs, Zürich)Die Session gibt anhand eines konkreten Beispiels tiefere Einblicke in
die Erweiterungsmöglichkeiten der Eclipse-Platform. Im Mittelpunkt
stehen folgende Aspekte: (1) Schreiben eines eigenen Plug-Ins, (2)
Öffnen des eigenen Plug-Ins für fremde Tool-Entwickler (3) Publizieren
des Plug-Ins im WWW damit es für die Welt zugänglich ist. Dirk Bäumer
ist Mitarbeiter des IBM OTI Labs in Zürich und Committer für diverse
Komponenten des Eclipse-Projekts. Level 2 = Kenntnisse vorausgesetzt
S20 Suchmaschinen entwickeln mit Apache Lucene Dr. Fabian Theis (Instant Solutions)Das komplett in Java geschriebene Volltext-Suchmaschinen-Framework Lucene hat sich in letzter Zeit auch gegen kommerzielle Lösungen behaupten können und ist daher in unterschiedlichen Produkten wie beispielsweise OpenCms integriert. In dieser Session werden Indexierung und Suche mit Lucene an einem einfachen Beispiel dargestellt. Dabei wird auch auf speziellere Themen wie
PDF-Indexierung, Ergebnispräsentation und Webcrawling eingegangen. Level 1 = Für alle Teilnehmer
S21 J2EE Performance Scalability and Clustering, Part 2 Emmanuel Cecchet (INRIA, ObjectWeb)This second part focuses on J2EE clustering in practice. We give an overview of the available open-source tools to scale each tier (Apache, Tomcat, EJB and database) in a J2EE cluster. We will illustrate the concepts with a Linux demo cluster running Apache, Tomcat, JOnAS and C-JDBC. C-JDBC is an open source database cluster middleware that allows any Java application to transparently access a cluster of databases through JDBC. Level 2 = Kenntnisse vorausgesetzt
S22 StarOffice/OpenOffice Development Kit for Java Jürgen Schmidt (Sun Microsystems)Diese Session zeigt dem Java-versierten Benutzer verschiedene Möglichkeiten, wie StarOffice mit Java erweitert, in eigenen Applikationen genutzt oder kontrolliert werden kann (Komponenten, OfficeBean, Scripte, ...). Die StarOffice API
ermöglicht nicht nur die Integration bzw. Erweiterung neuer Funktionalität in Form von Java-Komponenten, sondern auch die Kontrolle und Steuerung der kompletten Office-Funktionalität durch Scripte oder eigene Java-Applikationen. Darüber hinaus ist es ebenfalls möglich, StarOffice-
Komponenten in eigene Applikationen einzubinden, um so schneller komplexe oder maßgeschneiderte Java-Desktop Applikationen zu entwickeln. Level 1 = Für alle Teilnehmer
|