OOP für Kids?

MilesVorkosigan

Aktives Mitglied
Thread Starter
Registriert
14.04.2023
Beiträge
1.706
Reaktionspunkte
1.482
Ich betreibe in meiner Schule schon seit einigen Jahren immer wieder mal die ein oder andere "Programmier-AG". Die Teilnehmer sind in der Regel jüngere SchülerInnen so bis maximal 13 oder 14 Jahre.
Ich habe schon ganz verschiedene Ansätze versucht: Ziemlich lange habe ich mit SCRATCH ... gearbeitet. Dann auch mal mit "Blockly" (ähnlich wie Scratch) und in einem Jahrgang mal mit Python.

Aktuell bin ich mit HTML, CSS und vor allem JavaScript unterwegs. Das Ziel: Die Kids sollen eine eigene kleine Schul-Website zusammenbasteln. Mal schauen, wie weit wir damit kommen ...

Allerdings gibt es aktuell drei Schüler, die ganz offensichtlich ein sehr gutes Verständnis für die dem Programmieren zugrundeliegenden Strukturen mitbringen. Ich bin immer wieder überrascht, was diese zwei Jungs und ein Mädchen im Alter zwischen 11 und 13 für gute Ideen entwickeln. (y)(y)(y)

Und da die drei mit meinen einfachen Standard-Problemstellungen schnell unterfordert sind, habe ich überlegt, ob es vielleicht eine gute Idee sein könnte, denen schon mal die Grundlagen der Objektorientierten Programmierung zu zeigen.

Nur, WIE macht man das, so dass Kinder in dem Alter das auch verstehen? Habt ihr da vielleicht eine gute Idee? Oder gibt es so etwas möglicherweise auch schon irgendwo?
Weil, das Problem, Kindern eine so abstrakte Sache zu vermitteln, habe ich ja ganz bestimmt nicht als erster.

Also, wenn ihr dazu irgendeine Idee, einen Link oder eine Quelle habt, würde ich mich sehr darüber freuen. :)
 
Wenn Javascript gerade die Sprache der Wahl ist, würde ich erst den Umweg über Typen und Typescript gehen und mit interfaces arbeiten. Dann hat man schon mal die Daten strukturiert und ins Projekt passt es auch.
 
... an Typescript habe ich auch schon gedacht. Ich bin aber unsicher, ob das nicht die falsche Reihenfolge ist. Eigentlich wird überall empfohlen, JS VOR TS zu lernen oder zu vermitteln. Umso besser man sich selbst damit auskennt, umso schwieriger wird es, sich vorzustellen, wie sich das für Einsteiger - und in dem Fall auch noch für Kinder anfühlt.

Ich hatte mir eigentlich überlegt, das ganze OOP-Thema über Analogien zu vermitteln. Aber außer den üblichen Sachen "Tier-Katze-Miauen" und so was habe ich dazu noch nicht viel gefunden. Es sollte ja etwas sein, damit die Kids das "Konzept" oder die zugrundeliegende "Struktur" des Problems dauerhaft verinnerlichen.

Weniger, um das sofort in einer Sprache umzusetzen, sondern mehr als grundsätzliches Wissen, das ihnen auch in der Zukunft etwas bringt oder erleichtert.
Ist ein schwieriges Thema - auch, weil ich die Kids schon im nächsten Schuljahr "abgeben" muss. Heißt: Irgendwelche größeren Langzeitprojekte fallen da auch aus.
 
Zwei Dinge fallen mir dazu ein:

Man kann die typischen Javascript Probleme nehmen und fragen, wieso ist denn hier „1“+“0“ 10 und nicht 1. Ind da gibt es ja noch mehr.

Lass die das erstmal finden. Die Lösung sind dann ja Datentypen. Darüber kommt man dann zu TS.

Dann kommst Du über Angaben zu personen z.b. zu Types oder Interfaces.

Dann wenn Objekte Verhalten bekommen, kommst Du von interfaces zu classes. Vererbung ist übrigens ein überschätzter Seiteneffekt von OO. Tatsächlich unterlässt man das überall wo es möglich ist, denn das bringt viele Probleme mit sich. Heute nutzt man viel mehr „composition ober inheritance“. Da fallen die Nachteile der Vererbung weg und man hat zahlreiche andere Vorteile.


Grundsätzlich hätte ich auch Python vorgeschlagen, aber wenn ihr mit JS zu tun habt ist TS thematisch besser.
 
Zurück
Oben Unten