Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Clemens Hoffmann IT-Berater Smalltalk für Quereinsteiger.

Ähnliche Präsentationen


Präsentation zum Thema: "Clemens Hoffmann IT-Berater Smalltalk für Quereinsteiger."—  Präsentation transkript:

1 Clemens Hoffmann IT-Berater Smalltalk für Quereinsteiger

2 Wen spricht der Vortrag an? Entwickler mit Programmiererfahrung in C++ oder Java auf dem Weg zu neuen Ufern Projektleiter, die Alternativen zu bestehenden Entwicklungssystemen kennenlernen möchten Neugierige Menschen, die wissen wollen, was Smalltalk eigentlich ist

3 Was spricht der Vortrag an Wie arbeite ich mit Smalltalk Werkzeuge, Design, Teams Was habe ich für ein Umfeld Schnittstellen, Web, Verteilte Systeme Was ist Smalltalk VisualWorks 5i, Philosophie, Architektur

4 Wie startet man eine Revolution

5 VisualWorks - Historie Entstanden im XEROX PARC 1972 Gründung ParcPlace Systems 1988 ObjectWorks 1990 VisualWorks1992 Cincom übernimmt VisualWorks 1999 Going Public1981 Gründung Firma Georg Heeg 1987

6 VisualWorks - Definition VisualWorks ist wie eine Skriptsprache mächtig hoch skalierbar extrem stabil objektorientiert ohne die gängigen Einschränkungen Performanz Komplexität Unübersichtlichkeit Wartbarkeit

7 VisualWorks - Philosophie Keine Typen Automatische Speicherverwaltung Reflexivität Smalltalk ist in Smalltalk geschrieben Klasse, Methode, Werkzeuge, Compiler,... Nicht mehr referenzierte Objekte werden automatisch abgeräumt Das Verhalten (die Menge der verfügbaren Methoden) definiert ein Objekt.

8 VisualWorks - Philosophie Alles ist ein Objekt Lebende Objekte Jede Komponente im einem VisualWorks System ist ein Objekt, das mit anderen Objekten interagiert. Alle Objekte im System leben in einem gemeinsamen Objektraum. Dieser Raum wird als Image gespeichert und existiert nach einem Neustart des Images exakt so weiter, wie er gespeichert wurde

9 VisualWorks - Philosophie Uniformität Erweiterbarkeit Wissensbasis Alle Klassen können in sich erweitert werden Uniformer Zugriff auf alle Konstrukte im Image. Der gesamte Sourcecode des Systems kann direkt eingesehen werden.

10 Java - Architektur WindowsLinuxMacintoshSunIBMHP VM Laufzeitumgebung und Anwendung Werkzeuge Bibliothek in Ver- zeichnisstruktur und jar-Dateien

11 VisualWorks - Architektur WindowsLinuxMacintoshSunIBMHP Werkzeuge Bibliothek Anwendung(en) Image VM

12 Klassendefinition Werkzeuge - PackageBrowser Kategorien Klassenliste Protokolliste Methodenliste

13 Binärcode *.class kompilieren Binärcode *.class Programmierzyklus - Java Source *.java Binärcode *.class Binärcode *.class Binärcode *.class Kompilierfehler Laufzeit- oder Logikfehler Laufzeit- umgebung Laden und testen

14 Programmierzyklus - VW KlassendefinitionMethodendefinition Class Erstellen Syntaxfehler CompiledMethod Speichern Syntaxfehler Image Es kann jederzeit getestet werden Instant kompiliert und verfügbar

15 Design Anforderungs- analyse Use-Cases Use-Case-Diagramm System- analyse Klassendiagramme Sequenzdiagramme Design Implementierung Test Klassendiagramme Aktivitätsdiagramme Quellcode Anwendung(en) Testprotokolle

16 Design Smalltalk (VisualWorks) und UML Anforderungsanalyse Systemanalyse Design Implementierung Test Roundtrip

17 Design Keine explizite Trennung zwischen Design und Implementierung Iterative (experimentelle) Implementierung Verfeinerung von Design nach Realisierung einfache Refaktorisierung (automatisiert mit RefactoringBrowser) direkt testbar (SUnit-Test)

18 Teams - Java Entwickler VM Werkzeuge Laufzeitumgebung Entwickler VM Werkzeuge Laufzeitumgebung Bibliothek in Ver- zeichnisstruktur und jar-Dateien Versionsverwaltung (SourceSave, PVCS, CVS, RCS,...)

19 Teams - VisualWorks Entwickler VM Image Entwickler VM Image ChangeSet export import Parcels export import

20 Teams - VisualWorks Entwickler VM Image Entwickler VM Image Oracle DB2 MS-SQL PostgreSQL Access StORE-Repository

21 Betriebssystemschnittstelle *.h

22 Datenbankenschnittstellen Database JDBC SUN JDO Toplink Database EXDI ObjectLens GLORP Datenbank- schnittstelle OR-Mapping VisualWorksJava

23 Web - Basisdienste HTTP Client FTP Client IMAP Client IMAP Mailbox POP3 Client POP3 Mailbox SMTP Client URI / URL Support XML Support

24 Web - Smalltalk ServerPages <%values := OrderedCollection new. count := (request anyParameterValueAt: 'count') asNumber. 1 to: count do: [:i | values add: i factorial].%> Computed factorials List of all factorials up to <%values do: [:item | response write: item key printString. response write: '! = '. response write: item value printString. response write: '. Response cr].%>

25 Web - Smalltalk ServerPages

26

27 Computed factorials List of all factorials up to Web - Smalltalk ServerPages

28

29

30 Web - Smalltalk Servlets VisualWave ApplicationServer HTTPServlet Web Server HTTP Request (POST) ToyzInput service: aServletRequest response: aServletResponse doPost: aServletRequest response: aServletResponse Marty Hall: Core Servlets and JavaServer Pages

31 Web - Application Server VisualWave ApplicationServer TinyHTTP Server HTTP Request HTTP Request CGI Fast CGI Web Server (Apache, IIS,...) ISAPI

32 Web-Services VisualWorks als Web-Services Client UDDI Server SOAP Server UDDI Request WSDL Response SOAP Request SOAP Response

33 Smalltalk to Smalltalk Kommunikation OpenTalk Distributed Smalltalk (DST) CORBA IBM Component Broker Borland VisiBroker IONA OrbixWeb ORBacus... CORBA Distribution - CORBA - RMI JavaVisualWorks Portable Object Adaptor Basic Object Adaptor Java to Java Kommunikation RMI Remote Browsing Remote Debugging Remote Development CORBA


Herunterladen ppt "Clemens Hoffmann IT-Berater Smalltalk für Quereinsteiger."

Ähnliche Präsentationen


Google-Anzeigen