NEWS
IF .. THEN .. ELSE versus SWITCH .. CASE ..
-
Wie oben eingestellt, habe ich meine Funktion mittels der SELECT-Kontrollstruktur realisieren können. Wenn wir nun unser Zuhause verlassen, erhalten wir eine detaillierte PUSH-Nachricht auf unsere Handys, in der alle noch offenen Fenster angezeigt werden.
Nun möchte die obige Funktion ein weiteres Mal verwenden: Immer, wenn ich den HĂŒllschutz (Alarmanlage) aktiviere, möchte ich ebenfalls eine solche Meldung erhalten.
Gibt es auch in javascript eine Möglichkeit, so eine Art code library zu etablieren, in der mehrfach genutzter Programm-Code vorgehalten werden kann? Wie funktioniert in diesem Zusammenhang das sog. Common Verzeichnis?
@legro sagte in IF .. THEN .. ELSE versus SWITCH .. CASE ..:
Gibt es auch in javascript eine Möglichkeit, so eine Art code library zu etablieren
Bedingt durch die technischen Möglichkeiten von Node.js gibt es im Skript-Adapter derzeit nur die globalen Skripte, keine Module (was die bevorzugte Lösung wÀre).
Globale Skripte liegen im Ordner "global" und werden vor jedes Skript kopiert, bevor das Skript ausgefĂŒhrt wird.Es erfĂŒllt deinen Zweck, du solltest aber bedenken, dass der Code dann in jedem anderen Skript auch drin ist. Trigger o.Ă€. sollten daher nicht drin sein. Mehrfach genutzte Funktionen kannst du aber z.B. auslagern.
Wie gut das mit Blockly funktioniert, weiĂ ich allerdings nicht. -
@legro sagte in IF .. THEN .. ELSE versus SWITCH .. CASE ..:
Gibt es auch in javascript eine Möglichkeit, so eine Art code library zu etablieren
Bedingt durch die technischen Möglichkeiten von Node.js gibt es im Skript-Adapter derzeit nur die globalen Skripte, keine Module (was die bevorzugte Lösung wÀre).
Globale Skripte liegen im Ordner "global" und werden vor jedes Skript kopiert, bevor das Skript ausgefĂŒhrt wird.Es erfĂŒllt deinen Zweck, du solltest aber bedenken, dass der Code dann in jedem anderen Skript auch drin ist. Trigger o.Ă€. sollten daher nicht drin sein. Mehrfach genutzte Funktionen kannst du aber z.B. auslagern.
Wie gut das mit Blockly funktioniert, weiĂ ich allerdings nicht.Vielen Dank fĂŒr die alles klĂ€rende Antwort!đđ»
Nach dieser ErlĂ€uterung gehe ich davon aus, dass javascript nicht mit einem Compiler sondern Interpreter arbeitet. Code Libraries dĂŒrfte es ohnehin nur auf Compiler basierten Systemen geben.
Seiâs dârum! Um so viel doppelt vorhandenen Quellcode handelt es sich bei meiner Installation sicherlich nicht, dass sich das im System auswirken könnte.
Obâs sich mit Blockly realisieren lĂ€sst? Ich werde es ausprobieren und berichten.

-
Vielen Dank fĂŒr die alles klĂ€rende Antwort!đđ»
Nach dieser ErlĂ€uterung gehe ich davon aus, dass javascript nicht mit einem Compiler sondern Interpreter arbeitet. Code Libraries dĂŒrfte es ohnehin nur auf Compiler basierten Systemen geben.
Seiâs dârum! Um so viel doppelt vorhandenen Quellcode handelt es sich bei meiner Installation sicherlich nicht, dass sich das im System auswirken könnte.
Obâs sich mit Blockly realisieren lĂ€sst? Ich werde es ausprobieren und berichten.

