Programmiersprache für Informatikunterricht

Man kann auch in Turbo Pascal OOP schreiben, aber dadurch wird es genauso wenig Objekt-Orientiert wie Ansi-C ;)

Java ist in vielen belangen eine sehr gute Lehrspache und keines Wegs etwas, was man später nicht brauchen könnte.
Also im Schulbereich wäre es das Schweste was ich den Schülern zumuten würde.

Diese ganzen Scripting Spachen haben in Schulen IMHO nix zu suchen. Script-Kiddies gibt es ja bereits jetzt zu hauf ;)
 
Also mein Senf als angehender Informatiklehrer (als Unterrichtsfach studiere ich wirklich Informatik, keine Fortbildung o.ä.) dazu:

Ein Problem bei den bisherigen Informatiklehrern ist, dass sie den Informatikunterricht fachfremd unterrichten, da es den Studiengang LA Informatik noch nicht sehr lang gibt.
Ich selbst habe Erfahrung mit Perl, PHP, Java, C, HTML, XML; dazu noch im Umgang mit DBMS, der Administration von Webservern...
Zuvor war es meist so, dass Lehrer, z.B. aus dem naturwissehschaftlichen Bereich Fortbildungen besucht haben und im Schnellverfahren (etwas) Informatik gelernt haben, sich vorher aber nie wirklich mit der Materie auseinandergesetzt haben.

Es gibt Rahmenvorgaben für den Unterricht bzw. die Lernziele. In diesen wird vorgegeben, was im Unterricht behandelt werden soll/muss um den Richtlienen konform unterrichtet zu haben (Output-Orientierung). Welche Mittel ich im Unterricht verwende, ist mir dabei freigestellt (weitestgehendst).

Persönlich halte ich Java (allein schon wegen der Plattformunabhängigkeit) durchaus für den Schulunterricht geeignet, gebe aber zu bedenken, dass es sich beim Schulunterricht nicht um einen reinen Programmierkurs (wie in der Uni) handelt und daher die gewählte Programmiersprache nur recht oberflächlich im Rahmen der normalen Unterrichtszeit gelehrt werden kann.
 
Informatik Unterricht n der Schule sollte seinem Namen eh besser gerecht werden langsam. In vielen Schule ist es nichts anderes als ein Computerkurs, und das kanns nicht sein. man gucke sich mal in der Uni um wieviel Leute da ein Inforamtik Studium beginnen (inzwischen wieder weniger geworden) und dann nach 3 Vorlesungen feststellen, dass es ja gar nicht um Windows geht. Von Boolescher Agebra haben sie vorher nie gehört und simpelste Datenstrukturen sind ihnen fremd. Vom Oberstufen Informatik Unterricht kann man zumindest erwarten, dass angerissen wird, wo der Unterschied zwischen verschieden Programmierkonzepten liegt (OOP, imperativ, funktional). Am Ende sollte nicht stehen dass man Java oder was auch immer beherrscht, sondern dass man das Konzept verstanden hat und sich jede neue Programiersprache (sei es C, oder Pscal, oder Haskell, oder LISP oderwas auch immer) schnell selbst beibringen kann wenn man sich mal kurz mit den spezifischen Eigenschaften vertraut gemacht hat.
Denn ist es viel sinnvoller zu wissen wie ich bspw einen Binärbaum implementiere, als bis in die hinterletzten Ecken java verstanden zu haben.

Java halte ich gerade für die Schule als sehr gut geeignet, weils nicht so ne olle Skriptsprache ist und vor allem sehr sauber programmiert werden kann. Denn die Nachteile von Java interessieren mal keinen in irgendeiner Weise in der Schule.
 
onyx schrieb:
... gebe aber zu bedenken, dass es sich beim Schulunterricht nicht um einen reinen Programmierkurs (wie in der Uni) handelt und daher die gewählte Programmiersprache nur recht oberflächlich im Rahmen der normalen Unterrichtszeit gelehrt werden kann.

