29
Programmieren im Großen von Markus Schmidt und Benno Kröger

Programmieren im Großen von Markus Schmidt und Benno Kröger

Embed Size (px)

Citation preview

Page 1: Programmieren im Großen von Markus Schmidt und Benno Kröger

Programmieren im Großen

von

Markus Schmidtund

Benno Kröger

Page 2: Programmieren im Großen von Markus Schmidt und Benno Kröger

Programmieren im Großen Markus Schmidt und Benno Kröger

2

Themenübersicht

EinführungTerminologieDokumentationAnwendung

Page 3: Programmieren im Großen von Markus Schmidt und Benno Kröger

Programmieren im Großen Markus Schmidt und Benno Kröger

3

Themenübersicht

EinführungTerminologieDokumentationAnwendung

Page 4: Programmieren im Großen von Markus Schmidt und Benno Kröger

Programmieren im Großen Markus Schmidt und Benno Kröger

4

Einführung

Was ist Programmieren im Großen?

- Mehrere Entwickler an einem Projekt

- kommerzielle Softwareentwicklung

Page 5: Programmieren im Großen von Markus Schmidt und Benno Kröger

Programmieren im Großen Markus Schmidt und Benno Kröger

5

Besonderheiten

- Klare Aufgabenverteilung

- Keine Allrounder nötig

- Es werden nicht unbedingt nur Informatiker benötigt

Page 6: Programmieren im Großen von Markus Schmidt und Benno Kröger

Programmieren im Großen Markus Schmidt und Benno Kröger

6

Themenübersicht

EinführungTerminologieDokumentationAnwendung

Page 7: Programmieren im Großen von Markus Schmidt und Benno Kröger

Programmieren im Großen Markus Schmidt und Benno Kröger

7

Terminologie

Pattern FrameworksKomponenten

Page 8: Programmieren im Großen von Markus Schmidt und Benno Kröger

Programmieren im Großen Markus Schmidt und Benno Kröger

8

Pattern

Was sind Pattern?

- Beschreibungen für und Lösungen von (wiederkehrenden) Problemen

- Entwurfsmuster (Design Pattern)

Page 9: Programmieren im Großen von Markus Schmidt und Benno Kröger

Programmieren im Großen Markus Schmidt und Benno Kröger

9

Beispielpattern

Page 10: Programmieren im Großen von Markus Schmidt und Benno Kröger

Programmieren im Großen Markus Schmidt und Benno Kröger

10

Patternstandards

COM+ und .NET (Microsoft)

EJB (Sun)

CORBA (OMG)

Page 11: Programmieren im Großen von Markus Schmidt und Benno Kröger

Programmieren im Großen Markus Schmidt und Benno Kröger

11

Terminologie

Pattern FrameworksKomponenten

Page 12: Programmieren im Großen von Markus Schmidt und Benno Kröger

Programmieren im Großen Markus Schmidt und Benno Kröger

12

Frameworks

Was sind Frameworks?

- wieder verwendbare Einzelkomponenten

- vorgegebener Rahmen zur Weiterentwicklung- uns bekannt als abstrakte Klassen

- keine Applikationen

Page 13: Programmieren im Großen von Markus Schmidt und Benno Kröger

Programmieren im Großen Markus Schmidt und Benno Kröger

13

Frameworks Aufbau

- Programmcode muss nach Standard geschrieben sein

- Funktion muss in Designbook dokumentiert werden

- Struktur muss dem Benutzer bekannt sein

Page 14: Programmieren im Großen von Markus Schmidt und Benno Kröger

Programmieren im Großen Markus Schmidt und Benno Kröger

14

Vorteile von Frameworks

- können wieder benutzt werden

- sparen Entwicklungszeit

- verkürzen den Programmcode

- sind vielseitig einsetzbar

Page 15: Programmieren im Großen von Markus Schmidt und Benno Kröger

Programmieren im Großen Markus Schmidt und Benno Kröger

15

Terminologie

Pattern FrameworksKomponenten

Page 16: Programmieren im Großen von Markus Schmidt und Benno Kröger

Programmieren im Großen Markus Schmidt und Benno Kröger

16

Komponenten

Was sind Komponenten ?

- Ein zusammenhängendes Softwarepaket, das unabhängig entwickelt wird und unverändert mit anderen Komponenten kombiniert werden kann, um ein größeres Projekt zu realisieren

