Lehrzeit

Schule & Informatik

Kategorie: Sonstiges (Seite 2 von 70)

Ferienupdate

Die ersten zwei Wochen der Sommerferien sind nun ins Land gegangen und ich kämpfe immer noch mit der Umstellung vom Schulalltag in den Ferienalltag – wobei … für mich sehen die Alltage eigentlich sehr ähnlich aus, mal abgesehen vom langen Ausschlafen bis 7 Uhr. Der Grund für die Ähnlichkeiten könnte daran liegen, dass meine Familie eine Krankheitswelle erwischt hat und wir uns daher alle zu Hause verbarrikadiert haben. Mich hat es zum Glück nicht so schlimm erwischt und so versuche ich, so oft es geht, etwas Neues auszuprobieren.

Urban Sketching

In ersteren Linie experimentiere ich mit Urban Sketching, das ich schon eine ganze Zeit lang beobachte. Urban Sketching ist dabei eine Bewegung, die versucht, den Alltag der Städte in schnellen Skizzen basierend auf Tuschestiften und anschließendem Aquarellieren festzuhalten. Meine ersten Versuche sind nun nicht wirklich in der Stadt, aber ich habe für mich eine Technik gefunden, die mir Spaß macht: Ich aquarelliere erst und skizziere dann drüber. Dadurch bekommen die Bilder ein komplett anderes Aussehen als die meisten anderen Sketches, aber das „Ausmalen“ der Tuscheskizzen finde ich irgendwie unspaßig.

image

image

Was mir noch nicht so gefällt, ist das Spiel mit der Farbtiefe. Also vorne intensive Farben, hinten flachere eher ins Graublau gehenden Farben. Aber ich habe schon mal Menschen hin bekommen. Und das Zeichnen bzw. hier nur Skizzieren von Menschen finde immer am schwierigsten von allem. Zum Glück sieht man das beim Urban Sketching lockerer.

Fotografieren

Neben dem Zeichnen Fotografiere ich auch ganz gerne. Nach etlichen Versuchen mit echten Kameras bleibe ich inzwischen bei meinem Handy als Kamera. Ich habe es immer dabei, die Qualität genügt mir und ich finde die Möglichkeit der diversen Apps ganz gut. Und es geht schnell und spontan, wie eben das Skizzieren.

FullSizeRender-2

image image image image

Schreibtisch Update

Dieser Beitrag ist im Übrigen auf meinem neuen Schreibtisch bzw. Elektronikanordnung geschrieben. Den in Zukunft möchte ich meine Unterrichtsvorbereitung schwerpunktmäßig auf einem iPad Pro mit Stift (und Bluetooth-Tastatur) machen und dann daraus auch gleich Filme erstellen. Das verbindet dann hoffentlich meinen Spaß den Skizzierens mit der Freude sich neue Dinge für den Unterricht zu überlegen. Und ich habe eine iPad-Hülle von Proper, so dass ich das iPad in verschiedenen Situation – auch im Unterricht mit einer Hand und Stift – benutzen kann.

image

Und da Java auf iOS nicht läuft, wechsel ich vielleicht doch auf Python in der kommenden Q11. Dafür muss ich aber noch eine passende Python-IDE für iOS finden, Pythonista könnte da was sein. Und ich brauch noch eine Idee für das Abfilmen des iOS-Bildschirms, um mein Programmieren zu erklären. Aber anscheinend geht das ganz einfach auch ohne irgendwelche Apps über QuickTime und einem verbundenen Mac.

Pokemon GO (Teil 3)

Abschließend noch der Versuch einer Analyse des Spiels in Bezug auf möglicherweise verwendeten Entwurfsmuster. Entwurfsmuster sind im übrigen mehr oder weniger feststehende Programmierlösungsansätze für wiederkehrende Problemstellungen in der Informatik. Interessanterweise kommt der Begriff aus der Architektur und wurde durch die GoF (Gang of Four) auf die Informatik übertragen.

Von den mehr als 30 Entwurfsmustern sind gerade in der Schule nur ein paar wenige wichtig und relevant: Das MVC-Muster und das Kompositum-Muster.

Das MVC-Entwurfsmuster (Model-View-Controller) dient im wesentlichen der Trennung der zwischen Oberfläche (View), den eigentlichen Funktionen bzw. Daten (Model) und einer Kontrollinstanz (Controller), die unter anderem die Kommunikation zwischen Frontend und Backend steuert und schaut, das kein „Schmarrn“ hin und her geschickt wird.

Das Kompositum wird in der elften Klasse in Bayern eingeführt um Listen und Bäume zu implementieren. Allgemein lassen sich damit Teil-Ganzes-Hierarchien implementieren. Ein typisches Beispiel ist die Gruppierungsfunktion in Zeichenprogrammen.

Nun aber zu Pokemon GO. Wobei ich dazu sagen muss, dass sich meine Fähigkeiten im Bereich Software-Entwicklung wohl eher als bescheiden sind. Aber deswegen kann man es ja dennoch mal versuchen.

Wer sich genauer mit Entwurfsmuster auseinandersetzen will, sollte sich zum Einstieg unbedingt die Internetseite von Philipp Hauer anschauen. Dort werden viele Entwurfsmuster an tollen Beispielen mit Implementierungen in Java dargestellt.

MVC-Entwurfsmuster

