Software modular bauen : Architektur von langlebigen Softwaresystemen : Grundlagen und Anwendung mit OSGi und Java /
Software wird in Projekten zumeist unter extremem Zeitdruck geschrieben. Dieser Zeitdruck liefert auch gute Ergebnisse, aber die Software ist für spätere Erweiterungen nicht geeignet. Daher sollten Architekturprinzipien und Konzepte verwendet werden, um die Software zu strukturieren und für spät...
Clasificación: | Libro Electrónico |
---|---|
Autor principal: | |
Formato: | Electrónico eBook |
Idioma: | Alemán |
Publicado: |
Heidelberg, Neckar :
Dpunkt,
2012.
|
Edición: | 1. Aufl. |
Temas: | |
Acceso en línea: | Texto completo (Requiere registro previo con correo institucional) |
Tabla de Contenidos:
- Cover; Titel; Impressum; Hingabe; Inhaltsverzeichnis; 1 Einleitung; 1.1 Über dieses Buch; 1.2 Motivation; 1.3 Nachstellen der Beispiele; 1.4 Regeln; 2 Grundlagen; 2.1 Definitionen; 2.2 Grundthese; 2.3 Prinzipien und Konzepte; 2.4 Modularity Patterns; 2.5 Vorgehen zur Definition modularer Architektur; 2.6 Modularitätsmodell (Modularity Maturity Model); 3 Coding-Architektur: Erweiterbarkeit; 3.1 Hintergrund von Coding Best Practices; 3.2 Beschreibung des Anwendungsbeispiels; 3.3 Factory Pattern; 3.4 Decision Map; 3.5 Single Responsibility; 3.6 Nachstellen des Beispiels
- 3.7 Exkurs: Adapter und Facade3.8 Zusammenfassung; 4 Komponentenarchitektur: Grundlagen; 4.1 Hintergrund eines modularen Laufzeitsystems; 4.2 Umsetzung der Grundkonzepte am Beispiel OSGi; 4.3 Auswirkungen eines modularen Laufzeitsystems auf Patterns; 4.4 Umsetzung von Modularität in verschiedenen Laufzeitumgebungen; 4.5 Modularisierung durch Refactoring; 4.6 Zusammenfassung; 5 Komponentenarchitektur: Entkopplung; 5.1 Hintergrund modularisierter Software; 5.2 Grundlagen von Declarative Services; 5.3 Entkopplung in der Beispielanwendung; 5.4 Exkurs: Zwei weitere SOLID-Prinzipien
- 5.5 Hierarchien in der Beispielanwendung5.6 Schnittstellen in Modulen; 5.7 Zusammenfassung; 6 Systemarchitektur: Schichten; 6.1 Hintergrund von Schichten in der Architektur; 6.2 Entkoppelte Komponenten in der Beispielanwendung; 6.3 Gruppierung von Bundles; 6.4 Schichtenarchitektur mit OSGi; 6.5 Exkurs: Testbarkeit; 6.6 Zusammenfassung; 7 Systemarchitektur: Erweiterbarkeit; 7.1 Hintergrund von Schnittstellen; 7.2 Schnittstellen in der Beispielanwendung; 7.3 Erweiterung der Schnittstellen; 7.4 Erweiterbarkeit mit OSGi; 7.5 Ersetzbarkeit von Implementierungen
- 7.6 Kohäsion in der Beispielanwendung7.7 Zusammenfassung; 8 Systemarchitektur: Wiederverwendbarkeit entkoppelter Komponenten; 8.1 Hintergrund entkoppelter wiederverwendbarer Komponenten; 8.2 Entkopplung von externen Abhängigkeiten; 8.3 Gemeinsam genutzte Aspekte; 8.4 Zusammenfassung; 9 Systemarchitektur: Funktionale Entkopplung; 9.1 Hintergrund funktionaler Entkopplung; 9.2 Parallele Verarbeitung in der Beispielanwendung; 9.3 Versionierung in der Beispielanwendung; 9.4 Zusammmenfassung; 10 Komponentenarchitektur: Frameworks; 10.1 Hintergrund der Frameworks
- 10.2 Umsetzung der Beispielanwendung mit CDI10.3 Umsetzung der Beispielanwendung mit Spring; 10.4 Umsetzung der Beispielanwendung mit Maven; 10.5 Nachstellen des Beispiels; 10.6 Exkurs: Verwendung von OSGi; 10.7 Zusammenfassung; 11 Systemarchitektur: Product Line Engineering; 11.1 Hintergrund zu Product Line Engineering; 11.2 Anwendung von PLE auf die Beispielanwendung; 11.3 Mehrere Produkte; 11.4 Nachstellen des Beispiels; 11.5 Zusammenfassung; 12 Systemarchitektur: Repository; 12.1 Hintergrund von Repositories; 12.2 Ein Repository für OSGi; 12.3 Das p2-Repository für die Beispielanwendung