@legro sagte in IF .. THEN .. ELSE versus SWITCH .. CASE ..:
Nach dieser ErlÀuterung gehe ich davon aus, dass javascript nicht mit einem Compiler sondern Interpreter arbeitet.
Jein. Unter der Haube gibts da auch Just-In-Time-Compiler etc. aber an sich hast du Recht.
Code-Libraries gibts in Form von Modulen (andere js-Dateien in bestimmter Form), die man per
requireeinbinden kann - nur fĂŒr eigene Skripte aus dem Skript-Adapter geht das so nicht. -
@legro sagte in IF .. THEN .. ELSE versus SWITCH .. CASE ..:
Nach dieser ErlÀuterung gehe ich davon aus, dass javascript nicht mit einem Compiler sondern Interpreter arbeitet.
Jein. Unter der Haube gibts da auch Just-In-Time-Compiler etc. aber an sich hast du Recht.
Code-Libraries gibts in Form von Modulen (andere js-Dateien in bestimmter Form), die man per
requireeinbinden kann - nur fĂŒr eigene Skripte aus dem Skript-Adapter geht das so nicht.Vielen Dank fĂŒr deine klaren und prĂ€zisen Antworten.
Bei solch ausgezeichneten Hilfestellungen macht mir das Ganze nicht nur SpaĂ, da kommt sogar Freude auf.
Daher möchte ich mutig mich intensiver mit der Programmiersprache JSON beschĂ€ftigen und suche nun nach einer entsprechenden Dokumentation. Zwar ist die Möglichkeit Blockly in Code umzuwandeln eine tolle Sache, um die Programmiersprache kennenzulernen, aber man erhĂ€lt unweigerlich bloĂ einen recht eingeschrĂ€nkten Einblick in diese Welt. WeiĂt du auch hier Rat?
-
Vielen Dank fĂŒr deine klaren und prĂ€zisen Antworten.
Bei solch ausgezeichneten Hilfestellungen macht mir das Ganze nicht nur SpaĂ, da kommt sogar Freude auf.
Daher möchte ich mutig mich intensiver mit der Programmiersprache JSON beschĂ€ftigen und suche nun nach einer entsprechenden Dokumentation. Zwar ist die Möglichkeit Blockly in Code umzuwandeln eine tolle Sache, um die Programmiersprache kennenzulernen, aber man erhĂ€lt unweigerlich bloĂ einen recht eingeschrĂ€nkten Einblick in diese Welt. WeiĂt du auch hier Rat?
-
Vielen Dank fĂŒr deine klaren und prĂ€zisen Antworten.
Bei solch ausgezeichneten Hilfestellungen macht mir das Ganze nicht nur SpaĂ, da kommt sogar Freude auf.
Daher möchte ich mutig mich intensiver mit der Programmiersprache JSON beschĂ€ftigen und suche nun nach einer entsprechenden Dokumentation. Zwar ist die Möglichkeit Blockly in Code umzuwandeln eine tolle Sache, um die Programmiersprache kennenzulernen, aber man erhĂ€lt unweigerlich bloĂ einen recht eingeschrĂ€nkten Einblick in diese Welt. WeiĂt du auch hier Rat?
@legro sagte in IF .. THEN .. ELSE versus SWITCH .. CASE ..:
Programmiersprache JSON
Ich denke du meinst JavaScript. JSON ist lediglich eine davon abgeleitete Notation fĂŒr Daten.
Zum Lernen gibt es unzÀhlige Tutorials, z.B. https://javascript.info/js
Allerdings gehen viele davon aus, dass du den Code in einem Browser ausfĂŒhrst - wir sind aber unter Node.js unterwegs. FĂŒr die Sprachgrundlagen ist das aber erst mal egal. -
@legro Zumindest fĂŒr die ioBroker spezifischen Funktionen gibt es hier eine brauchbare Anleitung mit Beispielen:
https://github.com/ioBroker/ioBroker.javascript/blob/master/docs/en/javascript.md
A.
Vielen Dank fĂŒr diesen Hinweis.
Allerdings gehtâs dort gleich in die Vollen, sodass mir fast schon heiĂ und kalt wird.

Aber eines habe ich hoffentlich schon richtig verstanden: All die vielen tollen Beispiele kann ich ja einfach mittels den Blockly-Bausteinen JS-Funktion mit Ergebnis und Javascript-Funktion einbinden!?

Allerdings wĂŒnsche ich mir noch eine Anleitung, ĂŒber die in JSON verfĂŒgbare(n) Datentypen, Kontrollstrukturen, .. und die ĂŒbliche Syntax. Vieles erinnert mich zwar an die Programmiersprache C, jedoch warâs das auch schon und ich fĂŒhle mich in dieser fĂŒr mich neuen Programmiersprache fast schon wieder wie ein AnfĂ€nger.

-
Vielen Dank fĂŒr diesen Hinweis.
Allerdings gehtâs dort gleich in die Vollen, sodass mir fast schon heiĂ und kalt wird.

Aber eines habe ich hoffentlich schon richtig verstanden: All die vielen tollen Beispiele kann ich ja einfach mittels den Blockly-Bausteinen JS-Funktion mit Ergebnis und Javascript-Funktion einbinden!?

