Open Source und Architektur
Liebe Supporter und Fans,
wir haben in unserer Projektbeschreibung angekündigt, eine Open Source Roadmap zu veröffentlichen. Dies möchten wir hiermit tun und obendrauf gibt's noch ein paar Infos bzw. eine Grafik zur Architektur von PipesBox.
Achtung "Nerd-Alert" :-) Mit den Infos werden wohl nur Programmierer und eingefleischte Nerds etwas anfangen können.
Welche Teile werden Open Source?
- Die Kernbestandteile von PipesBox:
- pipes-core (Kernkomponenten auf denen alles andere aufbaut, stellt Kern-APIs zur Verfügung)
- execution/dataflow engine
- Alles was man zum Entwickeln braucht:
- Das Softwareentwicklungskit (SDK) für Module
- pipes-appkit: Das Softwareentwicklungskit (SDK) für Grafische Oberflächen
- Viele Module bzw. Packages (Sammlung von Modulen):
- Web, Text, Utilities, Logik, Tinkerforge, ...
Welche Teile werden nicht Open Source?
- Bestimmte Technologie Packages: Z-Wave, D-Link, Phillips Hue, ...
- Bestimmte Apps: control-app, energy-app
- PipesMarket
- PipesDesigner
In welcher Programmiersprache ist PipesBox geschrieben?
PipesBox ist in Java geschrieben und verwendet OSGi. Es läuft überall, wo eine JavaVM läuft.
Unter welcher Lizenz werden die Quelltexte veröffentlicht?
Apache 2.0: Das ist eine sehr liberale Lizenz. Damit kann man praktisch alles machen.
Wann werden die Quelltexte veröffentlicht?
Mit dem Verschicken der Boxen im März. Eventuell werden wir auch schon Teile früher veröffentlichen.
Wo werden die Quelltexte veröffentlicht?
Bei Github. Wir haben vor einer ganzen Zeit auch schon mal etwas dort eingestellt, ist allerdings im Moment nicht mehr ganz aktuell :-) https://github.com/ezeeb
Was kann ich mit den Quelltexten anfangen?
Man kann sich anschauen wie PipesBox funktioniert. Darüber hinaus kann man als Entwickler vernünftig debuggen. Letztendlich kann man sogar seine eigene PipesBox-Software bauen inkl. Apps und Oberflächen :-)
Was kann ich mit den SDKs anfangen?
Ich kann als Entwickler neue Technologien hinzufügen, d.h. neue Module programmieren, die Geräte einbinden. In Modulen kann man auch komplexe Logik implementieren. Darüber hinaus kann ich mit dem pipes-appkit auch eigene Apps für die PipesBox schreiben. D.h. richtige Interaktive Benutzeroberflächen, wie z.B. die control-app. Perspektivisch werde ich als Entwickler meine selbst geschriebenen Module und Apps auch anderen Nutzern über den PipesMarket zur Verfügung stellen können.
Ist irgendetwas unklar? Habt ihr noch Fragen? Dann immer her damit.. schreibt uns :-)
PS: Hier gibts die Architektur der PipesBox nochmal "in Groß": https://www.dropbox.com/s/pvpyrcbhjzp35ea/PipesBox-Architecture.pdf