Ralf Westphal - Zukunftssichere Architektur

Здесь есть возможность читать онлайн «Ralf Westphal - Zukunftssichere Architektur» — ознакомительный отрывок электронной книги совершенно бесплатно, а после прочтения отрывка купить полную версию. В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Жанр: unrecognised, на немецком языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Zukunftssichere Architektur: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Zukunftssichere Architektur»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

Glücklich der, der auf der grünen Wiese eine neuen Anwendung planen und aufbauen darf. Angefangen von der Architektur bis hin zum Layout der Bedienoberfläche kann man dann den neuesten Standards gehorchen.
Nur leider gibt es viele Programme, die wunderbar ihren Dienst verrichten, neuen Anforderungen aber angepasst werden müssen. Eine Neuentwicklung will der Kunde nicht bezahlen, also muss man aus dem, was vorliegt, das beste machen.
Architekturspezialist Ralf Westphal zeigt Ihnen in diesem Buch, wie Sie vorgehen, wenn Sie so eine Anwendung weiterentwickeln müssen. Wartbarkeit ist das zentrale Thema. Und die erreicht man durch Auftrennung von Monolithen zu komponentenorientierten Anwendungen. Aber wie gehen Sie dabei vor? In Beispielen führt Sie Ralf Westphal Schritt für Schritt durch einen Prozess, an dessen Ende eine Anwendung steht, die sich aus vielen Komponenten zusammensetzt. Jede der Komponenten kann nun ausgetauscht werden, ohne das Gesamtsystem in Mitleidenschaft zu ziehen.
Einleitend erklärt der Autor auch noch in zwei Grundlagenartikeln, warum Regeln bei der Implementierung nur Vorteile brauchen und warum die Komponentenorientierung so viele Vorteile mit sich bringt.

Zukunftssichere Architektur — читать онлайн ознакомительный отрывок

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Zukunftssichere Architektur», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Insofern geht es mir nicht um ein Application Framework mit Konventionen für Persistenz, Sicherheit, Benutzerschnittstelle und so weiter. Das wären schon konkrete Dienstleistungen. So verständlich es ist, Arbeit sparen zu wollen, indem Sie sich auf solche Vorgaben einlassen - der Unterschied zwischen Konvention und Korsett ist fließend. Und je höher das Abstraktionsniveau einer Konvention, desto eher stören Sie sich an ihren Beschränkungen. Kompensieren können Sie das dann nur durch eine Einengung Ihrer Bedürfnisse, zum Beispiel im Hinblick auf die Art der Anwendung oder des Bedienmodells.

Wenn Sie also flexibel bleiben und dennoch Produktivitätsgewinn aus mehr Regeln ziehen wollen, dann müssen Sie die Konventionenlücke aus Abbildung 1 schrittweise von unten her schließen.

Objektorientierung skaliert nicht

Objektorientierung im Verein mit Entwurfsmustern und UML ist in weiten Bereichen der Softwareentwicklung der kleinste gemeinsame Nenner. Konzepte und Werkzeuge sind in den Lehrplänen der Ausbildungsinstitute angekommen. Das ist gut so. Allerdings ist es nicht genug. Auf die Objektorientierung will natürlich niemand mehr verzichten. Da machen selbst dynamische Sprachen oder funktionale Programmierung keinen Unterschied. Auch die haben sich die Objektorientierung zu eigen gemacht. Objektorientierung leidet jedoch fundamental unter einem Defizit: Sie bietet kein Mittel zur Beschreibung von Software auf mehreren Abstraktionsebenen. Objekte und Klassen sind ihre einzigen Strukturelemente. Das ist so, als hätten Sie nur Legosteine, um ein Haus zu bauen, und nur Bilder von Lego-steinen, um das Haus vorher zu planen.

Kompliziertes und allemal Komplexes ist aber nur zu meistern, wenn dazu nicht nur Bausteine von nur einer Granularität zur Verfügung stehen. In Abbildung 2 [2] sehen Sie ein - ja was? Ein Auto. Aber das erkennen Sie vor allem an den Reifen. Ohne die Reifen würden Sie lange rätseln, was all die kleinen Bausteinchen zusammen wohl ergeben würden. Da helfen auch die erkennbaren Beziehungen zwischen ihnen nichts.

Abb 2 Das Ganze verliert sich im Wald der Details Die Explosionszeichnung - фото 4

[Abb. 2] Das Ganze verliert sich im Wald der Details.

Die Explosionszeichnung enthält nur eine Beschreibungsebene - und zwar die niedrigst mögliche, die der unteilbaren Bauteile. Auf demselben Niveau bewegt sich eine Softwarebeschreibung mittels Klassendiagramm. Auch dort sind alle Strukturelemente auf demselben Niveau -nur sind deren Beziehungen noch komplizierter. Da gibt es nicht nur Assoziationen und Aggregationen wie in Abbildung 2, sondern auch noch Spezialisierungen. Außerdem sind die Beziehungen womöglich noch mit Rollen und Aritäten annotiert. Nicht zu vernachlässigen ist auch, dass alle Klassen/Objekte in Softwarediagrammen grundsätzlich gleich aussehen; Sie können also nicht einmal aus ihrer Form Rückschlüsse auf den Zweck ziehen, wie dies Abbildung 2 noch erlaubt.

Etwas Komplexeres als ein Auto beschreiben wir also nur mit demselben, überkommenen Mittel. Wie wenig hilfreich das ist, zeigt Abbildung 3 [3]. Selbst der Hinweis, dass es sich dabei um eine Persistenzbibliothek handelt, macht die Sache nicht viel klarer.

