Struktogramme (2)
Beim Arbeiten mit Struktogrammen stellen sich
von selbst gute Arbeitsregeln heraus:
- Die Zerlegung darf nicht zu tief werden;
wenn bei normaler Schriftgröße ein Blatt DIN A4 nicht ausreicht,
sollte man einen Baustein oder mehrere davon
(nach Festlegung ihres Kontraktes!) herausziehen.
- Eine Zerlegung in mehr als allenfalls 3 Ebenen
ist nicht mehr gut zu überschauen,
und daher vermutlich erst mal falsch!
- Auch wenn man nicht mehr mit Struktogrammen arbeitet
(sie kommen vor allem in Schulbüchern und Einführungsvorlesungen
vor),
gelten beim Arbeiten am Bildschirm (oder mit Papier und Bleistift,
auf einzelnen Blättern) entsprechende Erfahrungsregeln.
- Ein Baustein, der mehr als einen Schirm oder eine Seite füllt,
ist zu groß (außer es handelt sich um eine rein schematische
Wiederholung einander entsprechender Einträge).
- Was sich nicht mit einem Blick erfassen läßt,
sollte man besser untergliedern,
und dabei jeweils einen Kontrakt formulieren.
Das fördert erheblich das Problemverständnis, und damit
die Chancen auf eine einfache und korrekte Lösung.
Für einige hier noch nicht besprochene
Varianten der grundlegenden
Kontrollanweisungen gibt es auch Vorschläge für
entsprechende Struktogramme, die mehr oder weniger gelungen sind.
Vieles ist hier Geschmackssache; jedenfalls kommt man mit den oben
angegebenen Grundstrukturen im Prinzip allein aus, und in der
Praxis zumindest recht weit.
Bemerkung zu Sprüngen
Ein Konzept läßt sich mit Struktogrammen,
und auch mit den hier besprochenen
Kontrollstrukturen, nicht
ausdrücken, und das ist gerade eine ihrer Stärken:
die Vorstellung von einem Prozessor, der den Programmtext
durchläuft und dabei gelegentlich an eine andere Stelle springt.
Tatsächlich kommt es uns bei der
Strukturierten Programmierung gar
nicht darauf an, Sprünge zu vermeiden, wie man anfangs glaubte;
auf der Ebene der Maschinenbefehle sind sie sogar unverzichtbar.
Zu vermeiden sind nur Sprünge an beliebige Stellen,
(die sogenannte "Spaghetti-Programmierung"),
und unsere Konstrukte erlauben dies nicht, denn sie
enthalten das Konzept der "Stelle" überhaupt nicht.
zurück |
Inhalt | Index |
vor |
Vorlesung
Klaus Lagally, 22. Februar 2000, 19:36