Page 17: Programmieren im Großen von Markus Schmidt und Benno Kröger

Programmieren im Großen Markus Schmidt und Benno Kröger

17

Merkmale der Komponenten

- Benutzer weiß nicht, wie die Daten verarbeitet werden (Blackbox)

- „Eingabe rein - Ausgabe raus“

-Vielseitig verwendbar „Wiederverwendbarkeit“

- Zugriff und Kommunikation über Interfaces

Page 18: Programmieren im Großen von Markus Schmidt und Benno Kröger

Programmieren im Großen Markus Schmidt und Benno Kröger

18

Komponentensoftware

Früher nur zwei “Extreme“ : Standardsoftware und Eigenentwicklung

Page 19: Programmieren im Großen von Markus Schmidt und Benno Kröger

Programmieren im Großen Markus Schmidt und Benno Kröger

19

Standardsoftware

Keine direkte Problemlösung

man muss sich anpassen

viele Überfunktionen

Abhängigkeit vom Hersteller

BilligUpdates einfach zu

erhaltenanerkannter

StandardKompatibilität

meist gewährleistet

Page 20: Programmieren im Großen von Markus Schmidt und Benno Kröger

Programmieren im Großen Markus Schmidt und Benno Kröger

20

Eigenentwicklung

TeuerKompatibilitäts-

problemeUpdates müssen selbst

gemacht werdenWenn fertig, meist

schon wieder veraltet

Optimale Lösungenkeine

ÜberfunktionenUnabhängigkeit

Page 21: Programmieren im Großen von Markus Schmidt und Benno Kröger

Programmieren im Großen Markus Schmidt und Benno Kröger

21

Komponentensoftware

Mittelweg zwischen Eigenentwicklung und Standardsoftware

Nur einzelne Komponenten kaufenkeine kompletten SystemupdatesKomponenten vielseitig einsetzbarKompatibilität gegeben

Page 22: Programmieren im Großen von Markus Schmidt und Benno Kröger

Programmieren im Großen Markus Schmidt und Benno Kröger

22

Themenübersicht

EinführungTerminologieDokumentationAnwendung

Page 23: Programmieren im Großen von Markus Schmidt und Benno Kröger

Programmieren im Großen Markus Schmidt und Benno Kröger

23

Dokumentation

DesignbooksCookbooks

Page 24: Programmieren im Großen von Markus Schmidt und Benno Kröger

Programmieren im Großen Markus Schmidt und Benno Kröger

24

Designbooks

- schreibt der Entwickler selbst

- von Entwicklern für Entwickler

- z.B. für Frameworks

Page 25: Programmieren im Großen von Markus Schmidt und Benno Kröger

Programmieren im Großen Markus Schmidt und Benno Kröger

25

Cookbooks

- für Anwender

- wird nicht vom Entwickler geschrieben

- erklären, wie man das Programm oder die Komponente benutzt

Page 26: Programmieren im Großen von Markus Schmidt und Benno Kröger

Programmieren im Großen Markus Schmidt und Benno Kröger

26

Typischer Cookbookaufbau

- Ziel der Anwendung- einzelne Schritte (how to do)- Beispieleingabe oder Beispielprogrammcode

Page 27: Programmieren im Großen von Markus Schmidt und Benno Kröger

Programmieren im Großen Markus Schmidt und Benno Kröger

27

Themenübersicht

EinführungTerminologieDokumentationAnwendung

Page 28: Programmieren im Großen von Markus Schmidt und Benno Kröger

Programmieren im Großen Markus Schmidt und Benno Kröger

28

Anwendung

- Komponenten- und Frameworkentwicklung wird außerhalb der Programmentwicklung gemacht (teures Programmieren)

- Softwareentwicklung kann so günstiger realisiert werden

- je größer die Anzahl der Entwickler, desto mehr nicht Informatiker sind dabei

Page 29: Programmieren im Großen von Markus Schmidt und Benno Kröger

Programmieren im Großen Markus Schmidt und Benno Kröger

29

LiteraturverzeichnisM.M. Burnett: Visual object-oriented programming -Concepts and environmentJ. Hopkins: Component primerG.T. Heineman: Component-based software engineeringG. Larsen: Designing component-based frameworkC. Kobryn: Modelling components and frameworkswith UMLC. Szyperski: Component softwareL. Martin: Visual composition of components