Allerdings wĂŒnsche ich mir noch eine Anleitung, ĂŒber die in JSON verfĂŒgbare(n) Datentypen, Kontrollstrukturen, .. und die ĂŒbliche Syntax. Vieles erinnert mich zwar an die Programmiersprache C, jedoch warâs das auch schon und ich fĂŒhle mich in dieser fĂŒr mich neuen Programmiersprache fast schon wieder wie ein AnfĂ€nger.

Wenn dich das englische nicht schreckt kann ich https://javascript.info/ empfehlen. Einiges davon ist gezielt auf Webseiten und den Einsatz im Browser, die generellen sprach Infos zu synchronen / asynchronen Funktionen sowie Datentypen sind aber soweit nutzbar.
Nebenbei, die Sprache ist JavaScript, nicht JSON.
A.
-
Wenn dich das englische nicht schreckt kann ich https://javascript.info/ empfehlen. Einiges davon ist gezielt auf Webseiten und den Einsatz im Browser, die generellen sprach Infos zu synchronen / asynchronen Funktionen sowie Datentypen sind aber soweit nutzbar.
Nebenbei, die Sprache ist JavaScript, nicht JSON.
A.
@Asgothian said in IF .. THEN .. ELSE versus SWITCH .. CASE ..:
Wenn dich das englische nicht schreckt kann ich https://javascript.info/ empfehlen. ..
Englisch ist doch kinderleicht. In England kann das schlieĂlich jedes Kind.
Schlimmer istâs da schon bei Naturwissenschaften: ErklĂ€rt ein chinesischer Lehrer etwa den Kleinen in prĂ€zisem Chinesisch die Mathematik, so kommtâs den SchĂŒlern dennoch bloĂ spanisch vor. Schlimmer noch! In Spanien sollâs umgekehrt sein.
Vielen Dank fĂŒr den Hinweis. Ich denke, mit den hier erhaltenen Tipps werde ich mich in Javascript zunehmend reinfinden können.
Die Einleitung des von dir verlinkten Tutorials verweist auf TypeScript als âstrict data typingâ - also auf die Welt an Programmiersprachen aus der ich komme. Diese Scriptsprache wird ja auch von ioBroker unterstĂŒtzt und somit sollte ich mich ggf. auch hiermit einmal beschĂ€ftigen.

Kommt Zeit, kommt Rat, kommt Tat ..
-
@Asgothian said in IF .. THEN .. ELSE versus SWITCH .. CASE ..:
Wenn dich das englische nicht schreckt kann ich https://javascript.info/ empfehlen. ..
Englisch ist doch kinderleicht. In England kann das schlieĂlich jedes Kind.
Schlimmer istâs da schon bei Naturwissenschaften: ErklĂ€rt ein chinesischer Lehrer etwa den Kleinen in prĂ€zisem Chinesisch die Mathematik, so kommtâs den SchĂŒlern dennoch bloĂ spanisch vor. Schlimmer noch! In Spanien sollâs umgekehrt sein.
Vielen Dank fĂŒr den Hinweis. Ich denke, mit den hier erhaltenen Tipps werde ich mich in Javascript zunehmend reinfinden können.
Die Einleitung des von dir verlinkten Tutorials verweist auf TypeScript als âstrict data typingâ - also auf die Welt an Programmiersprachen aus der ich komme. Diese Scriptsprache wird ja auch von ioBroker unterstĂŒtzt und somit sollte ich mich ggf. auch hiermit einmal beschĂ€ftigen.

Kommt Zeit, kommt Rat, kommt Tat ..
@legro sagte in IF .. THEN .. ELSE versus SWITCH .. CASE ..:
also auf die Welt an Programmiersprachen aus der ich komme
đđđ
Diese Scriptsprache wird ja auch von ioBroker unterstĂŒtzt und somit sollte ich mich ggf. auch hiermit einmal beschĂ€ftigen.
Dann verweise ich dich mal auf https://forum.iobroker.net/topic/36493/09-09-20-30-einsteiger-cursus-demonstration-von-typescript und das TypeScript Handbook https://www.typescriptlang.org/docs/handbook/ welches ĂŒbrigens auch einen guten Einstiegspunkt fĂŒr Nicht-JS-Programmierer hat.
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen BeitrĂ€ge zu scrollen? Wenn du dich fĂŒr ein Konto anmeldest, kommst du immer genau dorthin zurĂŒck, wo du zuvor warst, und kannst dich ĂŒber neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und BeitrĂ€ge positiv bewerten, um anderen Community-Mitgliedern deine WertschĂ€tzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden đ
Registrieren Anmelden