Philosophische Grundlagen der objekt-orientierten Softwareentwicklung

von Rudolf Weber

Warum Philosophie ?

Die Philosophie beschäftigt seit den Anfängen bei den Griechen mit der Beschreibung der Welt. Die Mythologie/Theologie hingegen mit dem Sinn und Offenbarungen.

In der Informatik wollen wir Teile unserer Lebenswelt automatisieren. Dazu müssen wir diese verstehen und formal beschreiben, getreu nach Prof. Wedekind (Uni Erlangen): Wer automatisieren will, muß formalisieren. In den letzten 100 Jahren hat die Philosopie eine sprachkritische Wendung gemacht, was dazu geführt hat, daß die Ansprüche der Philosophie sehr bescheiden geworden sind.

Warum sich nicht die Ergebnisse zunutze machen ?
Insbesondere die Logik und Wissenschaftstheorie sind interessant. Diese sind grundlegend für alle Wissenschaften und sollten in den Universitäten ein Pflichtfach für alle Studiengänge sein und auch in der Elementarschule intensiv behandelt werden.
Wir wollen uns damit auch dem interdiziplinären Dialog öffnen, insbesondere mit den Fachwissenschaften, denn ohne Anwendungen ist die Computerei sinnlos.

Überblick

  1. Die Welt besteht aus Objekten
  2. Objekte sind Exemplare von Objektschablonen (Klassen). Die Exemplarbeziehung ist eine erste Stufe der Abstraktion.
  3. Was ist Abstraktion ?
  4. Objekte haben Attribute von den Objektschablonen/Kassen
  5. Objekte haben Zustände, die durch Operationen geändert werden
    Abläufe (Bogen zur prozeduralen Programierung)
  6. Generalisierung/Spezialisierung von Klassen, Subordination von Begriffen, Vererbung. Dies ist eine zweite Stufe der Abstraktion
  7. Zusammensetzen von Klassen Teil Ganze-Beziehung
  8. Granularität von Objekten
  9. Systeme: Wichtig sind die Beziehungen zwischen den Objekten
  10. Schichtenmodell: Systeme (nicht nur) in der Informatik sind in Schichten aufgebaut
  11. Entwurfsmuster
  12. Architektur bestimmt den übergeordneten Aufbau und die Grundlinien eines Systems
  13. Mit Use-Cases stellt man fest, was man eigentlich von einem zu modellierenden System haben will. Damit hat man eine Grundlage um Objekte/Klassen zielgerichtet zu suchen. (siehe auch http://www.usecases.org)

Was fehlt

Fortgeschrittenes

Literatur und weiteres

Verwendete Literatur
OO-FAQ
Aus der USENET-comp.object-Newsgroup entstanden
German Object Oriented Association Linkage
Mailingliste über OO-Technologie, gesponsert aber keine WWW-Seiten dazu
SDL - System Design Langiages
Designsprachen aus der Telekommunikation - entwickeln sich zu Spezialprofilen der UML

Rudolf Weber Informatik- und Netzwerkverein Ravensburg e.V