 |
|
XML und OO und Komponenten
|
|
(April 2004)
|
Inhalt dieses Artikels:
Die Vielseitigkeit
von XML | Mit Objektorientierung
Probleme beherrschen | Komponenten
beschleunigen | Wie passt das
alles zusammen? |
|
| |
|
XML (eXtensible Markup Language) erfreut sich in der Praxis wachsender Beliebtheit - immer mehr Softwareentwickler müssen sich deshalb mit dieser Thematik auseinandersetzen. Wie XML einerseits sowie Objektorientierung und Komponenten andererseits zusammenpassen, das erläutern für GULP die Spezialisten Eberhard Wolff und Enrico Quasdorf von der Saxonia Systems AG:
XML auf dem Vormarsch, das hat mehrere Gründe. Einer davon
ist, dass man mit der Methode der Objektorientierung XML-Strukturen
entwerfen kann, oder kurz: XML ist objektorientiert und leicht zu
parsen. Hierfür gibt es mehrere Verfahren (SAX, DOM) und Implementierungen
in allen gängigen Programmiersprachen.
|
| Die
Vielseitigkeit von XML |
 |
| Ferner ist XML human-readable und –writable
und kann von Programmierern sehr schnell erzeugt werden. Und: Die
Struktur von XML-Dokumenten kann gegen eine Definition validiert
werden (DTD). Damit noch nicht genug der Vorteile, die besonders
in der weiten Verwendbarkeit des großen Verwandten von HTML
fußen: XML kann plattformübergreifend vielseitig eingesetzt
werden, z.B. als Layout-Beschreibungen für GUIs (XUL), RPC
via TCP/IP (XMLRPC), Persistierung von Programmobjekten (X-Stream),
Konfigurationsfiles oder auch als kleinere objektorientierte Datenbank.
Beliebige Daten, die in ihrer Struktur einem gewissen Schema genügen,
können in XML dargestellt werden.
|
|
| Mit
Objektorientierung Probleme beherrschen |
 |
| Für Spezialisten, die Software
planen. Die Objektorientierung OO als eine Abstraktionsschicht zum
Modellieren und Programmieren löste die prozedurale Programmierung
ab. Dies folgte der zunehmenden Komplexität und dem damit einhergehenden
gestiegenen Analyseaufwand, der notwendig gewordenen Arbeitsteilung
auf mehrere Programmierer oder den gestiegenen Änderungsanforderungen
der Endanwender.
Durch OO kann der Analyst näher an der Realität modellieren
(UML) und somit das Problem besser beherrschen. Der Programmierer
ist durch eine vorgegebene Schnittstelle frei in der Implementierung
(data hiding) und kann diese ändern, ohne dass andere Bereiche
betroffen wären – solange die Schnittstellen nicht verändert
werden. Durch Polymorphie und Vererbung wird einheitliches Verhalten
und geringe Redundanz von Codebestandteilen erschaffen.
Ein Argument dafür: Die meisten in der Praxis eingesetzten
Programmiersprachen erlauben die Nutzung objektorientierter Konzepte.
Aktuell geht die Entwicklung weiter, indem die objektorientierten
Konzepte durch Aspekte oder Delegates in ihrer Mächtigkeit
erweitert werden.
|
|
| Komponenten
beschleunigen |
 |
| Im Rahmen der Wiederverwendung von
großen Codebestandteilen über Programmgrenzen hinweg
und der Trennung von funktionalem und technischem Programmteilen
entstand das Konzept der Komponenten. Dies führte zum Entstehen
von Application Frameworks / Application Servern / Verteilten Anwendungen,
welche z.B. über Web Services kommunizieren.
Diese technischen Wrapper kümmern sich um Ressourcenallokation,
deren Verteilung über Persistenz von Objekten und die Anbindung
an DBMSe. Für die eigentlichen Geschäftslogik-Komponenten
ist dies alles transparent – sie brauchen sich nur um ihre
fachlichen Aufgaben zu kümmern, was das Erstellen von Business-Applikationen
enorm beschleunigt.
|
|
| Wie passt das alles zusammen? |
 |
| XML kann überall dort eingesetzt
werden, wo objektorientierter Datenfluss eine Rolle spielt. Es ist
weniger zu gebrauchen, um Geschäftslogik abzubilden, aber:
Es kann im Rahmen von Datenzentrierung eingesetzt werden. Für
die Geschäftslogik sollte OO und Komponenten zum Einsatz kommen,
wobei es von der Wiederverwendbarkeit abhängt, ob das Erstellen
einer Komponente sinnvoll ist.
Allerdings: Ein Overkill sollte vermieden werden.
|
|
XML, Objektorientierung und Komponenten stehen
außerdem im Zentrum von Vorträgen, die regelmässig bei der Saxonia
Systems AG in
Frankfurt stattfinden. Eberhard Wolff (u. a. Autor des Fachbuches "Java
Persistenz-Strategien - Datenzugriff in Enterprise-Anwendungen:
JDO, JCA, Enterprise JavaBeans, JDBC, XML") referiert dann
vor allem auch über den praktischen Einsatz.
Die Autoren behalten sich alle Rechte am Artikel
vor. © 2004
|
Kommentare zu diesem Artikel:
|