Lehrzeit

Schule & Informatik

Monat: Januar 2012 (Seite 2 von 8)

Die beste Fernsehserie läuft wieder..

Sherlock Holmes von BBC1 ! Für mich wirklich das Beste, was es seit Jahren im Fernsehen gibt. Leider im Moment nur in England, aber ich werde sie kaufen, sobald sie als DVD (OmU) zu bekommen sind.

Handschrifttag

Manchmal wundert man sich ja schon, was an Schulen so passiert. Der Jogginghosen-Tag gehört da mit Sicherheit mit dazu. Ursprünglich aus – mal wieder Amerika – kommend (Casual Friday), haben sich ein paar Studenten zum Ziel gesetzt diesen Feiertag weltweit zu zelebrieren. Warum allerdings, hat sich mir nicht erschlossen. Und schon gar nicht warum an einer Schule, wo sowieso schon jeder fast kommen kann, wie er will. Zumindest in Deutschland. In einem Land wie England, mit Schuluniform und so, könnte ich das ja noch verstehen, aber so….

Bei uns an der Schule gab es diesen, ach so wichtigen Feiertag ürbigens, am vergangenen Freitag, obwohl es eigentlich der 21. Januar, also Samstag, gewesen wäre. Unsere SMV machte per Durchsage auf den Tag aufmerksam und forderte zum Mitmachen auf.

Nicht jeder Schüler oder sogar Lehrer fanden diesen Aufruf sinnvoll und daher kamen nur wenige in Casual-Kleidung bzw. in Jogginghosen. Schätzungsweise zwanzig bis dreißig Prozent. Manche Schüler(!) kamen aus Protest sogar in Anzug und mit Krawatte, um so ihre Meinung zum Jogginghosentag zu äußern. Auch eine Möglichkeit.

Mich dagegen wundert es, dass es für solche Tage an der Schule Platz gibt, aber ein Tag wie der Handschrifttag untergeht. Der Handschrifttag war nämlich am 23.1. Leider habe auch ich diesen Tag verpasst. Ich habe erst vor kurzem davon erfahren. Im nächsten Jahr werde ich aber versuchen, den Handschrifttag bekannter zu machen und vielleicht sogar an unserer Schule irgendwie durchzuführen: Es gibt keine Arbeitsblätter mit Computerschrift, alte Briefe in Sütterlin werden gelesen, im Informatikunterricht bleibt der Computer einfach mal aus. Stattdessen gibt es Unterricht in Kalligraphie, die Schüler bekommen verschieden Stifte zum Ausprobieren. Und in der Unterstufe darf jeder Schüler mal versuchen sich nach der Methode von Frau Dorendorff sein eigenes Schreibschrift-Alphabet zusammenzustellen. Und zwar so, dass es dem Schüler Freude macht die Buchstaben zu schreiben und wir Lehrer die Schrift gut lesen können.

Informatikaufgabe 19

Zunächst möchte ich mich für die Quasi-Wiederholung der letzten Aufgabe entschuldigen. Da habe ich wohl mal kurzfrsitig den Überblick verloren. Daher schreibe ich gleich eine neue Aufgabe heute hinterher.

In meiner Zwölften stehe ich im Moment an der Stelle, dass ich meinen Schülern die Programmierung mit Threads näherbringen muss. Rahmenthema sind Semaphoren, Monitoring, Deadlocks etc. Um diese Problematik zu verstehen, versuche ich also Threads programmieren zu lassen. Dabei taucht sehr schnell das Problem auf, das so einfache Sachen wie start() und stop() depricated sind und sich nicht so einfach umgehen lassen.

Nun habe ich bei meiner letzten Unterrichtstunde eine Analogie gefunden, die den Schülern sehr eingängig war und die Lösungsidee schön verdeutlichte. Meine Idee basiert dabei auf folgendem youtube-Film:

Der Hund implementiert dabei das Interface „swallowable“ – er kann also theoretisch schlucken. Allerdings nicht ohne Hilfe des Stuhls. Wenn dem Hund das start()-Kommando gegeben wird, dann setzt er sich selbstständig in den Stuhl und kann dann auch schlucken. Ist der fertig und bekommt das stop()-Kommando, so geht er selbstständig wieder aus dem Stuhl.

So ähnlich ist das auch mit der Implementierung von Threads:Das Baby links ist Runnable, also lauffähig. Es hat zwar Beine, aber kann ohne Hilfe nicht laufen. Wenn ich dem Baby jetzt das start()-Kommando geben, krabbelt es in die Laufhilfe (Thread) und kann dann auch laufen. Kommt das Stop()-Kommando, so klettert es wieder heraus.

Im Quellcode sieht das Ganze dann so aus:

import javax.swing.*;

public class Baby implements Runnable{
    Thread thread = null;

    public synchronized void start(){
        if (thread == null){           //Ist noch nicht in der Laufhilfe
            thread = new Thread(this); //Laufhilfe anziehen
            thread.start();            //loslaufen
        }
    }

    public synchronized void stop() {
        if (thread != null) {          //Hat Laufhilfe noch dran
            thread = null;             //Aus der Laufhilfe krabbeln
        }
    }

    public void run(){
        //Was immer auch beim laufen gemacht werden soll
    } 
}

Das Beispiel war immerhin so plakativ, dass die Schüler sich die grundlegende Idee merken konnten und dann beim Programmieren des anschließenden Chat-Servers auch wiederverwenden konnten. Die erste Aufgabe war allerdings in diesem Zusammenhang eine deutlich einfacher:

Aufgabe

Programmiere einen einarmigen Banditen in dem Sinne, dass drei Spielwalzen durch Klick auf die Schaltfläche so angehalten werden sollen, dass man möglichst dreimal die gleiche Zahl hat.

 

Ältere Beiträge Neuere Beiträge

© 2018 Lehrzeit

Theme von Anders NorénHoch ↑