C-Programmierung

Modultechnik

Modulschema | | Speicherklassen

Die Modularisierung bzw. Modultechnik ist einer der wichtigsten Grundsteine für professionelle Software-Entwicklung.

Ein professionelles Programm besteht aus zahlreichen - oft Hunderten - von einzelnen Bestandteilen, den Modulen, deren Aufgaben und Schnittstellen klar definiert sind, die einzeln programmiert und getestet werden können, und die zuletzt schrittweise zum vollständigen Programm zusammengesetzt werden.

Die Grundidee ist, eine Aufgabenstellung nicht als Ganzes zu lösen, sondern diese in kleine, überschaubare Teilaufgaben zu zerlegen.

Ein einzelner Programmierer arbeitet daher meist nicht an einem selbstständig ausführbaren Programm, d.h. an allen Modulen gleichzeitig, sondern nur an einem einzelnen Modul.

Die wichtigsten Ziele der Modularisierung sind Information Hiding und Wiederverwendbarkeit.

Ein Modul besteht aus einer nach außen sichtbaren Schnittstelle und der internen Realisierung bzw. Implementierung.

Ein Modul enthält Datendefinitionen und alle unmittelbar darauf arbeitenden Funktionen. Die Daten sind nach außen nicht sichtbar (Kapselung, “Information Hiding”, Datenabstraktion). Der Zugriff auf die Daten ist nur über die Funktionen der Schnittstelle möglich.

Arbeiten mehrere Programmierer parallel, muss jeder Programmierer in der Lage sein, die Fähigkeiten eines anderen Moduls zu nutzen, ohne sich um dessen Innenleben zu kümmern. Dies ist mit den Schnittstellen, d.h. den prototypischen Definition in den Header-Dateien gewährleistet.

Von einem Modul existiert immer nur eine Kopie oder Instanz. Durch eine Weiterentwicklung der Modultechnik, die objektorientierte Programmierung, kann dieser Nachteil beseitigt werden. Die objektorientierte Programmierung erlaubt die gleiche Schnittstelle für mehrere Instanzen der gekapselten Daten zu verwenden.

Modulschema | | Speicherklassen

Options: