NEWS
Diskussionsthread zu "Blockly für Dummies"
-
Hier können Anregungen, Verbesserungsvorschläge zum Verständnis oder gar Fehler zu dem Thread
https://forum.iobroker.net/topic/70481/blockly-for-dummies-starthilfe-und-tipps/
gepostet, und (wenns denn sei muss auch) diskutiert werden.
-
@homoran @Codierknecht Ich würde den Vorschlag machen, dass irgendwo in dickem fetten rot noch steht, dass man Scripte und Blockly tunlichst nicht unter global ablegen sollte bzw. nur, wenn man weiss, was man da tut (eventuell mit kurzer Erklärung).
Gruss, Jürgen
-
@Codierknecht sagte: Auch in JavaScript reservierte Schlüsselworte und Anweisungen wie "object", "true", "string" oder "let" etc. sollte man tunlichst vermeiden.
Vielleicht sollte man einen Link zu einer Liste der reservierten Wörter angeben?
object
undstring
sind klein geschrieben keine reservierten Wörter.
Außerdem sollte man noch erwähnen, dass Variablen und Funktionen nicht den gleichen Bezeichner haben sollten. Blockly prüft das nicht.@codierknecht sagte in "Blockly for dummies" ... Starthilfe und Tipps:
sollten auf keinen Fall Leer- oder gar Sonderzeichen verwendet werden.
... außer
_
und$
.
Du hast übrigens in deinem Beispiel ein Leerzeichen inist Eingeschaltet
, das Blockly in einen Unterstrich wandelt. -
-
@wildbill Die "kurze" Erklärung, warum Scripte nicht unter "Global" liegen sollten, würde mich interessieren. Ich habe zwar 90% meiner Blocklys In Verzeichnissen unter "Common" liegen, aber ein paar Scripte aus meiner Anfangszeit liegen im Root-Verzeichnis (also nicht in global aber auf der gleichen Hierarchie-ebene) ...
-
@wintermute sagte: Erklärung, warum Scripte nicht unter "Global" liegen sollten
Skripte unter "global" werden in alle andere (nicht globale) Skripte kopiert und dort ausgeführt.
-
@paul53 Ah, ok - das war mir neu
Auch die, die nicht in Global sondern im Root-Verzeichnis liegen? -
@wintermute sagte: die nicht in Global sondern im Root-Verzeichnis liegen?
Skripte im Root-Verzeichnis sind normale Skripte, in die auch die globalen Skripte kopiert werden.
-
@wintermute sagte in Diskussionsthread zu "Blockly für Dummies":
Auch die, die nicht in Global sondern im Root-Verzeichnis liegen?
nein!
im root kannst du deine eigene Struktur aufbauen -
@homoran Gut. Dann habe ich es doch nicht so ganz falsch gemacht
-
@homoran sagte in Diskussionsthread zu "Blockly für Dummies":
nein!
im root kannst du deine eigene Struktur aufbauenWofür gibt es denn die Ebene
common
? Ich habe meine komplette Struktur inroot
aufgebaut. -
@meister-mopper sagte in Diskussionsthread zu "Blockly für Dummies":
Wofür gibt es denn die Ebene common
Deko!
Natürlich kann man auch dort seine Struktur drin aufbauen, ist mir im Baum aber eine Ebene zu viel.
-
Hat mal jemand ein schönes einfaches Beispiel (aus dem wahren Leben) für "Listen"?
Am besten etwas ohne Selektor - das würde den Anfänger vermutlich überfordern. -
@codierknecht nutze ich immer wieder zum glätten von Werten
-
@homoran
OK. Wird einen Anfänger in der Form aber vermutlich erschlagenAber man könnte nach dem Muster ja ein einfacheres Beispiel bauen, um jeweils den Mittelwert aus X Temperaturwerten zu erhalten.
Ich bau da mal was ... -
@codierknecht war nur ein Schnellschuss aus dem Bestand
-
@codierknecht sagte: Mittelwert aus X Temperaturwerten zu erhalten.
Gleitender Mittelwert über 24 h:
Anmerkung: Der DP "Temperatur-Liste" muss vom Typ "array" sein.
Durch das Voranstellen des neuesten Wertes in der Liste, kann man im Tab "Objekte" Änderungen in der Liste besser beobachten. -
-
@codierknecht
hier eine andere Variante, läuft gleitend
Länge der Liste wird ganz oben definiert.Die beiden letzten können durch Mittelwert der Liste ersetzt werden
EDIT: Hat Paul ja inzwischen ähnlich gepostet.
bin zu langsam
-
Ich glaube, so eine Mischung aus allem ist für den Anfänger verständlich.
Also den Mittelwert der Tagestemperaturen ermitteln.Trigger auf die Temperatur, Mittelwert ausgeben (im Log. Da einen DP zu hinterlegen kann jeder halten wie er will) und um 00:00 Uhr Liste leeren.
Dass das damit nicht persistent ist, ist soweit klar.
Soll aber nur ein knackiges Beispiel ohne viel Tamtam sein.@paul53 Vorne anfügen macht Sinn.
Edit
Etwa so: