Hauptmenü

DOIF

Begonnen von HRueck, 25 September 2016, 13:56:36

Vorheriges Thema - Nächstes Thema

HRueck

Ich habe in meiner fhem.cfg ziemlich viele "wenn/dann" .
Bislang habe ich fast alles mit DOIFs gelöst.
Nun habe ich mal spasseshalber und zur Übung stattdessen Ansätze mit at,notify, if, IF probiert und (natürlich) festgestellt, dass das genauso geht.

Meine Frage ist nun, ob es irgendwelche "Design-Kriterien" gibt, den einen oder den anderen Ansatz vorzuziehen.

Gruss Herbert

CoolTux

Nein gibt es nicht.
Alles eine Frage des Geschmacks und des Wohlbefindens.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

KernSani

#2
Ich denke das ist im Wesentlichen Geschmackssache... ich persönlich finde DOIF etwas übersichtlicher, mache daher mittlerweile alles mit DOIF.

Edit: Mag am Alter liegen, aber mir fällt es schwer zwischen der einen und der anderen Syntax hin- und her zu switchen, daher bleibe ich bei einem ;-)
RasPi: RFXTRX, HM, zigbee2mqtt, mySensors, JeeLink, miLight, squeezbox, Alexa, Siri, ...

HRueck

ok, danke für die Antworten!

DOIF ist sicherlich einfacher zu schreiben und zu lesen.
Wie sieht es mit dem "Rechenaufwand" bei den beiden Ansätzen im Vergleich aus?

Ich habe eine ziemlich "mächtige" cfg, und beobachte gewisse Reaktionszeiten.

Damian

#4
Zitat von: HRueck am 25 September 2016, 18:04:33
ok, danke für die Antworten!

DOIF ist sicherlich einfacher zu schreiben und zu lesen.
Wie sieht es mit dem "Rechenaufwand" bei den beiden Ansätzen im Vergleich aus?

Ich habe eine ziemlich "mächtige" cfg, und beobachte gewisse Reaktionszeiten.

Du wirst keinen nennenswerten Unterschied feststellen.

Zur Info:

Die DOIF-Syntax wird bereits bei der Definition in Perl übersetzt. FHEM-Befehle bleiben natürlich in der FHEM-Syntax.


Gruß

Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF