Kivy-Workshop Roadmap

Was ist Kivy?

  • Kivy ist ein sog. GUI-Framework für Python. GUI bedeutet Graphical User Interface. Zusammen mit Python lassen sich damit Apps erstellen.
  • Wenn man eine App öffnet, hat man Eingabefelder, Buttons, Texte, Bilder und vieles mehr, die sogenannten Widgets. Mit Kivy kann man solche Widgets programmieren.
  • Kivy ist Open SourceFreeware und ein Community-Projekt. Der Quellcode ist also offen einsehbar und jeder, der kann und möchte, kann sich bei der Entwicklung des Frameworks beteiligen. Die aktuelle Version wird immer kostenlos zur Verfügung gestellt.
  • Normalerweise muss man für jedes Betriebssystem den Programmcode einer App neu schreiben. Bei Kivy handelt es sich um eine sog Cross-Plattform, d.h. man muss die Software nur einmal programmieren und sie kann dann für alle gängigen Betriebssysteme (Windows, MacOS, Linux, Android, iOS) erstellt (=kompiliert) werden.
  • Die meisten Beispiele in Kivy basieren auf Objekt-Orientierter Programmierung (=OOP).
  • Die Kivy-Software ist ein externes Package, wird also nicht in der Python-Standardbibliothek geführt. Damit man Kivy nutzen kann, muss es vorher heruntergeladen und installiert werden. Ab dann kann man die Kivy-Module wie bei der Standard-Bibliothek importieren.
  • Bei der Programmierung trennt man bei Kivy den Programmablauf von der Darstellung. Während der Programmablauf in eine normale Python-Datei (*.py) geschrieben wird, kommt alles, was mit der Optik zutun hat, in einer Kivy-Datei (*.kv).

Roadmap

reaktionstest final

In diesem Workshop entwickeln wir eine App, welche die Reaktionsgeschwindigkeit misst. Diese App ist bezüglich Layout und Programmlogik bewusst einfach gehalten, aber es werden daran alle relevanten Schritte bis hin zur fertigen App abgebildet.

Block A

Hier geht es um die Voraussetzungen, um mit Python und Kivy sinnvoll programmieren zu können. 

  1. Zunächst beschäftigen wir uns mit der Einrichtung der Entwicklungsumgebung. Für alle drei großen Desktop-Betriebssysteme (Windows, macOS und Linux) sind die Installationsschritte enthalten.
  2. Es folgt eine Einführung in die IDE PyCharm. Hier werden nur die für unseren Kurs wesentlichen Features besprochen.
  3. Im nächsten Kursabschnitt wird eine Kurzeinführung in Objektorienterte Programmierung gegeben. Einfache Apps könnte man theoretisch auch Prozedural programmieren. Dies ist aber bei Kivy eher unüblich und fast alle Beispiele im Internet basieren auf OOP. Auch hier wird nur so viel zugemutet, wie für den Workshop notwendig.
  4. Dann kümmern wir uns über den grundlegende Struktur der App-Programmierung. Da Kivy auf die App-Erstellung optimiert ist, genügen hier schon wenige Zeilen für ein erstes Ergebnis.

Block B

Dieser Abschnnitt befasst sich ausschließlich mit der Programmierung der Kivy-App.

  1. Nun wird die Grundidee der App Reaktionstest vorgestellt, sowie Vorbereitungen für die Programmierung dieser Anwendung getroffen.
  2. Der erste Teil befasst sich ausschließlich mit dem Layout der App: Wie erstelle ich Widgets und passe sie an? Wie ordne ich die Widgets nach meinen Wünschen an?
  3. Ist das Layout erstellt, wird die Logik der App implementiert: Was passiert, wenn ich auf den Button klicke und wie wird das Ergebnis in der App angezeigt?
  4. Ist die App fertig entwickelt wird das App-Packaging für Windows und Android besprochen. Damit wäre der Entwicklungsprozess beendet.

Anmeldung