Schlagwort-Archive: Programmierung

Mal was Neues: SCRATCH

Vor einigen Wochen stieß ich in meiner Rolle als Opa auf die Programmiersprache “Scratch” für Kinder und Jugendliche. Teilweise fand ich dabei auch den Begriff “spielerisch” und Altersangaben ab 4, aber eher ab 8 Jahren. Eine Alters-Obergrenze gab es nicht. Also habe ich mir mal “Scratch” angesehen.

Man findet Scratch über die Seite “scratch.mit.edu“, wobei der Name schon auf den Urheber zeigt. Die “Lifelong Kindergarten Group” am Massachusetts Institute of Technology. Sieht nach einer ordentlichen Quelle aus. Benutzen kann man Scratch via Browser (also ohne Installation, aber eventuell mit Anmeldung), oder als installierte App auf dem PC. Ich habe beides ausprobiert.

Das Logo:
und die Hauptfigur:

Mit Scratch kann man interaktiv Spiele mit Bewegung programmieren und dann auch direkt spielen. Davor habe ich mich eigentlich nie richtig mit der Programmierung von Spielen am PC beschäftigt.

Die Sprachsyntax von Scratch besteht aus Blöcken, die man zu einem Programm/Script zusammenschieben kann. Die speziellen Passformen verhindern von
vornherein gravierende Syntaxfehler. Dazu kommt noch eine farbliche Unterscheidung der Blocktypen (Steuerung, Bewegung, Ereignisse etc.).

Es gibt im Spiel Figuren, die man bewegen kann. Es gibt die Möglichkeit, Figuren zu verändern (Kostüme). Und es gibt Hintergrundbilder, die man auch beeinflussen kann.

Am Besten probiert man es einmal selbst aus. Oder man sieht sich mein sehr einfaches Projekt an: https://scratch.mit.edu/projects/1151304205. Dort kann man auch den Code sehen und diesen ohne Gefahr temporär verändern.

Scratch verbirgt sich auch hinter dem “Programmieren mit der Maus” des WDR.

Es gibt auch ein gutes Buch zu dem Thema:
Michael Weigend, Programmieren lernen mit Scratch – So einfach!
Für Kinder und Erwachsene ab 10 Jahre, Verlag: MITP, ISBN: 9783747504406

Hilfe findet man in der Anwendung selbst und in einem deutschsprachigen WiKi: “https://de.scratch-wiki.info

PS: Man kann auch mit Python und der Python-Bibliothek PyGame ähnliche Spiele programmieren. Ich habe das mal probiert, aber es macht mehr Arbeit und weniger Spaß.

Eine eigene App mit Kotlin

Das Projekt “Eine eigene App” schlummerte schon lange bei mir im Verborgenen. Es wurde immer wieder verschoben und im Frühjahr 2019 war es dann soweit. Die Zeit war reif ….

Das Entwickeln einer Android-App verlangt nach einer soliden Entwicklungsumgebung, mit einem dummen Editor kommt man da nicht richtig voran. “Android Studio” (AS) stand dann schnell fest. Mit den mir bekannten Programmiersprachen war auch nichts zu machen, ich entschied mich für “Kotlin” (ein verbessertes Java). Beide Bestandteile sind für meine Zwecke kostenlos und kommen auch noch aus der gleichen Umgebung, nämlich von Google bzw. von JetBrains. Alles ist gut auf meinem Windows-PC installierbar, nachdem ich auf 12GB Hauptspeicher und auf einen schnellen SSD-Speicher umgerüstet habe. Damit waren die Hauptentscheidungen getrofen.

Der Lernvorgang, Kotlin und AS waren mir fremd, gestaltete sich etwas holprig. Ich selbst lerne gern per Lehrbuch, nur zu Kotlin gab es im Frühjahr 2019 noch keine deutschen Lehrbücher. Im ersten Versuch wollte ich AS und Kotlin gleichzeitig lernen, und das auch noch mit einem englischen Lehrbuch. Der Ansatz führte wohl zu einer lauffähigen App “HalloWorld”, aber diesr Weg war für mich nicht befriedigend.

Im Sommer 2019 gab es dann deutschsprachige Bücher, für mich die Geleghenheit zu einem Neubeginn. Zuerst habe ich mit dem Buch “Dawn Griffiths & David Griffiths, Kotlin von Kopf bis Fuß” pures Kotlin für die JavaVirtualMachine (JVM) gelernt und programmiert. Dabei konnte ich mich in die IntelliJ-Entwicklungsumgebung einarbeiten, die auch im AS eingesetzt wird. Kotlin ist keine einfache Sprache, wenn man von dem Python-Interpreter mit seiner recht einfachen IDLE-Umgebung kommt. IntelliJ mit seinen vielen Fenstern ist eigentlich auch nicht mein Stil. Aber die Beispiele im Buch waren gut, und so hielt ich das ganze Buch durch. Die Sprache Kotlin und die Entwicklungsumgebung IntelliJ waren gleich herausfordernd und/oder nervend.

Der nächste Schritt war dann der Einstieg in die App-Entwicklung mit Kotlin und dem Android Studio. Das Buch “Thomas Theis, Einstieg in Kotlin – Apps entwickeln mit Android Studio” wird mich dabei weiter begleiten. Am Anfang gibt es dort so eine Art Crash-Kurs zur ersten App, der mir aber diesmal sehr viel mehr brachte. Die App konnte anschließend sowohl in einer Emulation auf dem PC als auch auf meinem echten Smartphone laufen. Mein Stand nach Seite 50 (von ca. 500):

Meine erste App auf dem Smartphone

Zum besseren Verständnis des Android Studio verhalf mir das Buch von Uwe Post “Android Apps entwickeln für Einsteiger”.

Bericht wird fortgesetzt ….

In den letzten 4 Wochen ruhte das App-Projekt mehr oder weniger, teilweise wegen geänderten Prioritätet, teilweise auch wegen einer gewissen Frustration. Eine App ist doch ein recht komplexes Gebilde. Hinter der App “Hallo Welt” stecken ca. 2000 (zweitausend) Dateien in 500 (fünfhundert) Verzeichnissen. Gearbeitet habe ich wissentlich an ca. 10 Dateien, die anderen erzeugt das Android Studio automatisch.

Ich konnte aber mittlerweile die Musterlösungen des Buches aus dem Internet herunterladen und auch die ersten zwei Beispiele erfolgreich starten. Auch das war nicht ohne. Jetzt kann ich mich auf zwei Wegen vorwärtsbewegen: selbst die Beispiele programmieren und/oder mir die fertigen Lösungen ansehen.

Das Buch von Thomas Theis ist jetzt (Mitte Juni) durchgearbeitet und ich habe auch alle Musterapps kompiliert und mir angesehen, teilweise auch verändert und erweitert. 80 Apps sind eine stolze Menge. Man hat danach zumindest eine gewisse Vorstellung, wie Android-Apps entwickelt werden. Man lernt aber nicht, wie man im AS nach passenden und geeigneten “Objekten” suchen kann.

Eine wirklich eigene App werde ich aber nur beginnen, wenn ich einen interessierten Partner vor Ort finde.