NEWS
[Doku] Adapter-Entwicklung für Dummies
-
Mit "...für Dummies" habe ich einen bewusst provozierenden Titel gewählt
Es gibt zur Adapterentwicklung sehr viele einzelne Beiträge hier im Forum, in der Dokumentation, usw., aber es fehlt meines Erachtens eine einfache Schritt-für-Schritt-Anleitung, mit der man schnell zum Erfolg kommt.
Das versuche ich hiermit jetzt zu ändern
Erwähnenswert ist sicherlich die Luftdaten-Adapter-Entwicklungs-Doku, aber diese ist mit YouTube umgesetzt und macht es aus meiner Erfahrung nicht unbedingt einfach, das dann 1:1 nachzubilden, da ist oft eine niedergeschriebene Schritt-für-Schritt-Anleitung einfacher.
Hier nun ein erster Start. Innerhalb wohl weniger als 20 Minuten wird eine ioBroker-Testumgebung aufgesetzt, eine Entwicklungsumgebung geschaffen (noch ohne Debuggen), und ein erster Adapter auf dem Testsystem generiert, der das erste "Hallo Welt" ausgibt.
Weiteres folgt nach und nach.Link: Adapter-Entwicklung für Anfänger
Was haltet ihr davon? Ist so was hilfreich für die ioBroker-Community?
-
also ich finde es Klasse. Sicher für den ein oder anderen Einsteiger interessant. Danke dir.
-
Finde es eine gute Sache. Könnte mir auch vorstellen, dass das ein Platz in den offiziellen Docs hätte, falls gewünscht.
-
@foxriver76 sagte in [Doku] Adapter-Entwicklung für Dummies:
Finde es eine gute Sache. Könnte mir auch vorstellen, dass das ein Platz in den offiziellen Docs hätte, falls gewünscht.
Danke. Das ist auch mit ein Ziel Daher ist meine Doku auf GitHub und dank Markdown-Auszeichnungsspache später leicht überführbar.
Ziel ist auch, ich stelle hier quasi meine eigenen Stolpersteine bloß (also wo ich scheiter(t)e), und setze sie in der Doku um, aber dabei auch die bestehenden Ressourcen (Doku, Forumbeiträge, etc.) zu referenzieren.
Als nächstes plane ich, Schritt für Schritt eine simple Adapter-Konfiguration in der Doku zu zeigen, mit verschiedenen Möglichkeiten (boolean, string, Tabelle mit Werten, ...), mit Default-Werten. Da sind ja dann schon mal 3 Dateien anzufassen (inkl. Übersetzung). Alles ganz easy also, und ioBroker bringt ja alles mit... Man muss nur wissen, wie
-
sehr geil. Sehr nützlich. Top
Eine Bitte hätte ich allerdings...Falls es Unterschiede Windows/Linux gibt, dann bitte (wenn irgendwie möglich) auch die Windowsseite aufzeigen.
-
@Mic sagte in [Doku] Adapter-Entwicklung für Dummies:
Was haltet ihr davon? Ist so was hilfreich für die ioBroker-Community?
JA! JA! hab ich schon JA! gesagt?
Ein paar Anmerkungen habe ich noch:
Erstellung des Templates (Punkt 5/6)
-
Das sind Optionen, die zum Teil vom Zweck des Adapters abhängen, zum Teil Vorlieben des Entwicklers sind. Hier sollte deutlicher sein, dass man eine Wahl hat.
Beispielsweise ist "How should the main adapter file be structured: With some methods" die alte Variante, wie es bisher oft gemacht wurde. Mit Klassen ist die moderne Variante. Ich würde letzteres empfehlen, ist aber Geschmackssache. -
Da du eh mit VSCode arbeitest, gibt es eine meiner Meinung nach einfachere Variante, den Adapter auf den Dev-Rechner zu bekommen:
- in VSCode die Konsole öffnen (STRG+Ö)
- zum Ziel-Verzeichnis wechseln:
cd c:\iobroker\node_modules\
- Adapter-Creator auf der Kommandozeile ausführen:
npx @iobroker/create-adapter
- warten bis der fertig ist (Erstellt alle Dateien, installiert Dependencies, etc...).
Entwicklung / Testen auf unterschiedlichen Rechnern
Manche entwickelt auf einem System und testen den Adapter auf einem anderen. Auf dem Entwickler-System ist daher nicht unbedingt eine ioBroker-Installation nötig.
In diesem Fall ist meiner Meinung nach die einfachste Variante, den Adapter aufs Test-System zu bekommen, hier beschrieben: https://forum.iobroker.net/topic/17200/aufruf-iobroker-adapter-creator-testen/14 -
-
Eine Klasse Idee die sicher dafür Sorgen wird das es in Zukunft auch weiterhin viele neue Adapter gibt
-
Vielen Dank an alle für das positive Feedback.
@AlCalzone
Super, vielen Dank für den Input.Punkt "ERSTELLUNG DES TEMPLATES (PUNKT 5/6)"
Dies habe ich soweit berücksichtigt und eingebaut.Punkt "ENTWICKLUNG / TESTEN AUF UNTERSCHIEDLICHEN RECHNERN":
Werde ich später nachliefern. -
@htrecksler sagte in [Doku] Adapter-Entwicklung für Dummies:
Eine Bitte hätte ich allerdings...
Falls es Unterschiede Windows/Linux gibt, dann bitte (wenn irgendwie möglich) auch die Windowsseite aufzeigen.
Gerne, werde ich ebenso später versuchen, entsprechend zu berücksichtigen.Generell:
Die Krux einer möglichst einfach gestalteten Dokumentation (also lt. Titel "... für Dummies") ist, dass man nicht alle möglichen Szenarien abbilden sollte, eben um es einfach und möglichst kurz zu halten. Ich muss mich daher jetzt am Anfang auf ein bestimmtes Setup festlegen, denn sonst wird es wieder zu kompliziert.
Der Rest folgt aber dann nach und nach, z.B. mit Querverweisen etc. Siehe auch @AlCalzone Hinweis zum Punkt "Test/Entwicklung auf unterschiedlichen Rechnern".Mal sehen, als Erstes zählen mal Taten (in diesem Fall von mir ) und eine Basis, die es auszubauen gilt...
-
@Mic sagte in [Doku] Adapter-Entwicklung für Dummies:
Falls es Unterschiede Windows/Linux gibt
Wenn du wie beschrieben VSCode verwendest, sollte es keine Unterschiede geben, abgesehen von der ioBroker-Installation die anderweitig dokumentiert ist. Bei Nutzung des Adapter-Creators auf der Kommandozeile, reicht auch ein Befehl damit du startklar bist. Hinzufügen von Abhängigkeiten mittels
npm
funktioniert auf beiden Systemen identisch.