Bei uns wird es mehr oder weniger vorrausgesetzt, dass man programmieren kann. Die Programmierkurse sind fakultativ, vornehmlich für diejenigen, die es eben nicht können.
 
also tatsache ist, dass man in der gymnasialen oberstufe in NRW in vorbereitung auf das zentral abi ausschließlich java oder delphi programmiert, da nur für dieses beiden sprache abiturvorschläge exestieren. Ich lerne das (delphi) auch gerade (seit einem Jahr) und hasse es wie die pest. Alle Versuch unseren Lehrer zu überreden mal etwas in richtung WebProgrammierung (PHP/MySQL) zu machen scheitern an seiner Unkenntniss und an den Lehrplänen. Hinzu kommt, das der besagte Lehrer zu den Lehrern gehört, die einfach nicht erklären können.... Auch der Versuch mit Delphi und Fischertechnik was zu machen scheiterte, er möchte lieber Memory Spiele, Jojos und Pendel programmieren..... Aber ich bin wohl nicht der einzige der unter den beschissenen Ideen unserer Landesregierung bzw. unseres Schulministeriums leiden muss....
Ich hab mir dann einen 500 Mhz Pentium MMX zugelegt und WIN2K installiert...das klappt mit Delphi recht gut....
 
applefreak schrieb:
also tatsache ist, dass man in der gymnasialen oberstufe in NRW in vorbereitung auf das zentral abi ausschließlich java oder delphi programmiert, da nur für dieses beiden sprache abiturvorschläge exestieren. Ich lerne das (delphi) auch gerade (seit einem Jahr) und hasse es wie die pest. Alle Versuch unseren Lehrer zu überreden mal etwas in richtung WebProgrammierung (PHP/MySQL) zu machen scheitern an seiner Unkenntniss und an den Lehrplänen. Hinzu kommt, das der besagte Lehrer zu den Lehrern gehört, die einfach nicht erklären können.... Auch der Versuch mit Delphi und Fischertechnik was zu machen scheiterte, er möchte lieber Memory Spiele, Jojos und Pendel programmieren..... Aber ich bin wohl nicht der einzige der unter den beschissenen Ideen unserer Landesregierung bzw. unseres Schulministeriums leiden muss....
Ich hab mir dann einen 500 Mhz Pentium MMX zugelegt und WIN2K installiert...das klappt mit Delphi recht gut....
Zum Zentralabitur in NRW in Informatik mal dieser Link.

MFG
 
applefreak schrieb:
Ich lerne das (delphi) auch gerade (seit einem Jahr) und hasse es wie die pest.

Warum?

Alle Versuch unseren Lehrer zu überreden mal etwas in richtung WebProgrammierung (PHP/MySQL) zu machen scheitern an seiner Unkenntniss und an den Lehrplänen.

PHP hat auch im Informatikunterricht höchstens als schlechtes Beispiel was verloren. Da ist ObjectPascal als Lehrsprache doch um Längen geeigneter.

Hinzu kommt, das der besagte Lehrer zu den Lehrern gehört, die einfach nicht erklären können....

Es soll ja auch Schüler geben, die einfach nicht verstehen können... ;)
 
onyx schrieb:
Also mein Senf als angehender Informatiklehrer (als Unterrichtsfach studiere ich wirklich Informatik, keine Fortbildung o.ä.) dazu:

Ein Problem bei den bisherigen Informatiklehrern ist, dass sie den Informatikunterricht fachfremd unterrichten, da es den Studiengang LA Informatik noch nicht sehr lang gibt.
Ich selbst habe Erfahrung mit Perl, PHP, Java, C, HTML, XML; dazu noch im Umgang mit DBMS, der Administration von Webservern...
Zuvor war es meist so, dass Lehrer, z.B. aus dem naturwissehschaftlichen Bereich Fortbildungen besucht haben und im Schnellverfahren (etwas) Informatik gelernt haben, sich vorher aber nie wirklich mit der Materie auseinandergesetzt haben.

Es gibt Rahmenvorgaben für den Unterricht bzw. die Lernziele. In diesen wird vorgegeben, was im Unterricht behandelt werden soll/muss um den Richtlienen konform unterrichtet zu haben (Output-Orientierung). Welche Mittel ich im Unterricht verwende, ist mir dabei freigestellt (weitestgehendst).

Persönlich halte ich Java (allein schon wegen der Plattformunabhängigkeit) durchaus für den Schulunterricht geeignet, gebe aber zu bedenken, dass es sich beim Schulunterricht nicht um einen reinen Programmierkurs (wie in der Uni) handelt und daher die gewählte Programmiersprache nur recht oberflächlich im Rahmen der normalen Unterrichtszeit gelehrt werden kann.

Die Kultusminister (Es wäre wirklich interessant zu wissen, wer und wieviele von denen überhaupt eine Schulklasse unterrichtet haben.) machen sich das m.e. sehr einfach. Fünf Kapitel aus einem Themenkomplex mit weitestgehender Freiheit, was davon wie tiefschürfend behandelt wird.

Nicht jeder Lehrer findet den Ton, seine Schüler interessant zu unterrichten, ebenso wie jeder Mensch seine Fähigkeiten hat. Die einen sind eher mathematisch begabt, andere musikalisch oder bildnerisch. Doch das Philosophieren hilft hier auch nicht weiter.

Wen wundert's, daß wir im Pisatest einen so cleveren Nachwuchs haben.
 
applefreak schrieb:
also tatsache ist, dass man in der gymnasialen oberstufe in NRW in vorbereitung auf das zentral abi ausschließlich java oder delphi programmiert, da nur für dieses beiden sprache abiturvorschläge exestieren. Ich lerne das (delphi) auch gerade (seit einem Jahr) und hasse es wie die pest. Alle Versuch unseren Lehrer zu überreden mal etwas in richtung WebProgrammierung (PHP/MySQL) zu machen scheitern an seiner Unkenntniss und an den Lehrplänen.

FALSCH FALSCH FALSCH! Bin jetzt in der 13, Gymnasium Düsseldorf, erster Zentralabitur-Jahrgang NRW. Mein Informatik-Lehrer war in irgendsonem Beratungsgremium das die Abituraufgaben-Vorschläge gemacht hat, und worauf die achten mussten ist dass egal in welcher Sprache man lernt, muss man die Aufgaben lösen können.
Diese Aufgaben sind völlig allgemein, und sind zum Beispiel auch mit Lisp zu lösen (was wir lernen)...

Und wenn ihr fürs Abi lernt, warum wollt ihr dann lernen wie man nen Webserver einrichtet und ein paar Seiten codet?? Da biste mit nem kleinen Buch besser dran - vertrau mal deinem Lehrer, der wird dich schon durchs Abi kriegen!
 
Naja, Webserver einrichten habe ich jetzt oft genug zuhause gemacht, PHP und co. habe ich auch schon gemacht. Ich fände es ganz nett, eine "einfache", schnelle und vielleicht auch mal eine Objektorientierte Sprache zu lernen.

Wie sieht das eigentlich aus, muss Java kompiliert werden wie C oder setzt das einen Interpreter voraus wie PHP? Und wie ist das bei Delphi?
 
Naja, Webserver einrichten habe ich jetzt oft genug zuhause gemacht, PHP und co. habe ich auch schon gemacht. Ich fände es ganz nett, eine "einfache", schnelle und vielleicht auch mal eine Objektorientierte Sprache zu lernen.

Wie sieht das eigentlich aus, muss Java kompiliert werden wie C oder setzt das einen Interpreter voraus wie PHP? Und wie ist das bei Delphi?

C und Delphi werden direkt in Maschinencode umgewandelt.

