Rheinwerk Computing < openbook > Rheinwerk Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger.

Inhaltsverzeichnis
1 Einleitung
2 Die Basis der Objektorientierung
3 Die Prinzipien des objektorientierten Entwurfs
4 Die Struktur objektorientierter Software
5 Vererbung und Polymorphie
6 Persistenz
7 Abläufe in einem objektorientierten System
8 Module und Architektur
9 Aspekte und Objektorientierung
10 Objektorientierung am Beispiel: Eine Web-Applikation mit PHP 5 und Ajax
A Verwendete Programmiersprachen
B Literaturverzeichnis
Stichwort
Ihre Meinung?

Spacer
 <<   zurück
Objektorientierte Programmierung von Bernhard Lahres, Gregor Rayman
Das umfassende Handbuch
Buch: Objektorientierte Programmierung

Objektorientierte Programmierung
2., aktualisierte und erweiterte Auflage, geb.
656 S., 49,90 Euro
Rheinwerk Computing
ISBN 978-3-8362-1401-8
Pfeil 3 Die Prinzipien des objektorientierten Entwurfs
  Pfeil 3.1 Prinzip 1: Prinzip einer einzigen Verantwortung
  Pfeil 3.2 Prinzip 2: Trennung der Anliegen
  Pfeil 3.3 Prinzip 3: Wiederholungen vermeiden
  Pfeil 3.4 Prinzip 4: Offen für Erweiterung, geschlossen für Änderung
  Pfeil 3.5 Prinzip 5: Trennung der Schnittstelle von der Implementierung
  Pfeil 3.6 Prinzip 6: Umkehr der Abhängigkeiten
    Pfeil 3.6.1 Umkehrung des Kontrollflusses
  Pfeil 3.7 Prinzip 7: Mach es testbar


Rheinwerk Computing - Zum Seitenanfang

3.2 Prinzip 2: Trennung der Anliegen  topZur vorigen Überschrift

Eine Aufgabe, die ein Programm umsetzen muss, betrifft häufig mehrere Anliegen, die getrennt betrachtet und als getrennte Anforderungen formuliert werden können.

Mit dem Begriff Anliegen bezeichnen wir dabei eine formulierbare Aufgabe eines Programms, die zusammenhängend und abgeschlossen ist.


Icon Hinweis Trennung der Anliegen (Separation of Concerns)

Ein in einer Anwendung identifizierbares Anliegen soll durch ein Modul repräsentiert werden. Ein Anliegen soll nicht über mehrere Module verstreut sein.


Im vorigen Abschnitt haben wir etwas formuliert, das sehr ähnlich klingt: Ein Modul soll genau eine Verantwortung haben.

Trennen der Sprache und der Darstellung von der Anwendungslogik

Häufig betrachtet man die Funktionalität der Anwendung, die Darstellung von Texten oder die grafische Darstellung der Anwendung als unterschiedliche Anliegen, die in getrennten Modulen umgesetzt werden. Die Anwendungslogik ist dann in anderen Modulen als die Text- und Grafikressourcen integriert. Wenn Sie z. B. eine Internetpräsenz erstellen, ist es einfacher, die Texte und die Grafiken direkt in die Seiten einzubauen, als sie aus einer separaten lokalisierten Quelle zu beziehen. Doch sobald Sie die Internetpräsenz parallel in mehreren Sprachen zur Verfügung stellen möchten, wird klar, dass die Trennung der Anliegen »Seitenstruktur« und »Seitensprache« eine gute Idee ist.

In Abbildung 3.4 ist eine kleine Internetpräsenz aufgeführt, die in den – im Internet sehr gebräuchlichen – Sprachen Latein und Griechisch gepflegt wird.

Abbildung 3.4    Trennung der Anliegen bei der Darstellung von HTML-Seiten

In der Abbildung sind auch die Anliegen der Seitenstruktur und der Seitendarstellung getrennt, so dass sich unterschiedliche Darstellungsarten für den gleichen Inhalt umsetzen lassen.

Anliegen bei Online-Banking

Nehmen wir ein anderes Beispiel: eine Überweisung beim Online-Banking. Neben der fachlichen Aufgabe, einen Geldbetrag von einem Konto auf ein anderes zu übertragen, muss das Programm noch eine Reihe von weiteren Bedingungen sicherstellen:

1. Nur berechtigte Personen können die Überweisung veranlassen.
       
2. Die Überweisung ist eine Transaktion. Sie gelingt entweder als Ganzes oder scheitert als Ganzes. Im Falle einer Störung wird also nicht von einem Konto Geld abgebucht, ohne auf ein anderes gutgeschrieben zu werden.
       
3. Die Kontobewegung erscheint auf den entsprechenden Kontoauszügen.
       

Die Anliegen wie die Authentifizierung und Autorisierung der Benutzer, die Transaktionssicherheit oder die Buchführung betreffen nicht nur die Funktion »Überweisung«, sondern sehr viele andere Funktionen der Online-Banking-Anwendung.

Anliegen in unterschiedlichen Modulen

Die Anforderungen, die diese Anliegen betreffen, lassen sich oft einfacher formulieren, wenn sie zusammengefasst werden und von den eigentlichen fachlichen Funktionen getrennt beschrieben werden.

Implementieren wir die Funktionalität, welche die unterschiedlichen Anliegen betrifft, in unterschiedlichen Modulen, dann werden die Module einfacher und voneinander unabhängiger. Sie lassen sich getrennt und einfacher testen, modifizieren und wiederverwenden.

Diskussion: Objektorientierung und Trennung der Anliegen

Bernhard: Ist denn Objektorientierung überhaupt der richtige und der einzige Weg, der uns ermöglicht, die unterschiedlichen Anliegen getrennt zu entwickeln?

Gregor: Die Objektorientierung kann hier nur als erster Schritt betrachtet werden, wir werden später im Buch sehen, dass die Trennung bestimmter wichtiger Arten von Anliegen nicht zu den Stärken objektorientierter Systeme gehört. Dieses Problem wird durch die aspektorientierte Vorgehensweise adressiert, dem wir das Kapitel 9, »Aspekte und Objektorientierung«, widmen.

Ihre Meinung

Wie hat Ihnen das Openbook gefallen? Wir freuen uns immer über Ihre Rückmeldung. Schreiben Sie uns gerne Ihr Feedback als E-Mail an kommunikation@rheinwerk-verlag.de.

 <<   zurück
  Zum Rheinwerk-Shop
Neuauflage: Objektorientierte Programmierung






Neuauflage:
Objektorientierte Programmierung

Jetzt Buch bestellen


 Ihre Meinung?
Wie hat Ihnen das Openbook gefallen?
Ihre Meinung

 Buchempfehlungen
Zum Rheinwerk-Shop: Java ist auch eine Insel






 Java ist auch
 eine Insel


Zum Rheinwerk-Shop: Schrödinger programmiert C++






 Schrödinger
 programmiert C++


Zum Rheinwerk-Shop: C++ Handbuch






 C++ Handbuch


Zum Rheinwerk-Shop: Einstieg in Python






 Einstieg in Python


Zum Rheinwerk-Shop: IT-Handbuch für Fachinformatiker






 IT-Handbuch für
 Fachinformatiker


 Lieferung
Versandkostenfrei bestellen in Deutschland, Österreich und der Schweiz
InfoInfo




Copyright © Rheinwerk Verlag GmbH 2009
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das Openbook denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt.
Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


Nutzungsbestimmungen | Datenschutz | Impressum

Rheinwerk Verlag GmbH, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, service@rheinwerk-verlag.de

Cookie-Einstellungen ändern