Die Darstellung der Daten auf verschiedenen Handys und Betriebssystemen und die Kommunikation mit den zentralen Servern (…leider…) spricht für den Einsatz dieses Musters. Wie bei vielen Spielen wohl in der Form des VCM-Paradigmas, da der User ja über die View mit dem Spiel kommuniziert.

Observer-Pattern

Die Spieler müssen über Änderungen in ihrer Umgebung wie Pokemons, Pokestops und Arenen informiert werden. Dafür bietet sich, denke ich, das Oberserver-Pattern an. Daher muss man sich nicht nur bei der Software anmelden, es müssen auch die ganze Zeit die Geodaten übermittelt werden. In Abhängigkeit der Geodaten  werden dann die benötigten Gegenstände eingeblendet.

 

Weitere mögliche Entwurfsmuster

Ab jetzt wird es noch schwieriger weitere Muster zu erkennen, da ich auch einfach zu wenig Erfahrung mit der Umsetzung dieser Muster habe. Daher im Folgende einfach noch eine Liste mit Mustern und Kommentaren:

  • Singleton
    Ein Objekt das nur einmal existieren darf, kann über das Singleton-Entwurfsmuster implementiert werden. Das Spielfenster wäre so ein Fall. Ich denke aber, das es nicht so ungesetzt wurde. Beim selbst Rumprobieren mit der Erstellung von Apps habe ich das noch nie gebraucht.
  • Kompositum
    Das Verwalten der eigenen Items, der auszubrütende Eier, der Mitglieder einer Arena könnte in einer verketteten Liste nach dem Kompositum-Muster umgesetzt sein. Wobei das wahrscheinlich aber auch hier anderes gelöst wurde. Mit Arrays oder fertigen Listen-Datentypen, wobei letztere wiederum mit dem Kompositum umgesetzt sein könnten.

Was jetzt genau, wie umgesetzt wurde hängt im nächsten Schritt aber auch von der benutzten Programmier-Sprache ab. Es scheint aber, dass Java benutzt wurde. Außer natürlich für die iOS-Version. Hier wird natürlich Swift und/oder ObjectiveC benutzt.

Und ansonsten ist es vor allem eine großen Datenbank-Anwendung. Denn eigentlich geht es bei dem Programm ja in erster Linie um das Sammeln und Entwickeln von Pokemons und der eigenen Spielfigur. Eine schnelle Datenbank wird da wohl die Hauptrolle spielen. Und damit ist es eine Programmieraufgabe für die 9. Jahrgangsstufe, die ich dann noch nachreiche.

Fazit

Soweit meine Gedanken. Ich würde mich jetzt freuen, wenn es Leser meine Blogs gäbe, die weiter Licht ins Dunkel bringen und erklären könnten, wie dieses Spiel umgesetzt wurde. Vor allem in Hinblick darauf, was man im Unterricht benutzen kann.

Pokemon GO (Teil 2)

Nachdem ich nun ein paar Tage weitergespielt habe, muss ich ehrlich gestehen, dass mir das Spiel echt Spaß macht. Dies hat mehrere Gründe:

  • Ich muss real durch die Gegend laufen, dass macht mir in den meisten Spielen keinen Spaß,
    weil ich für virtuellen Welten irgendwie kein Händchen habe. Ich möchte da immer
    irgendwo hin laufen, wo ich aber nicht hin darf.
  • Meine Spielfigur steigt nachvollziehbar in den Leveln höher.
  • Ich kann mit meinem Sohn durch die Gegend laufen, was sowohl ihm als auch mir
    viel Spaß macht.

Aber es gibt auch Dinge, die mir so richtig auf die Nerven gehen:

  • Durch die fehlende Anleitung habe ich noch nicht verstanden, wie man in den Arenen kämpft. Außer das meine Figuren den Bach runter gehen, passiert da überhaupt nichts.
  • Das Leveln der Figuren erschließt sich mir auch überhaupt nicht. Soll man das machen oder nicht? Was habe ich davon etc.
  • Wie finde ich die verschiedenen Pokemons? Ich sehe immer Blätter rascheln oder es werden mir welche in der Umgebung angezeigt, aber wie nutze ich das aus?
  • Was ist die eigentliche Spielaufgabe? Kämpfe gewinnen? Pokemons sammeln?
  • Und dann diese andauernden Serverprobleme…. Ich weiß nicht, wie oft ich das Spiel schon neu starten muss, damit ich weiter suchen kann. Das führt dann auch dazu, dass ich nach 10km laut GPS-Uhr erst 7km bei meinen diversen Ei-Ausbrütern geschafft habe.

Na ja, ich werde mir da wohl von meinen Schülern ein wenig Nachhilfe geben lassen und dann
wird sich das ein oder anderen Problem erledigt haben.

Auf alle Fälle werde ich das Spiel als Aufhänger für meine kommende 10. Klasse übernehmen. Die Aufgabe ist dann eine reine Modellierungsaufgabe und sieht dann wie bei Informatikaufgabe 86 beschrieben aus.

Ergänzung: Aus aktuellem Anlass (Kommentar beim 1. Teil) möchte nochmals explizit auf die miserablen Datenschutzbestimmung des Spiels aufmerksam machen, die man kuketz-blog.de detailliert nachlesen kann.

Ältere Beiträge Neuere Beiträge

© 2016 Lehrzeit

Theme von Anders NorénHoch ↑