Guten Morgen!
Ich will nochmals einen Vorschlag vertiefen.
Es ist tatsächlich die beste Lösung, zunächst einen Ablaufplan zu erstellen.
Noch ist so viel nicht im Programmcode drin. Jedenfalls nicht in diesem hier, wie eben besprochen.
Ein einfach zu handhabendes Programm, um PAPs zu erstellen, findet man hier zum Download: https://www.heise.de/download/product/papdesigner-51889
Bilder sagen mehr als Worte. Beispiel 1 und Beispiel 2 des Programms verdeutlichen, was ein PAp ist.
1. Zuerst muss ein neues Projekt angelegt werden (Projekt -> neues Projekt erstellen).
2. Daraufhin wird Start und Ende des PAP bereits vorgegeben.
3. Auf der rechten Seite hat man einige Symbole zur Auswahl. Diese genügen, um einen PAP zu erstellen.
4. Statt "Hauptprogramm 1" schreibt man z.B. "void loop()". Indem man den Schriftzug anklickt, öffnet man ein Menü, wo man den Text ändern kann.
5. Um zu verdeutlichen, dass es sich bei "loop()" um eine Funktion/Methode handelt, die immer wieder aufgerufen wird - also in einer Schleife abgearbeitet wird, kann man das Symbol für "Schleife" rechts anklicken und es anschließend mit der Maus zwischen "Start" und "Ende" platzieren.
6. Als Schleifenbedingung kann einfach "void loop()" eingetragen werden, damit klar ist, worum es sich bei der Schleife handelt.
7. Zwischen den Symbolen für Schleifenanfang und das Schleifenende können nun weitere Symbole platziert und beschriftet werden. Es gibt fünf weitere Symbole, mit denen ein kompletter Programmablauf beschrieben werden kann, indem die Symbole angeklickt, dann platziert und beschriftet werden. Außerdem kann man dann Verbindungen zwischen den Symbolen herstellen, wo auch Pfeile angetragen werden, so dass die Flußrichtung zu erkennen ist.
8. Um eine Verbindungslinie (Flußlinie) zwischen zwei Symbolen zu erstellen, klickt man zuerst das Symbol für "Verbindungspunkt bzw. Endpunkt einfügen" an. Danach klickt man ein Mal auf das Zielsymbol, dann bewegt man den Mauszeiger zum Symbol, von dem aus die Verbindung starten soll. Es erscheinen so kleine Vierecke mit Richtungsweisern in Grün, wenn man über ein Symbol fährt. Auf diese grünen Vierecke klickt man einmal drauf und es wird dann eine Verbindung in der gewünschten Richtung, zwischen den Symbolen gezogen. Man kann die Verbindungslinien noch beschriften, das ist z.B. bei Verzweigungen üblich, wo dann an jede Flußrichtung "ja" oder "nein" angetragen wird oder auch "wahr" oder "falsch", da eine Verzweigung durch eine Bedingungsprüfung erreicht wird (wie: "ist A > B ?").
Mit diesen wenigen Handgriffen kann man sich nun ziemlich schnell und einfach seinen PAP erstellen.
Welche Vorteile haben PAPs:
- beim Erstellen, muss der Programmablauf (Logik) reflektiert werden, was zu einem besseren Verständnis des Programms schon während des Zeichnens führt
- durch einfache und immer wiederkehrende Symbole wird eine Übersichtlichkeit und sehr gute Lesbarkeit erzeugt
- anhand des Diagrammflusses (Linien/Verbindungen zwischen den Symbolen) kann leicht nachvollzogen werden, was das Programm tut, es fallen Fehler auf und Fehlverhalten in der Programmlogik kann leicht erkannt werden
- einen PAP kann ein Programmierer in einen Programmcode übersetzen, wie C++
- bei einem gut angelegten PAP, der dann auch aus mehreren Teil-PAPs besteht, werden auch große oder "kompliziertere" Projekte übersichtlich und die Programmlogik im Einzelnen gut nachvollziehbar
- Fragen, wie: was tut dieser oder jener Programmteil (if .. while ..) können anhand eines PAP besser nachvollzogen werden, als man dies in Worten erklären kann.
Hält man sich beim Programmieren dann an den PAP, kann so gut wie nichts mehr schief gehen.
MfG
Lesezeichen