Objektorientierung mehr als nur ein Trend? Anwender nehmen Stellung

Das Für und Wider der Objekte in komplexen DV-Projekten

28.06.1996

Objektorientierte Programmierung (OOP) ist für Unternehmen überlebenswichtig und jeder anderen Programmiertechnik vorzuziehen. Bei Sprint stellen wir das gesamte Geschäft darauf um.

Jeder, der als Kind mit Lego-Bausteinen gespielt hat, versteht die Prinzipien der Objektorientierung. Vorgefertigte Teile sind das Herzstück der industriellen Fertigung vorgefertigte Objekte und Komponenten bilden den Kern des Informationszeitalters.

Die Sprint Corp. benutzt OOP nicht nur zur Erstellung unternehmensweiter Anwendungen, sondern auch einen Object Request Broker, um die Module konzernweit zu verteilen. Damit werden wir den Alptraum verstreuter Legacy-Anwendungen beenden.

Objektorientierung hat viele weitere Auswirkungen auf die Informationsstruktur in unserem Unternehmen und auf die Art und Weise, wie mit Software umgegangen wird. Objekte bewirken einen Wandel in der Unternehmenskultur und einen schwierigen, aber machbaren Paradigmenwechsel.

So sorgt die Kapselung, ein Schlüsselelement der OOP, dafür, daß die Information einem speziellen realen Objekt entspricht. Der Kunde wird zu einem "Master Object", das in einem Objekt-Warehouse hinterlegt wird und von verschiedenen Applikationen aus zugänglich ist. Die Kapselung erspart eine Menge an Kosten und Wartungsaufwand, gar nicht zu reden von einer genaueren Information und größerer Kundenfreundlichkeit.

Der bemerkenswerteste Vorteil von OOP ist aber die Wiederverwendbarkeit. Allerdings trifft man manchmal auf Manager, die nicht bereit sind, die Zeit zu opfern, die notwendig wäre, um die Objekte so zu konzipieren, daß sie erneut eingesetzt werden können. Typische objektorientierte Sprachen wie Smalltalk und Java erleichtern die Wiederverwendung über Vererbungsmechanismen.

Bislang hatten Programmierer mit den kryptischen Anmerkungen ihrer Vorgänger zu kämpfen. Die Entwickler, die objektorientiert arbeiten, können jeweils zu einem Gutteil Plagiator, Künstler und Integrator sein. Sie suchen sich ihre Objekte von überall her zusammen und passen sie an, wenn das notwendig sein sollte - alles in einer unglaublichen Geschwindigkeit. Nochmals effizienter wird die Arbeit, wenn es einen "Objekt-Zaren" gibt, der den Überblick über alle Objekte behält.

Schauen wir uns OOP-Charakteristiken doch einmal genauer an. Sprachen wie Smalltalk oder C++ kapseln Logik und Variablen. Daraus entsteht bei der Implementierung eine Top-down-Hierarchie, in der Objektklassen und ihre Abhängigkeiten definiert werden. Auf diese Weise findet sich die Geschäftslogik in individuellen Methoden einer Klassenhierarchie wieder und Funktionen in entsprechenden Objekten. Ein solch starres Konzept kann gar nicht das Profil eines erfolgreichen Paradigmas abgeben.

Auf jeden publizierten Erfolg kommen mindestens 50 Fehlschläge. Auf jeden Cobol-Programmierer, der erfolgreich auf Objektorientierung getrimmt wurde, kommen 50 andere, die nach Monaten intensiver Schulung noch nichts begriffen haben.

Oracle-Berater Steve Perkins beispielsweise, der ein solch gescheitertes Projekt betreute, mußte einräumen, daß objektorientierte Methoden und Tools für große und komplexe Lösungen nicht taugen. So sei die Anbindung von Objekten an relationale Daten ein ganz erhebliches Problem. Außerdem möchte ich auf einen Gartner-Report von 1995 verweisen, in dem Objektorientierung als eine außerordentlich schwierige Technik klassifiziert wird, die sich lediglich für die GUI-Programmierung eigne.

In den vergangenen 40 Jahren haben wir hart an Entwicklungstechniken gearbeitet, die es ermöglichen, Applikationen leichter zu bauen, zu warten und schneller zu verändern. Aber die klassische OOP schmeißt jegliche Erkenntnis aus dem Fenster. Selbst hartgesottene OOP-Fürsprecher müssen zugeben, daß Objektorientierung eine völlig neue Denkweise erfordert. Während jeder Schritt vom Maschinencode zu Assembler, zu Cobol und zu Sprachen der vierten Generation tatsächliche Fortschritte bedeutete - zum Beispiel wurde es immer einfacher Computersprachen zu lernen und anzuwenden -, bringt uns die Objektorientierung nicht weiter.

Klar, Cobol und Assembler können nicht mehr die Herausforderungen der Gegenwart meistern. Um sie zu ersetzen, brauchen Cobol- Programmierer Objekte, die einfach zu handhaben und flexibel sind. Die Lösung ist eine 4GL, die objektorientierte Features hat, aber zugleich auf relationalen Datenbanktechniken beruht. Unser Augenmerk sollte darauf gerichtet sein, die Produktivität zu erhöhen. Objektorientierung kompliziert unser Leben nur.

PRO

Taugen Objekte für eine tra-gende Rolle in der Unternehmens-DV? Verdammt noch mal, ja - und das schon seit Jahren. Die Frage müßte lauten: "Sind die IS-Abteilungen gut genug, um damit etwas anfangen zu können?", ereifert sich der OOP-Fan John Strand III, Technologie-Chef bei der Sprint Corp in Overland Park, Kansas.

CONTRA

Eine Absage an objektorientierte DV erteilt Martin Goetz, President der Goetz Associates in Teaneck, New Jersey: "So unvermeidbar wie Tod und Steuern ist der Untergang der klassischen objektorientierten Programmierung, wie sie Mitte der 80er Jahre definiert wurde. Firmen, die darauf bauen, werden ebenso sicher im Nichts verschwinden."