Georg Heeg Objektorientierte Systeme Baroper Str. 337 D-44227 Dortmund Tel: +49-231-97599-0 Fax: +49-231-97599-20 Email: [email protected] Georg Heeg - OOP 2000 http://www.heeg.de Georg Heeg Objektorientierte Systeme Mühlenstr. 19 D-06366 Köthen Tel: +49-3496-214 328 Fax: +49-3496-214 712 Georg Heeg AG Objektorientierte Systeme Riedtlistr. 8 CH-8006 Zürich Tel: +41-1-356 3311 1 Fax: +41-1-356 3312 Smalltalk in einer Java-Welt Georg Heeg - Objektorientierte Systeme OOP 2000 / Smalltalk Abend Andreas Tönne Georg Heeg - OOP 2000 2 Einleitung • Wir betrachten „Standard IT-Projekte“ • Das Projektumfeld hat großen Einfluß – – – – – Legacy-Systeme Vorhandene Datenbanken Netzinfrastruktur generelle IT-Kultur des Unternehmens Integration in den Arbeitsprozess Georg Heeg - OOP 2000 3 Trend Low-Tech Projektanforderungen • Dampfradio – Welche Röhre? • Transistor-Radio – Wieviele Transistoren? • Hifi-Radio – Tunertechnik (PLL), Ausstattung • Heute – Aussehen, Preis, Bedienbarkeit, (Digital-Radio) Georg Heeg - OOP 2000 4 Projekte • Die äußere Sicht zählt! • Externe Sicht: – Fachfunktionalität – Integration, Interoperabilität – Distribution, Wartung • Interne Sicht: – Programmiersprache – Verwendete Standards – Werkzeuge Georg Heeg - OOP 2000 5 Phänomen Java Java wird nicht als Technologie wahrgenommen „Die Technologie spielt heute keine Rolle mehr. Hauptsache es ist Java“ Georg Heeg - OOP 2000 6 Phänomen Java Java beeinflußt Projekte: Anforderungen, Entscheidung, Erwartungen Die Möglichkeiten von Java bestimmen die Anforderungen an Projekte Georg Heeg - OOP 2000 7 Java Technologie JTS, JDK 1.1.8, Java Servlet, JMS, JRE 1.2.2, Java Media Framework, JDBC, Java IDL, JTA, JDK 1.2.2, BDK, Java 2D, RMI-IIOP, JMAPI, Java Mail, JRE 1.1.8, JDNI, Java Server Pages, EJB, Java Help, COMM, Java Beans, Swing, RMI, JDK 1.0.2, Hot Spot, JMX, JCE, Info Bus, JSSE, JFC, Java 3D, JAF, JAAS Aktuelle Technologien einschl. Standard Extension und Enterprise Georg Heeg - OOP 2000 8 Java Technologie • Welche Teile der Java Technologie sind sinnvollerweise Teil der externen Sicht eines Projekts? • Alle Technologien, die folgende externe Qualitäten eines Projekts beeinflussen: – Integration, Interoperabilität – Distribution, Wartung Georg Heeg - OOP 2000 9 Java Technologie • Durch Java bestimmte Projektanforderungen 1. Web-Server Anwendungen (Servlets) 2. Einfache Distribution (JAR) 3. Läuft im Web-Browser 4. Write once, run everywhere 5. Interoperabilität 6. Datenbankanbindung (JDBC) 7. Verteilte Architekturen (RMI, RMI-IIOP, Corba) 8. Application Server (EJB) Georg Heeg - OOP 2000 10 Wenn Java so dominant ist, warum dann Smalltalk? Georg Heeg - OOP 2000 11 Gründe für Smalltalk • Projekte mit offenen oder unklaren Konzepten – Bedarf an Prototypen – Unvollständige Spezifikation und Modellierung – „Moving Targets“ • Aktuelles Beispiel (CW 40/99, 71f) – Wahlberichterstattung von Infratest Dimap – Jede Wahl ein neues Projekt – Vorlaufzeit manchmal nur 10 Tage Georg Heeg - OOP 2000 12 VisualWorks 5i Georg Heeg - OOP 2000 13 1. Web-Anwendungen • • • • • • VisualWave Ausgereifter Web-Anwendungsserver Lastverteilung Automatische HTML Generierung Sessionverwaltung Monitore zur Server-Steuerung und -Überwachung Alle Möglichkeiten einer VisualWorksAnwendung Georg Heeg - OOP 2000 14 2. Einfache Distribution (JAR) • Parcels leisten dieselben Dienste – Transportieren Klassen, Methoden, statische Variablen – Abhängigkeiten zwischen Parcels – Automatisches Laden fehlender Parcels – Pre- und Post-Aktionen beim Laden – Versionierung – mit/ohne Source Georg Heeg - OOP 2000 15 3. Läuft im Web-Browser VisualWorks Plugin liefert zeigt an •Plugin –VM –Plugin-Image Georg Heeg - OOP 2000 lädt •Web-Server –HTML-Seite –Parcel 16 3. Läuft im Web-Browser <EMBED NAME="VisualWorks Calculator" SRC="Calculator.pcl" WIDTH="233" HEIGHT="245" ALIGN="BOTTOM" TYPE="application/x-visualworks-parcel" VWOPEN="CalculatorExample" PLUGINSPAGE="vwplugin-install.html"> Georg Heeg - OOP 2000 17 4. Write once, run everywhere • Binäre Kompatibilität seit 1982 (ST80) • Abstraktion von Plattform-Eigenarten – Dateisystem – Betriebssystemaufrufe – Benutzeroberfläche • Auswechselbares Look&Feel seit VisualWorks 1.0 (1991) Georg Heeg - OOP 2000 18 4. Write once, run everywhere • VisualWorks 5i VMs gibt es für – – – – – – – Win 95/98/NT Apple Macintosh Solaris HP-UX AIX Compaq Alpha Unix SGI – Linux 86 Georg Heeg - OOP 2000 19 5. Interoperabilität/Integration • DLL&C-Connect für alle Plattformen – Voraussetzung für COMConnect – Verwendet in DatabaseConnect • COMConnect für Windows-Plattformen – COM Clients – COM Server – z.B. SAP-Connect, RoseLink • XML-Unterstützung – Hilfe-System, Sourcecode Georg Heeg - OOP 2000 20 6. Datenbankanbindungen • Anbindungen für – – – – Oracle Sybase SQL Server ODBC • Low-Level-Schnittstellen wie JDBC • High-Level Objekt-Relationen-Mapper • Gemstone/S Georg Heeg - OOP 2000 21 7. Verteilte Architekturen DST (Distributed Smalltalk) • Erster Corba ORB (Entwickelt von HP) Georg Heeg - OOP 2000 22 8. Application Server (EJB) • Keine standardisierte Lösung • Consulting-Frameworks mit VEOS • Gemstone/S = EJB mit Persistenz Georg Heeg - OOP 2000 23 VisualWorks 5i Neu in VisualWorks 5i – – – – – Name-Spaces StORE XML Microsoft SQL-Server Erweiterte Parcels Georg Heeg - OOP 2000 24 Fazit Smalltalk ist eine ernst zu nehmende Alternative zu Java Haben Sie tiefergehende Fragen, Kritik, eine andere Meinung? Sprechen Sie mit uns darüber. Wir stehen Ihnen jederzeit gerne zur Verfügung. Georg Heeg - OOP 2000 25