• Keine Ergebnisse gefunden

Design-Erwägungen

N/A
N/A
Protected

Academic year: 2022

Aktie "Design-Erwägungen "

Copied!
5
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Prof. Dr. A. Christidis • WS 2016/17

Design-Erwägungen

 C gehört zur Gruppe imperativer Programmiersprachen.

Diese sind eine Umsetzung der von-Neumann-Architektur:

Befehle sind im selben Medium gespeichert wie die Daten, die sie bearbeiten.

Im Gegensatz dazu beschreiben („deklarieren“) deklarative (funktionale, logikbasierte oder regelbasierte) Sprachen ein gewünschtes Ergebnis, dessen konkrete Verarbeitungsschritte von einem Compiler oder Interpreter abgeleitet und angesteuert werden.

 Die Gruppe imperativer Programmiersprachen umfaßte nacheinander die maschinenorientierten Sprachen (z.B.

Assembler), die prozeduralen Sprachen (FORTRAN, ALGOL, C, Pascal) und die objektorientierten Sprachen (z.B. Smalltalk, EIFFEL, C++, Java, C#).

(2)

Prof. Dr. A. Christidis • WS 2016/17

Design-Erwägungen

Imperativen, prozeduralen Sprachen (wie C) liegt als Konzept die Programmierung von Prozeduren zugrunde – von Befehlsfolgen zur Lösung wiederkehrender Aufgaben, die voneinander unabhängig unter einem (Funktions-) Namen eingesetzt (aufgerufen) werden können.

Strukturiertes Softwaredesign (structured) liegt vor, wenn ein Programm in Funktionen (Unterprogramme) zerlegt wird, die zueinander möglichst wenige Querbeziehungen haben. Dadurch entsteht in der Software eine Aufrufhierarchie der Funktionen.

Man spricht vom „Programmieren im Kleinen“.

 Für größere Softwarepakete („Programmieren im Großen“

– z.B. Plattformen) eignet sich besser ein modulares Softwaredesign, bei dem Funktionen und Daten zu größeren Einheiten (Modulen) zusammengefaßt werden.

(3)

Prof. Dr. A. Christidis • WS 2016/17

Design-Erwägungen

Schema strukturiertes Softwaredesign:

Fkt.- Rumpf

M2F1

Fkt.- Rumpf

M2F2

Fkt.- Rumpf

M2F3 Fkt.-

Rumpf M1F1

Fkt.- Rumpf

M1F2

Daten M2D1

Daten M2D2 Daten

M1D1

Programm (Hauptfunktion)

Schnittst.

M2F1

Schnittst.

M2F3 Schnittst.

M1F1

Schnittst.

M1F1

Schnittst.

M2F1

Schnittst.

M2F3

Hierarchiestufen

(4)

Prof. Dr. A. Christidis • WS 2016/17

Design-Erwägungen

Schema modulares Design mit Import-/ Export-Schnittstellen:

Fkt.- Rumpf

M2F1

Fkt.- Rumpf

M2F2

Fkt.- Rumpf

M2F3

Daten M2D1

Daten M2D2 Fkt.-

Rumpf M1F1

Fkt.- Rumpf

M1F2 Daten

M1D1

Programm (Hauptmodul)

Export-S.

M2F1

Export-S.

M2F3 Export-S.

M1F1

Import-S.

M1F1

Import-S.

M2F1

Import-S.

M2F3

M1, M2 sind Dateien!

Modul M1 Modul M2

(5)

Prof. Dr. A. Christidis • WS 2016/17

Design-Erwägungen

Modulares Softwaredesign wird als Vorstufe der Objekt- orientierung betrachtet: Es faßt Funktionen und Daten zu eigenständigen Einheiten zusammen (Kapselung) und

 erhöht Abstraktionsniveau (Black-Box)

 erleichtert Austauschbarkeit/ Versionsverwaltung, solange die (Export-/Import-) Schnittstellen eingehalten werden

 verbirgt interne Struktur (Information Hiding / Copyright)

 verbessert Prüfbarkeit (ggf. in unterschiedlichem Kontext);

letztere ist bei Implementierung größerer Softwarepakete (z.B. Fenstersysteme) zusätzlich erschwert durch die vielfach benötigte Wiedereintrittsinvarianz (engl. reentrancy):

Reentrante (z.B.: Fenster-) Funktionen erlauben mehrfache,

geschachtelte Aufrufe (die keine Rekursion darstellen). SPprintf-Aufruf - aus redisplay

- aus SPprintf

Referenzen

ÄHNLICHE DOKUMENTE

Leitung profilierte sie sich zum wichtigsten Erinnerungsort an die zweite deutsche Diktatur. Dank Knabe gelang es, alle politisch motivierten Angriffe auf die

Das neue Programm des Vital-Zentrums in Oggersheim, Raiffeisenstraße 24, für die Monate Oktober bis Dezember 2019 liegt vor.. Mit verschiedenen Veranstaltungen und Kursen will das

Die plattform fordert deshalb weiterhin eine mehrmonatige Elternzeit, aufteilbar zwischen den Eltern und mit fixen Ansprüchen für Väter und Mütter, für letztere mindestens aber

Kündigung fällig werde und daher die Verjährung auch erst dann beginne. Gerade bei Darlehen unter Familienangehörigen, die auf sehr lange Zeit gewährt würden, könne es zudem

b) sich einer monatlichen Depotmedikation mit Xeplion intramuskulär durch das Ambulatorium … zu unterziehen. Ausserdem wurde der Beistand mit der Überwachung dieser Massnahmen

Eine Zustimmung zu der vom Kläger ins Auge gefassten Ehe lässt sich nur dann verantworten, wenn zuvor der Tatbeweis erbracht wurde (z. durch ein Zusammenleben oder sonst

Lieferant: Rauch Möbelwerke GmbH Alle Maße sind ca. Maße in cm 09-03-21 Maß-, Farb-, Modellabweichungen und Preisirrtümer

Diese Leuchte enthält eingebaute LED-Lampen der Energieklassen A++ - A*. Die Lampen können in der Leuchte nicht ausgetauscht werden.. *)Auf einer Skala von A++ (höchste