Java als neue "Schulsprache" ?

Objektorientierte Programmiersprache auf Basis einer virtuellen Maschine (https://www.oracle.com/java/)
Benutzeravatar
Dirty Oerti
Beiträge: 2229
Registriert: Di Jul 08, 2008 5:05 pm
Wohnort: Thurndorf / Würzburg

Re: Java als neue "Schulsprache" ?

Beitrag von Dirty Oerti » Di Mai 05, 2009 9:02 pm

dP. hat geschrieben:Informatikunterricht ist kein Programmierunterricht, auch wenn die Programmierung in der Schule sicherlich einen guten Anteil haben sollte. Aber Zeiger ist meiner Meinung nach nichts, was da unverzichtbar wäre. Ganz im Gegenteil. Von daher halte ich C und C++ für denkbar schlechte Kandidaten für den Unterricht.
Xin hat geschrieben:Informatik wird heute häufig zum Power-Point-Unterricht.
Da hat Xin vollkommen Recht. Bei mir an der Schule ist Informatik = Anwendungsschulung.
Informatikunterricht ist natürlich kein Programmierunterricht. Aber über die Programmierung (die, richtig vermittelt, Spaß macht) kann man das Interesse deutlich besser wecken als wenn man die Schüler mit Logik wie hier z.B. gezeigt ist überumpelt.
dP. hat geschrieben:C++ erschlägt einen am Anfang
Ich denke nach eingehender Erklärung (vorallem wie aus Quelltexten Programme werden) sollte ein einfaches HelloWorld keinen Schüler erschlagen.
Das Programm kann man dann ohne Probleme Schrittweise erweitern (Variablen, Eingabe hinzufügen, Entscheidungen treffen, Funktionen, usw)
dP. hat geschrieben:...ganz besonders wenn man in der 6 (8, 10, 11) Klasse ist und keinen Dunst von gar nichts hat. Und genau das ist hier das Klientel, das bedient werden will. Nicht der rechneraffine 14 Jährige, der von alleine auf die Idee kam mit Assembler auf seinem C64 rumzuspielen, sondern junge Menschen, die noch nie Quelltext gesehen haben und sich überhaupt nicht vorstellen können, wie der Rechner aufgebaut ist / funktioniert.
Deswegen ist es keine gute Idee, solchen Menschen den Aufbau des Rechners etc zu verschleiern, in dem man ihnen die Arbeit, den Rechner zu verstehen (z.B. durch eine ungeeignete Programmiersprache) abnimmt.
Wenn ein Schüler es nicht lernen will, dann lernt er/sie es nicht.
Aber es geht hier um Schule: Der Zweck einer Schule ist es, Wissen zu vermitteln. Und im Informatikunterricht gehört dann meiner Ansicht nach auch Wissen über die Grundlage, den Computer.
Bei Fragen einfach an daniel[ät]proggen[Punkt]org
Ich helfe gerne! :)
----------
Wenn du ein Licht am Ende des Tunnels siehst, freu dich nicht zu früh! Es könnte ein Zug sein, der auf dich zukommt!
----
It said: "Install Win95 or better ..." So I installed Linux.

dP.
Beiträge: 23
Registriert: Di Apr 14, 2009 2:52 pm

Re: Java als neue "Schulsprache" ?

Beitrag von dP. » Di Mai 05, 2009 10:01 pm

Xin hat geschrieben: Informatik wird heute häufig zum Power-Point-Unterricht.
Sündhaft das.
Xin hat geschrieben: Man muss auch in C nicht mit Zeigern beginnen. Und in C++ schon gar nicht.
Richtig, das sage ich ja auch gar nicht. Mein Punkt ist viel mehr: Wenn man bis zur 13 keinen einzigen Zeiger gesehen hat, kann man trotzdem guten Informatikunterricht gehabt haben.
Zur Informatik gehört die Algorithmik.
Abläufe organisieren. Datenverarbeitung.
Genau. Wenn du im schulischen Informatikunterricht erreichst, dass die Schüler ein Problem analysieren, sich eine Lösung überlegen, diese genau beschreiben und sogar noch implementieren können, dann hast du verdammt viel erreicht! Und ich rede hier von Problemen wie 'Sortiere diese Liste' , 'Russischer Bauernmultiplikation', 'Sieb des Erathostenes', 'Zinseszinsberechnung' und ähnliche einfache Sachen.
Und dann sind da ja noch so Späße wie formale Logik, logische Grundschaltungen und Gatter, (Schiebe)Register und die Funktionsweise des Rechners, die erklärt werden wollen.
Das wird aber offenbar kaum noch unterrichtet.
Leider.
dP. hat geschrieben:Wie ich bereits sagte, ist die Sprache eigentlich egal. Man kann es sich aber leicht oder weniger leicht machen.
Ich habe beim Unterrichten von C/C++ bisher wenig Probleme gesehen.
Mit entsprechender Vorbereitung kann man hier die Sache schrittweise aufbauen. Es ist nicht so, dass man C/C++ komplett können muss, um es zu lernen.
Unterrichtest du an der Schule oder an der Uni? Ich glaube dir, dass man C++ vernünftig unterrichten und lehren kann. Ich bin auch der Meinung, dass wenn man verstanden hat, wie C++ tickt, man einige Sachen deutlich besser versteht.
Aber an der Schule ist es einfach wichtiger, dass die Schüler ihre Zeit nicht damit verschwenden, Fehlermeldungen des g++ zu interpretieren. Da ist es viel besser, wenn man einfach mal schnell was im Interpreter ausprobieren kann.

Glaub mir, ich erinnere mich lebhaft an meinen Informatikunterricht in der 8, 9, 10 Klasse. Ist noch keine 10 Jahre her. Wenn ich mir überlege, wie die Schüler - und der Lehrer war Spitze - mit MSW Logo gekämpft haben, wenn es darum ging mit fd 50, rt 90, fd 50, rt 90, fd 50, rt 90, fd 50 eine Figur auf dem Bildschirm im Quadrat laufen zu lassen, dann will ich mir gar nicht ausmahlen, wie das in anderen Sprachen ausgesehen hätte.
Dirty Oerti hat geschrieben: Ich denke nach eingehender Erklärung (vorallem wie aus Quelltexten Programme werden) sollte ein einfaches HelloWorld keinen Schüler erschlagen.
Das Programm kann man dann ohne Probleme Schrittweise erweitern (Variablen, Eingabe hinzufügen, Entscheidungen treffen, Funktionen, usw)
Stimm ich dir zu. Ich will weiß Gott nicht behaupten, C++ wäre ungeeignet. C++ wäre nur nicht meine erste Wahl.
Deswegen ist es keine gute Idee, solchen Menschen den Aufbau des Rechners etc zu verschleiern, in dem man ihnen die Arbeit, den Rechner zu verstehen (z.B. durch eine ungeeignete Programmiersprache) abnimmt.
Wenn ein Schüler es nicht lernen will, dann lernt er/sie es nicht.
Aber es geht hier um Schule: Der Zweck einer Schule ist es, Wissen zu vermitteln. Und im Informatikunterricht gehört dann meiner Ansicht nach auch Wissen über die Grundlage, den Computer.
Ja, sehe ich jetzt nicht als Gegenargument.

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8859
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Java als neue "Schulsprache" ?

Beitrag von Xin » Mi Mai 06, 2009 5:59 am

dP. hat geschrieben:
Xin hat geschrieben: Man muss auch in C nicht mit Zeigern beginnen. Und in C++ schon gar nicht.
Richtig, das sage ich ja auch gar nicht. Mein Punkt ist viel mehr: Wenn man bis zur 13 keinen einzigen Zeiger gesehen hat, kann man trotzdem guten Informatikunterricht gehabt haben.
Jow, das funktioniert in Mathe zur Zeit auch so. Wenn man bis zur 13 noch keine Aufgabe berechnen kann, kann man trotzdem guten Matheunterricht gehabt haben. Nur mit Mathe hatte er halt nix zu tun.

Zeiger sind eine absolute Basis-Information in der Informatik. Und erzähle mir nicht, dass 8.-Klässler unfähig wären, das zu verstehen. Ich habe mit 13 Assembler programmiert - ohne dass da ein Lehrer mir etwas beigebracht hat. Ohne eine große Auswahl an Internet-Tutorials oder Foren. Ohne Buch. Lediglich ein paar kurze Tutorials, die teils auch noch falsch waren. Lesen, programmieren, ausprobieren, verstehen.
Unter qualifizierter Anleitung muss es jedem Schüler einer beliebigen Klasse einer beliebigen Schulform oberhalb der Sonderschule möglich sein, das Prinzip einer Hausnummer zu begreifen.
Und qualifizierte Anleitung setze ich als Selbstverständlich voraus, den Lehrer erhalten Geld für ihre Dienstleistung, die unter anderem die qualifizierte Wissensvermittlung beinhaltet.
dP. hat geschrieben:
Zur Informatik gehört die Algorithmik.
Abläufe organisieren. Datenverarbeitung.
Genau. Wenn du im schulischen Informatikunterricht erreichst, dass die Schüler ein Problem analysieren, sich eine Lösung überlegen, diese genau beschreiben und sogar noch implementieren können, dann hast du verdammt viel erreicht! Und ich rede hier von Problemen wie 'Sortiere diese Liste' , 'Russischer Bauernmultiplikation', 'Sieb des Erathostenes', 'Zinseszinsberechnung' und ähnliche einfache Sachen.
Und dann sind da ja noch so Späße wie formale Logik, logische Grundschaltungen und Gatter, (Schiebe)Register und die Funktionsweise des Rechners, die erklärt werden wollen.
Logische Schaltungen und Gatter sind Teil der E-Technik, nicht der Informatik. In der Mathematik erfährst Du, was Du mit einem Taschenrechner machen kannst, nicht wie Du ihn baust.
dP. hat geschrieben:
dP. hat geschrieben:Wie ich bereits sagte, ist die Sprache eigentlich egal. Man kann es sich aber leicht oder weniger leicht machen.
Ich habe beim Unterrichten von C/C++ bisher wenig Probleme gesehen.
Mit entsprechender Vorbereitung kann man hier die Sache schrittweise aufbauen. Es ist nicht so, dass man C/C++ komplett können muss, um es zu lernen.
Unterrichtest du an der Schule oder an der Uni? Ich glaube dir, dass man C++ vernünftig unterrichten und lehren kann. Ich bin auch der Meinung, dass wenn man verstanden hat, wie C++ tickt, man einige Sachen deutlich besser versteht.
Aber an der Schule ist es einfach wichtiger, dass die Schüler ihre Zeit nicht damit verschwenden, Fehlermeldungen des g++ zu interpretieren. Da ist es viel besser, wenn man einfach mal schnell was im Interpreter ausprobieren kann.
Ich habe Schüler unterrichtet, genauso wie ich an einer FH Tutorien gegeben habe.

