Economisez vous !
Je vois encore trop souvent ce genre de code, qui sert à monter des bits de statut en fonction d’un paramètre. Avouez-le ! On a tous fait ça 🙂
IF page = 1 THEN
page_prod := TRUE;
page_reglage := FALSE;
page_modemanu := FALSE;
page_modeauto := FALSE;
END_IF;
IF page = 22 THEN
page_prod := FALSE;
page_reglage := TRUE;
page_modemanu := FALSE;
page_modeauto := FALSE;
END_IF;
IF page = 13 THEN
page_prod := FALSE;
page_reglage := FALSE;
page_modemanu := TRUE;
page_modeauto := FALSE;
END_IF;
IF page = 59 THEN
page_prod := FALSE;
page_reglage := FALSE;
page_modemanu := FALSE;
page_modeauto := TRUE;
END_IF;
Que se passe-t-il avec ce genre de code ?
Déjà … c’est long ! Et puis, si demain vous rajoutez un 5eme bit de status, il vous faut rajouter un 5eme IF … et surtout ne pas oublier de rajouter ce bit là dans chacun des IF précédents. Bref : une tannée !
LA solution en 4 lignes !
page_prod := (page = 1);
page_reglage := (page = 22);
page_modemanu := (page = 13);
page_modeauto := (page = 59);
Conclusion
Cette astuce, pourtant banale, doit être une habitude de programmation à prendre. Elle est plus rapide, flexible et plus simple à débugguer !