Passend zur Zeitumstellung habe ich eine Uhr programmiert. Sie zeigt die Zeit so an, wie wir in Bayern sie verstehen können, denn wie alle wissen, laufen die Uhren bei uns ja anders. Das ganze ist eine responsive WebApp, die ihr entweder online oder offline nutzen könnt. Im Video wird auch das Einbetten als iFrame in einen Digiscreen oder in eine Lernplattform wie Moodle oder mebis gezeigt.
Die visuelle Programmiersprache Scratch ist ideal zum Programmieren lernen. Doch der festgelegte 4:3-Bildschirmformat begrenzt die Anwendung auf Geräten wie iPads oder Handys. Abhilfe schafft TurboWarp. Projekte können als HTML oder ZIP exportiert werden, wodurch sie offline nutzbar sind oder in Lernplattformen eingebettet werden können. Besonders praktisch ist die dynamische Anpassung an die Fenstergröße. Ein Beispielprojekt, das Snake-Spiel, zeigt die Flexibilität dieser Lösung auf verschiedenen Geräten und Browsern. Probiert es aus!
Vorschau
TurboWarp Desktop und Packager
Es gibt aber eine Möglichkeit, Scratch Projekte als dynamische, responsive Universalapps zu exportieren.
Der Turbowarp Desktop bietet eine Programmieroberfläche, die den Funktionsumfang von Scratch um etliche Funktionen erweitert.
So kann man zum Beispiel die Erweiterung Runtime-Options hinzufügen und erhält Programmierblöcke, wie stage.width und stage.height.
HTML oder ZIP
Die hier programmierten Apps können nun mit dem Turbowarp Packager entweder als html oder als zip-Datei ausgegeben werden.
Mit der HTML Datei können die Scratch Apps offline auf Geräten laufen (auf dem iPad kann man hier z. B. die Documents von Readdle verwenden). Die Zip Datei kann man verwenden, um die App auf Lernplattformen wie Moodle oder mebis einzubetten und zu verwenden.
Dynamic Stage Resize
Beim Paketisieren hat man nun auch die Option: „Dynamically resize size to match window size“, das heißt, die App ist immer so groß, wie das Browserfenster, in dem sie aufgerufen wird.
Natürlich muss man beim Programmieren solcher Apps nun Rücksicht darauf nehmen, dass sich diese Dimensionen ständig ändern können, bzw. bei jedem Start der App anders sind. Aber man kann z. B. die Größe und die Position der Figuren abhängig von den stage Werten skalieren.
Snake für alle Plattformen
Damit man mal in der Praxis sehen kann, wie das funktioniert habe ich den Klassiker Snake als dynamische WebAPP mit TurboWarp Scratch programmiert.
Probiert es aus, egal auf welchem Gerät oder Browser: