Begriffe wie Klassen oder Objekte?
Keine Chance.
Ja, Objektorientierung. Das ist kein einfaches Konzept. Damals an der Uni hatte ich den Eindruck, dass die meisten nicht häcken, wo's da drum geht. Das war doch häufig imperatives Denken in Objekt-Syntax.
So haben sie's aber auch gelernt. Ich hole mal aus. Als ich mit dem Studium angefangen habe, haben wir im ersten Semester SCHEME als Referenzsprache verwendet. Ein LISP-Derivat, funktional, dynamisch typisiert. Die, die wir von Pascal und Basic, teilweise C, kamen, taten sich anfangs schwer. Unterm Strich haben wir viel gelernt. Uns sind auch schon objektorientierte Konzepte wie Datenkapselung und Message-Pasing begegnet.
Später wurde dann als Einführungssprache alles Mögliche andere verwendet. Eine zeitlang C++, wie ich mich entsinne, und irgendwann Java, eben weil's objektorientiert sei. Aber so richtig objektorientiert ging's dabei nach meinem Eindruck nicht zu. Wenn überall "static" 'rumsteht, hat man sich doch verraten.
Auf der einen Seite solte man die Objektorientierung von Grund auf lernen, auf der anderen Seite ist vielleicht Perogrammiererfahrung hilfreich, wenn man etwas Komplexes lernen soll.
Ich bin nach wie vor ein Freund funktionaler Programmierung und meine auch, dass man damit ganz gut ins Programmieren einsteigen kann. Das ist aber vielleicht so'n Mathematikerinnen-Ding. Viel über Objektorientierung habe ich übrigens bei der Beschäftigung mit OCaml gelernt, einer Sprache mit einem funktionalen Kern. Allerdings haben wir uns damals recht abstrakt damit beschäftigt und insbesondere das Typsystem ziemlich genau betrachtet. So habne wir dann auch verstanden, dass Subtyping etwas anderes ist als Vererbung.
Objektorientierung in der Schule. Weiß ich nicht, fehlt mir die Erfahrung. Wir haben ja nicht so wirklich 'ne technische Ausrichtung an unserem Koch- und Backkolleg. Trotzdem habe ich immer mal wieder Versuche mit Programmierung unternommen. Zuletzt habe ich in einer Fachoberschulklasse Scratch benutzt. Das war für viele der künftigen Studierenden zu hoch. Den fehlte die Möglichkeit, die passenden Strukturen im Kopf anzulegen. Klick, klick, geht nicht. Natürlich fehlte uns ein wenig die Atmosphäre in der man Programmieren lernt. Runtergelassene Rollläden (oder Keller), halbvolle Pizzaschachteln und Kaffee (oder etwas modernen: Mate-Tee).
Die objektorientierten Phänomene, die man daran erleben konnte, blieben wenigen vorbehalten.
Ich glaub, was am meisten fehlt, ist die Notwendigkeit ein Programm zu schreiben. Damals (TM) gab's ja nix, also fingen wir einfach mal an. Warum sollte man heutzutage Nachmittage darin investieren, einen zweidimensionale Katze einem zweidimensionalen Ball hinterherzucklen zu lassen, wenn man für 1,99 'ne Fußballsimulation haben kann, die man kaum von einem TV-Mitschnitt unterscheiden kann?
Früher war alles besser, zumindest haben uns Computer Spaß gemacht. Und wenn was nicht lief, sind wir 'raus gegangen und haben etwas anderes gemacht. Heutzutage sind die Kästen unvermeidbarer Bestandteil des Lebens. Wir müssen damit klarkommen. Das sind ganz andere Voraussetzungen. Vom Spaß ist nicht mehr viel übrig.
PS: Objektorientierung in der Sek I stelle ich mir echt schwer vor. Ich weiß nicht, ob das gut klappen kann. Ich weiß auch nicht, ob das unbedingt sein muss.
Natürlich kann man simulieren, wie eine Nachricht den Zustand eines Objektes verändert. Aber davon hat man ja immer noch kein handliches Beispiel, das man da ausprogrammieren kann.