Was du in diesem Schritt lernst
- Statischer und aktiver Modus.
- Blöcke von Befehlen.
Processing besitzt zwei verschiedene Modi, in denen ein Programm ablaufen kann.
Statischer Modus
Im statischen Modus werden die Befehle im Programmfenster der Reihe nach (von oben nach unten) abgearbeitet.
flowchart TD
classDef start,stopp fill:#bfffbe,stroke:#4bdc6e,stroke-width:2px,font-weight:600;
classDef befehl fill:#b2dfff,stroke:#0096ff,stroke-width:2px,font-weight:600;
classDef aufruf fill:#fbe49e,stroke:#f1b400,stroke-width:2px,font-weight:600;
classDef verzweigung fill:#ffdcd8,stroke:#cd362c,stroke-width:2px,font-weight:600;
classDef notiz fill:#f3f3f3,stroke:#a99f96,color:#a99f96,stroke-width:1px,stroke-dasharray: 5 5,font-style:italic;
start(Start):::start --> p1[Befehl 1] --> p2[Befehl 2] --> p3@{ shape: text, label: "..." } --> stop(Stopp):::stopp
class p1,p2 befehl
Beispielsweise:
println("1");
println("2");
println("3");
1
2
3
Wurden alle Befehle abgearbeitet (wenn es unten "angekommen" ist), dann endet das Programm. Nun ändert sich nichts mehr. Ein Klick auf die Zeichenfläche oder ein Tastendruck können vom Programm nicht mehr erkannt werden.
Diesen Modus haben wir bisher benutzt.
Aktiver Modus
Im aktiven Modus wird das Programm nicht mehr einfach nur "von oben nach unten" ausgeführt. Stattdessen werden zunächst einmal alle Befehle in den geschweiften Klammern ({ }) von setup() ausgeführt und dann immer wieder alle innerhalb der von draw(). Das Programm endet erst, wenn du den STOP Knopf betätigst.
flowchart TD
classDef start,stopp fill:#bfffbe,stroke:#4bdc6e,stroke-width:2px,font-weight:600;
classDef befehl fill:#b2dfff,stroke:#0096ff,stroke-width:2px,font-weight:600;
classDef aufruf fill:#fbe49e,stroke:#f1b400,stroke-width:2px,font-weight:600;
classDef verzweigung fill:#ffdcd8,stroke:#cd362c,stroke-width:2px,font-weight:600;
classDef notiz fill:#f3f3f3,stroke:#a99f96,color:#a99f96,stroke-width:1px,stroke-dasharray: 5 5,font-style:italic;
start("setup()"):::start --> draw["draw() {"]:::start --> p1[Befehl 1] --> p2[Befehl 2] --> p3@{ shape: text, label: "..." } --> stop("}"):::stopp
stop --> draw
class p1,p2 befehl
Die geschweiften Klammern markieren einen Block: einen zusammengehörenden Programmabschnitt.