bonne pratiques pour structurer un script lua ?
Publié : 23 déc. 2018, 14:27
Je me fais peut-être des nœuds au cerveau pour rien mais bon..
j'ai de plus en plus de scripts divers et je sais qu'il faut commencer le plus vite possible les scrips device avec "if devicechanged[bidule]" pour que les scripts qui ne concernent pas le bidule soient quittés le plus vite possible
Dans mes scripts j'ai
- des variables définies localement
- un appel à un fichier lua placé dans répertoire domoticz avec tout pleins de jolies fonctions (merci à Vil1driver !) à utiliser dans les scripts
Y-a-t-il une bonne pratique.. qu'est-ce qui serait le mieux parmi ces 3 exemples ? intuitivement je dirais le 3e cas
Cas 1 - le fichier lua avec fonction magique est chargé et la variable définie, le tout avant le commandArray ou on vérifie le device
ou
Cas 2 - le fichier lua avec fonction magique est chargé et la variable définie, le tout dans le commandArray ou on vérifie le device
ou encore
Cas 3 - le device est vérifié avant toute chose.. donc variable et chargement de fichier ne sont faits qui si nécessaire
j'ai de plus en plus de scripts divers et je sais qu'il faut commencer le plus vite possible les scrips device avec "if devicechanged[bidule]" pour que les scripts qui ne concernent pas le bidule soient quittés le plus vite possible
Dans mes scripts j'ai
- des variables définies localement
- un appel à un fichier lua placé dans répertoire domoticz avec tout pleins de jolies fonctions (merci à Vil1driver !) à utiliser dans les scripts
Y-a-t-il une bonne pratique.. qu'est-ce qui serait le mieux parmi ces 3 exemples ? intuitivement je dirais le 3e cas
Cas 1 - le fichier lua avec fonction magique est chargé et la variable définie, le tout avant le commandArray ou on vérifie le device
Code : Tout sélectionner
dofile('/home/pi/domoticz/scripts/lua/zzModules.lua')
local MyDebug=true
commandArray = {}
if devicechanged['TestSwitch1'] then
gram(MyDebug,'Hello world')
end
return commandArrayCas 2 - le fichier lua avec fonction magique est chargé et la variable définie, le tout dans le commandArray ou on vérifie le device
Code : Tout sélectionner
commandArray = {}
dofile('/home/pi/domoticz/scripts/lua/zzModules.lua')
local MyDebug=true
if devicechanged['TestSwitch1'] then
gram(MyDebug,'Hello world')
end
return commandArrayCas 3 - le device est vérifié avant toute chose.. donc variable et chargement de fichier ne sont faits qui si nécessaire
Code : Tout sélectionner
commandArray = {}
if devicechanged['TestSwitch1'] then
local MyDebug=true
dofile('/home/pi/domoticz/scripts/lua/zzModules.lua')
gram(MyDebug,'Hello world')
end
return commandArray