Abb 3 Die Software verliert sich im Wald der Klassen Wenn ein Ganzes - фото 5

[Abb. 3] Die Software verliert sich im Wald der Klassen.

Wenn ein Ganzes unbekannt ist, dann nützt es nichts, seine Details zu zeigen. Denn das Ganze ist mehr als die Summe seiner Teile. Erst im Lichte des Zwecks des Ganzen ergeben Teile nämlich Sinn. Sehen Sie nur die Teile mit ihrem Teilzweck, dann ist es mühsam bis unmöglich, aus den vielen Teilen den Sinn hinter ihrer Existenz abzuleiten.

Kompliziertes und Komplexes auf mehreren Ebenen zu beschreiben, von denen die Bauteilebene nur die unterste ist, hat sich deshalb schon lange eingebürgert. Vom Allgemeinen zum Speziellen, vom Ganzen zum Teil, vom Großen zum Kleinen, top-down: So funktioniert verständliche, übersichtliche Darstellung. Dabei ist die wichtigste Beziehung zunächst einmal die Enthalten-Beziehung. Strukturelemente auf Ebene n enthalten die Strukturelemente auf Ebene n+1. Nur so können Details wahrhaft verborgen werden. Solange Sie sie nicht sehen wollen, sind sie in einem Ganzen versteckt. Die natürliche Darstellung für solche Ebenenvielfalt zeigt Abbildung 4; für viele Ebenen und Details ist dies nur leider umständlich, ja sogar verwirrend. Als probate Alternative hat sich deshalb ein Baum wie in Abbildung 5 erwiesen.

Abb 4 Darstellung eines Systems und seiner unterschiedlichen - фото 6

[Abb. 4] Darstellung eines Systems und seiner unterschiedlichen Abstraktionsgrade.

Abb 5 Die übersichtliche Baumdarstellung eines Systems mit mehreren - фото 7

[Abb. 5] Die übersichtliche Baumdarstellung eines Systems mit mehreren Abstraktionsebenen.

Durch ihn können Sie horizontal Schnitte legen (Abbildung 6), um ein System auf unterschiedlichen Abstraktionsebenen zu beschreiben. Dazu bedarf es allerdings physischer Schachtelung, sonst ist die Darstellung nicht wahrhaftig.

Abb 6 Horizontale Schnitte durch das geschachtelte System aus Abbildung 5 - фото 8

[Abb. 6] Horizontale Schnitte durch das geschachtelte System aus Abbildung 5.

Die Objektorientierung bietet nun aber eben nicht mehr als das, was Abbildung 3 zeigt. Punkt. Physische Schachtelung gibt es nicht, auch nicht beim .NET Framework. Private Klassen sollen ein Sonderfall bleiben und Namensraumdefinitionen sind nur "syntactic sugar". Dem mögen Sie nun entgegenhalten, dass es doch Kompositionsbeziehungen gebe. Sie kennzeichnen Objekte als enthalten in einem anderen.

In Abbildung 7 enthält ein Kunde- Objekt Adresse-Objekte, es besteht also - unter anderem - aus ihnen; Adressen haben ohne Kunde keine Existenzgrundlage.

Abb 7 In Ermangelung echter Schachtelungsmöglichkeit müssen TeilObjekte - фото 9

[Abb. 7] In Ermangelung echter Schachtelungsmöglichkeit müssen Teil-Objekte über Kompositi onsbeziehungen zu einem Ganzes-Objekt zusam mengesetzt werden.

Diese Denkweise ist jedoch recht künstlich und nur dem Mangel an weiteren Struktur- und physischen Abstraktionsebenen geschuldet. So laufen Modell und Coderealität schnell auseinander. Denn im Code lässt sich diese Beziehung ja nicht physisch ausdrücken. Einer Definition wie der folgenden sieht man die gewünschte Schachtelung nicht mehr an:

class Kunde

{

List adressen;

}

class Adresse { }

In der Objektorientierung fehlt also die Möglichkeit, zwei solche Klassen wirklich in einen "Sack" stecken zu können, der sie tatsächlich "enthält" (Abbildung 8). Das ist misslich, denn solange das nicht geht, gibt es nur Besitz-Beziehungen - also eine Assoziation wie "Ein Kunde hat Adressen" -und keine echten Kompositionen oder Aggregate wie "Ein Kunde besteht aus Kopfdaten und Adressen". Wo aber keine Schachtelung möglich ist, da wird das Denken auf unterschiedlichen Abstraktionsebenen erschwert.

Abb 8 Echte Abstraktion von den Details einer Entität durch Schachtelung - фото 10

[Abb. 8] Echte Abstraktion von den Details einer Entität durch Schachtelung.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Zukunftssichere Architektur»

Представляем Вашему вниманию похожие книги на «Zukunftssichere Architektur» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Thomas Westphal - Mick Jagger
Thomas Westphal
Thomas Westphal - Def Leppard
Thomas Westphal
Ron Westphal - test
Ron Westphal
Thomas Westphal - Accounting in Germany
Thomas Westphal
Thomas Westphal - Die RMS Olympic
Thomas Westphal
Thomas Westphal - Die Royal Naval Reserve
Thomas Westphal
Hans Kollhoff - Architektur
Hans Kollhoff
Inge Podbrecky - Unsichtbare Architektur
Inge Podbrecky
Отзывы о книге «Zukunftssichere Architektur»

Обсуждение, отзывы о книге «Zukunftssichere Architektur» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x