Java wird in eine art Zwischensprache übersetzt (bzw. kompiliert), den Bytecode. Dieser Bytecode wird dann von der Virtual Machine ausgeführt (eine Art interpretiert!?) und bei Bedarf in Maschinencode umgewandelt (Code der viel durchlaufen wird, wird zur Laufzeit in Maschinencode übersetzt).

Für PHP gibts aber auch ein kompiliertes Format, das aber nicht immer verwendet wird.
 
martinibook schrieb:
Naja, Webserver einrichten habe ich jetzt oft genug zuhause gemacht, PHP und co. habe ich auch schon gemacht. Ich fände es ganz nett, eine "einfache", schnelle und vielleicht auch mal eine Objektorientierte Sprache zu lernen.

Wie sieht das eigentlich aus, muss Java kompiliert werden wie C oder setzt das einen Interpreter voraus wie PHP? Und wie ist das bei Delphi?

„Einfach und schnell“ ist Assembler. Praktisch jede „höhere“ Sprache kommt irgendwann zu dem Punkt, wo aus dem Quellcode Maschinencode wird. Und viele Compiler bieten sogar die Möglichkeit des Inline-Assemblierens.
 
martinibook schrieb:
Was sagt das über unseren Lehrer aus, wenn der Delphi macht?
Das er euch saubere Programmierung beibringen möchte.

Pascal ist eine der Sprachen, die saubere Programmierung erfordern. Anders gesagt: man macht sich mehr Gedanken wie man seine Probleme lösen möchte.

Alle anderen Sprachen verleiten zu sehr zum sinnlosen drauf los programmieren. Java und PHP sogar noch mehr, weil der Interpreter kümmert sich ja selbst um alles (Garbage Collection). Bei C oder C++ holt man sich dafür dann die Memoryleaks, wenn man sich keine Gedanken macht.

Fragt euch mal warum es soviele Bugs in heutiger Software gibt. Meiner Meinung, weil keiner sich mehr richtig Gedanken macht und richtig plant. Genau das erzwingt Pascal, durch seine "Limitierungen".

Sicherlich kann man in den anderen Sprachen "mehr machen". Aber man kann eben auch mehr Fehler machen. Da der Informatikunterricht an eine Schule nur eine begrenzte Zeit zur Wissenvermittlung hat und Theorie eben trocken ist, wollen die meisten schnelle Erfolgserlebnisse. Dafür ist Pascal ideal.

Ich selbe hatte in der Schule Pascal und Prolog. Im Studium hatte ich C und Lisp. Erst spät im Studium (das auch nur freiwillig) hatte ich C++.

Pingu

EDIT: 1. Später im Beruf darf man auch nicht einfach nur das machen was man mag. Da müssen auch Dinge erledigt werden. Ein Punkt den Schüler vielleicht auch mal lernen sollten.
2. Die konkrete Programmiersprache ist eh egal, wenn man später in die Entwicklung gehen möchte. Dann geht es darum, dass man Konzepte erarbeiten kann. Diese Konzepte werden dann entsprechend geschrieben, bevorzugt in UML. Diese werden dann von Programmieren umgesetzt. Diese Programmierjobs sind schlecht bezahlt Jobs und können auch leicht nach Indien ausgelagert werden (Ausnahmen: die absoluten Spezialisten, aber die sind Spezialisten geworden nicht weil sie es mal im Schulunterricht hatten, sondern eigen Interessen neben der Schule). Wer wirklich in der Entwicklung etwas wird, sieht eh nie eine Zeile Code sondern nur Konzepte.
3. Ansonsten ist eine solche Diskussion mühsig und wurde schon tausendmal geführt. Ich sage nur: vi vs. emacs. Ich bin für pico aka nano.
 
Zuletzt bearbeitet:
Also PHP halte ich im Informatikunterricht auch etwas falsch plaziert.

Was man sich mal anschauen kann ist Python. Die Syntax sind einfach und nicht schwer zu verstehen, man wird zu einem ordentlichen Stil mit Einrücken gezwungen.
Python ist OOP etc.

