Hirdetés

Új hozzászólás Aktív témák

  • nope
    tag

    Nope!

    A GOTO-kat nem tudtam megkerülni, viszont elkezdtem folyamatábrát rajzolni, és mind a négy esetre If/Else kapcsolattal létrehoztam egy-egy végpontot egyetlen Taskon belül. Ennek 2 kimenete simán visszafut a kiindulási pontba és kikapcsolva tartja eközben az AIRPLAN módot ([%Home=0, %IDOPONT=1] és [%Home=1 %IDOPONT=0]), egy kimenete bekapcsolja az AIRPLAN-t (%Home=1 %IDOPONT=1), majd visszalép az első sorra és újra ellenőrzi a változókat, és van neki egy kimenete, ami STOP utasításba torkollik (%Home=0, %IDOPONT=0), tehát mindaddig körbe-körbe malmozik a rutin, amíg el nem éri a STOP állapotot -reményeim szerint.

    Teasüti!
    Nem fafejűségből nem követtem egy idő után amit ajánlottál, hanem mert még nem ér fel addig az eszem, hogy le tudjam azokat követni -szóval mégiscsak fafejűségből :B . Most már magam is mosolygok a kezdeti botladozásaimon, és érzékelem, hogy még mindig nagyon az elején járok.

    Hétfőn beszámolok az eredményekről.

    Addig is mindannyiótoknak köszönöm a sok-sok segítséget!

    Az adott problémától függetlenül:

    Próbálj meg modulárisan gondolkodni, ez esetben taskokra szétszedni a dolgot. Az időzítést csináld meg contextekben, amelyek adott taskot hívnak. Esetleg azok feltételtől függően másik taskot, és így tovább. A goto parancs már 25 éve is kerülendő volt, illett mindenre külön függvényt (processt, taskot) írni.
    Goto-val kevésbé átlátható, és könnyebb végtelen ciklusba kergetni.
    Ha csak taskokat használsz, akkor feltétel teljesül, task elindul, esetleg indít más taskokat, visszatér, ennyi. Ne legyen olyan task, ami folyamatosan fut (persze ez nem mindig érhető el, de törekedni kell rá).
    A folyamatábra nagyon jó ötlet, és egyszerűbb is vele a munka, ha nincs goto.

    De nem akarlak nagyon megkavarni, csak már nekem is sikerült olyan profile-t írnom, amelyik folyamatosan futott és ette az aksit (konkrétan a Battery Changed event meglehetősen gyakori esemény, volt vele gondom).
    Szóval ahogy átlátod és megérted :)

    Nope

Új hozzászólás Aktív témák