Es macht keinen Unterschied, ob man sich Fehlermeldungen des Compilers oder des Interpreters anguckt, es läuft auf das selbe hinaus: Fehlermeldung verstehen, Quellcode ändern, Interpreter/Compiler neu anwerfen.
dP. hat geschrieben:Glaub mir, ich erinnere mich lebhaft an meinen Informatikunterricht in der 8, 9, 10 Klasse. Ist noch keine 10 Jahre her. Wenn ich mir überlege, wie die Schüler - und der Lehrer war Spitze - mit MSW Logo gekämpft haben, wenn es darum ging mit fd 50, rt 90, fd 50, rt 90, fd 50, rt 90, fd 50 eine Figur auf dem Bildschirm im Quadrat laufen zu lassen, dann will ich mir gar nicht ausmahlen, wie das in anderen Sprachen ausgesehen hätte.
Das "programmieren" eines Roboters halte ich für die sinnloseste Form der Informatik - nicht wegen des Roboters, sondern weil schon beim Einstieg offensichtlich ist, dass das, was man grade lernt, für nichts zu gebrauchen ist. Man wird in diesen Roboter-Sprachen niemals etwas sinnvolles programmieren können. Also machen die Leute, die das ganze nicht als Knobelspiel auffassen, sofort dicht.
Der Reiz etwas zu können, eine echte, ernstzunehmende Programmiersprache, auf der man aufbauen kann, in der auch Betriebsysteme, Spiele, Anwendungen, Viren und Hacks geschrieben werden können, ist deutlich höher.
dP. hat geschrieben:
Dirty Oerti hat geschrieben: Ich denke nach eingehender Erklärung (vorallem wie aus Quelltexten Programme werden) sollte ein einfaches HelloWorld keinen Schüler erschlagen.
Das Programm kann man dann ohne Probleme Schrittweise erweitern (Variablen, Eingabe hinzufügen, Entscheidungen treffen, Funktionen, usw)
Stimm ich dir zu. Ich will weiß Gott nicht behaupten, C++ wäre ungeeignet. C++ wäre nur nicht meine erste Wahl.
Aus den C++-Tutorials habe ich einiges in meine Sprache gerettet. So lautet das "Hello World" in Genesys einfach

Code: Alles auswählen

print "Hello World";
Der Compiler sucht nach einer Klasse, findet aber keine. Also generiert er class main. Dann sucht er in einer generierten Klasse eine Funktionen, findet aber keine. Also generiert er main(). Und da packt er die gefundenen Befehle rein. Das Konzept entspricht Java: Alles ist in einer Klasse - aber das muss ein Anfänger noch nicht wissen. Und jemand, der ein Skript schreibt, muss sich dafür nicht interessieren.

Ich habe aber auch kein Problem, erstmal ein Gerüst vorzustellen und zu sagen, dass wir zwischen den geschweiften Klammern programmieren und der Rest muss erstmal nicht verstanden werden. Der Overhead ist bei C/C++ noch überschaubar.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

nufan
Wiki-Moderator
Beiträge: 2558
Registriert: Sa Jul 05, 2008 3:21 pm

Re: Java als neue "Schulsprache" ?

Beitrag von nufan » Mi Mai 06, 2009 1:35 pm

Xin hat geschrieben:Informatik wird heute häufig zum Power-Point-Unterricht.
Daran kann ich mich auch noch erinnern. Präsentationen zu erstellen ist auch wichtig, aber nicht im Fach "Informatik".
Dirty Oerti hat geschrieben:Informatikunterricht ist natürlich kein Programmierunterricht. Aber über die Programmierung (die, richtig vermittelt, Spaß macht) kann man das Interesse deutlich besser wecken als wenn man die Schüler mit Logik wie hier z.B. gezeigt ist überumpelt.
Diese Zeiten sind vorbei, ich habe die Logik überlebt :) *jubel*
Hatte schon meine erste (theoretische) Assemblerstunde. Leider ist das Schuljahr bald rum...
Dirty Oerti hat geschrieben:Ich denke nach eingehender Erklärung (vorallem wie aus Quelltexten Programme werden) sollte ein einfaches HelloWorld keinen Schüler erschlagen.
Ich denke auch, dass jemand der wirklich programmieren lernen will sich davon nicht erschlagen lässt.

dP.
Beiträge: 23
Registriert: Di Apr 14, 2009 2:52 pm

Re: Java als neue "Schulsprache" ?

Beitrag von dP. » Mi Mai 06, 2009 5:08 pm

Ich denke auch, dass jemand der wirklich programmieren lernen will sich davon nicht erschlagen lässt.
Du musst es den anderen und damit wahrscheinlich der Mehrzahl auch schmackhaft machen.

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8859
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Java als neue "Schulsprache" ?

Beitrag von Xin » Do Mai 07, 2009 7:07 am

dP. hat geschrieben:
Ich denke auch, dass jemand der wirklich programmieren lernen will sich davon nicht erschlagen lässt.
Du musst es den anderen und damit wahrscheinlich der Mehrzahl auch schmackhaft machen.
Daher werden Pädagogen auch in Methodik und Didaktik geschult.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

Antworten