Nachteil ist wohl u.a. das es keine primitiven Datentypen gibt und man die nicht explizit festlegen muss.
 
Pingu schrieb:
Das er euch saubere Programmierung beibringen möchte.

Pascal ist eine der Sprachen, die saubere Programmierung erfordern. Anders gesagt: man macht sich mehr Gedanken wie man seine Probleme lösen möchte.

Alle anderen Sprachen verleiten zu sehr zum sinnlosen drauf los programmieren. Java und PHP sogar noch mehr, will der Interpreter kümmert sich ja selbst um alles (Garbage Collection). Bei C oder C++ holt sich dafür dann die Memoryleaks, wenn sich keine Gedanken macht.

Fragt euch mal warum es soviele Bugs in heutiger Software gibt. Stimmt das denn so? Speziell Java mit seinen ausgeprägten Sicherheitsvorkehrungen und den „auffangbahren“ Exceptions verhindert doch eher Bugs. Gegen mangelhafte Programmlogiken hilfen auch diese Konzepte nichts. Meiner Meinung, weil keiner sich mehr richtig Gedanken macht und richtig plant. Genau das erzwingt Pascal, durch seine "Limitierungen".

Sicherlich kann man in den anderen Sprachen "mehr machen". Aber man kann eben auch mehr Fehler machen. Da der Informatikunterricht an eine Schule nur eine begrenzte Zeit zur Wissenvermittlung hat und Theorie eben trocken, wollen die meisten schnelle Erfolgserlebnisse. Dafür ist Pascal ideal.

Ich selbe hatte in der Schule Pascal und Prolog. Im Studium hatte ich C und Lisp. Erst spät im Studium (das auch nur freiwillig) hatte ich C++.

Pingu

Wer „drauflos“ programmiert, hat aber doch auch bei anderen Programmiersprachen keine Chancen. Mit den Programmiersprachen ist es da wie mit dem Beton, es kommt drauf an, was man draus macht.
 
Super. Genau darauf habe ich gewartet. Du bestätigst Nur wieder das was ich gemeint habe.
Wolfgang Rausch schrieb:
Pingu schrieb:
Fragt euch mal warum es soviele Bugs in heutiger Software gibt.
Stimmt das denn so? Speziell Java mit seinen ausgeprägten Sicherheitsvorkehrungen und den „auffangbahren“ Exceptions verhindert doch eher Bugs.
Genau. Deswegen macht sich auch kaum einer noch richtige Gedanken. Weil "da definiere ich mal schnell eine Excpetion um den Rest wird sich schon der Compiler/Interpreter kümmern."
Provokativ würde ich sogar behaupten: Wer Exceptions braucht hat schon was falsch gemacht. Der hat sich keine Gedanken gemacht über die Statusmaschine und den zugehörigen Programmablauf.
Wolfgang Rausch schrieb:
Gegen mangelhafte Programmlogiken hilfen auch diese Konzepte nichts.
Wer „drauflos“ programmiert, hat aber doch auch bei anderen Programmiersprachen keine Chancen. Mit den Programmiersprachen ist es da wie mit dem Beton, es kommt drauf an, was man draus macht.
Du hast die Aufgabenstellung gelesen? Es geht um Schule. Glaubst Du in der Schule hat der Informatiklehrer Zeit in zwei Stunden pro Woche mit den Schülern Konzepte zu definieren, also Theorie durchzupauken. Insbesondere bei der üblichen Schülerstruktur (die einen wollen sofort was machen, die anderen interessiert es eh nicht). Nicht das ihr mich falsch versteht, ich war selber mal so in dem Alter. Zwei Kumpels und ich habe damals als Abschußarbeit ein kleines Spiel (Inhalt war eine einfache Kombination aus Patrizier und Civilisation, man musste Handel treiben und konnte sich (geschichtlich korrekt) in der Römerzeit zum Caesar hocharbeiten) mit etwas Grafik in TurboPascal programmiert.

