(07.03.2013 14:35 )Epicon schrieb: Also habe ich das richtig verstanden, dass ich quasi jedem einzelnen Case (?) dann eine eigene Funktion zuschreibe?
Und das geht über die Enums?
Und in die Cases programmier ich dann jeweils die Funktion rein, was gerade passieren soll, er läuft sie nach einander durch und läuft danach in den Rest des Programms?
Ich versuche auch mal eine Erklärung:
- In jedem Rahmen der Case-Struktur ist eine gewisse Funktionalität programmiert.
- Diese wird "angewählt", indem in einem Schieberegister ein Enum übergeben wird. Der Wert des Enum gibt an, welcher Case (= State = Zustand) jeweils ausgeführt werden soll.
- Durch das Schieberegister kann in jedem State neu entschieden werden, welcher als Nächstes aufgerufen wird.
- Initialisierung, Beenden usw. finden in eigenen Cases statt. Außerhalb der State Machine gibt es damit bei kleineren Programmen in der Regel kaum von Code.
Beispiel:
Init => Heizen bis Zieltemperatur erreicht => Messen => Neue Zieltemperatur setzen => Heizen bis Zieltemperatur erreicht => Messen => ... => Ende
Vorteil: Man sieht immer was gerade passiert, der Code ist schön übersichtlich und damit ist die Geschichte leicht zu debuggen.
(07.03.2013 14:35 )Epicon schrieb: Und zu den vorangehenden Posts: das ist genau das Problem. Ich habe absolut null (!!!) programmier Erfahrung und wurde hier ins kalte Wasser geworfen mit einem mega Programm, was ich dann bitte schreiben soll
Wow. Das ist echt hart. Nur selber wenn mich jetzt mein Mitleid übermannt und ich mich hinsetze und Dir den ganzen Kram programmiere, hilft Dir das mal so gar nicht weiter mit Deinem Opa-LV...