Pingu
 
Zuletzt bearbeitet:
Pingu schrieb:
Super. Genau darauf habe ich gewartet. Du bestätigst Nur wieder das was ich gemeint habe.

Genau. Deswegen macht auch kaum einer noch richtige Gedanken. Weil "da definiere ich mal schnell eine Excpetion um den Rest wird sich schon der Compiler/Interpreter kümmern."

Du hast die Aufgabenstellung gelesen? Ich habe nur meine Meinung zu deinem Post gesagt. Aber wer keine Meinung anderer akzeptieren kann. Es geht um Schule. Glaubst Du in der Schule hat der Informatiklehrer Zeit in zwei Stunden pro Woche mit den Schülern Konzepte zu definieren, also Theorie durchzupauken. Insbesondere bei der üblichen Schülerstruktur (die einen wollen sofort was machen, die anderen interessiert es eh nicht). Nicht das ihr mich falsch versteht, ich war selber mal so in dem Alter. Und noch kein winzigliches bisschen weitergekommen? Zwei Kumpels und ich habe damals als Abschußarbeit ein kleines Spiel (Inhalt war eine einfache Kombination aus Patrizier und Civilisation, man musste Handel treiben und konnte sich (geschichtlich korrekt) in der Römerzeit zum Caesar hocharbeiten) mit etwas Grafik in TurboPascal programmiert.

Pingu

Es sind nicht alle so schnell im definieren von Exceptions wie du. Und was du den Schülern/Studenten unterstellst, ist in diesem Zusammenhang eine Unverschämtheit. Woher willst du wissen, wieviele „richtige“ oder falsche Gedanken sich ein Programmierer bei der Arbeit macht?

Provokativ habe ich nie behauptet, Exceptions seien das Nonplusultra. Doch fällt es mir schwer dir abzunehmen, daß du gänzlich ohne Exceptions auskommst und der Superprogrammierer bist, der du so gerne wärst.
 
Zuletzt bearbeitet:
Ich sage nur: ein Klassiker schlecht hin: http://www.mrunix.de/forums/showthread.php?t=45810

@Wolfgang
Sicherlich mag es rühmliche Ausnahmen geben. Aber schau Dich doch mal um und in die Welt hinaus, insbesondere an unsere heutigen Schulen.
Übrigens meine Meinung war insbesondere auf die Lernsituation, eben die Aufgabenstellung, bezogen. Ich selbst arbeite z. Zt. hauptsächlich nur an Konzepten. Nur in einem Projekt führe ich auch die Implemtierung in ANSI-C speziell in LabWindows/CVI selbst durch. Dort habe ich auch ständig mit den verschiedensten Limitierung zu kämpfen. Ich selbst würde auch lieber nur in Objectiv C implementieren, aber das geht halt nicht. Aber ich bin auch in einer anderen Situation als um was es hier im Thread geht.
Zu den Exception sicherlich kann man diese auch verantwortungsbewußt einsetzen. Aber auch hier gilt, schaue Dich mal in der Welt um und nicht nur auf Deine Arbeiten, was hier wirklich passiert.

Pingu
 

Dann möchte ich mich wegen der stellenweise harten Worte entschuldigen. Manches kam schlicht falsch, unangemessen, verkehrt (nichtzutreffendes streichen) rüber.

Peace

Wolfgang
 
hallo,
ich habe startprobleme mit dem programieren, irgendwie komme ich nicht zu einem ergebnis beim installieren!!! ich will nur pascal programieren, irgendwie komishc alles, kann mich jemand einweihen wie das alles auf dem mac geht?? bin aucherst paar monate macuser!! (also wie pascal geht weiß ich ein bisschen, nur wie ich die tools und codes installiere nicht)
habe auch nen thread: https://www.macuser.de/forum/showthread.php?p=2050655#post2050655

danke und shcönen sonntag abend noch
 
Zurück
Oben Unten