Lernmethoden -> Informatik



  • Wir haben in der Schule Informatik und als Programmiersprache nutzen wir C++.
    Allerdings ist die Sprache ein bisschen kompliziert.
    Vor allem Arrays, Funktionen, Bedingungen usw.

    Meine Frage::

    Bringt es was, wenn ich mich vor mein PC hocke, ein C++ Buch nehme und ein bisschen übe ? (Falls ich Schwierigkeiten habe, kann ich ja auch meinen Lehrer fragen)

    oder kennt ihr effektivere Lernmethoden ?



  • buch nehmen und üben klingt absolut richtig.
    vor allem fehler machen und fehler korrigieren.



  • Such dir nen Projekt. Im Studium zerhackt man gerne mathematische Algorythmen und versucht Prozeduren zu entwickeln mit denen man Gleichungen und so möglicht "kurz" löst. Für Leute die aber nicht so ein riesen Interesse an sowas haben ist es aber ziemlich ätzend. Aber eigentlich fällt einem immer irgendetwas ein, wofür man was programmieren kann. Zum Beispiel ne Geburtstagserinnerung oder ich versuche im Moment nen Programm zu entwickeln mit dem man das Kartenspiel "Phase 10" "spielen" kann. Bei sowas ist der Ergeiz auch größer zu lernen und sich weiter zu entwickeln.



  • elise schrieb:

    buch nehmen und üben klingt absolut richtig.
    vor allem fehler machen und fehler korrigieren.

    Wobei die Betonung dabei glaube ich auf "üben" liegt. Man lernt, mit einer Programmiersprache umzugehen, indem man sie anwendet. Deshalb sollte man sich irgendwelche kleineren Projekte suchen, die man damit realisiert. Durch lesen allein lernt man den Umgang mit einer Programmiersprache nicht. Aber man kann natürlich auch nicht komplett darauf verzichten.



  • learning by doing, also programmieren, compilieren, debuggen, Algorithmen finden, umsetzen, kleine Projekte programmieren und schon mal ein paar Module zusammenschreiben und auch größere Projekte angehen, also Module zusammenstellen, neue programmieren, reverse disassembling, oder source codes anschauen usw.
    Wenn einem kein Projekt einfällt, kann man ein gutes Programmierbuch für eine andere Sprache nehmen, etwa Apl oder Basic (nur als Beispiel) und die Codebeispiele nach C++ übersetzen.
    Aktuelle Projekte, die für Schüler interessant sein können, sind vielleicht Robotersteuerung und Algorithmenverbesserung/-austausch mit anderen.

    Dann gibt es auch Dinge zum Auswendiglernen, sowas wie Schlüsselwörter oder das grobe Grammatikgerüst oder sprachtechnische Kniffe. Hier kann man sich Templates erstellen, Tassen mit Inhalten drauf oder die Struktur an andere Strukturen kleben, also an z.B. an die Uhrzeit.
    (Achtung, Insider: An Uhrzeit 24.00 könnte dann die z.B. Zahl 384 kleben 😉 )

    Neben Fehler machen und korrigieren ist Fehlerprotokollierung nicht zu verachten.

    Ach ja, und statt mit einem Buch könnte man auch erstmal mit einem guten Tut arbeiten, z.B. wie
    http://www.c-plusplus.net/tuts/cpp/vcppk.zip



  • learning by doing!
    Ich hab noch niemanden getroffen, der mit reinem Bücher lesen und nachschreiben was gelernt hat. Wobei ich eh der Meinung bin, das man "programmieren" nicht lernen kann. Entweder man kann's oder nicht und das hat nichts mit der Programmiersprache zu tun.
    Die Sprache ist unerheblich, aber C/C++ ist auf jeden Fall ein guter Start. C-artige Sprachen gibt es eine ganze Menge, dann geht das "Lesen" und einarbeiten später wesenlich einfacher. Auch wenn's am Anfang kompliziert erscheint, bekommt man doch schneller eine Idee davon, wie ein Rechner arbeitet und Daten von A nach B schiebt.
    Ansonst kommt der Rest wie immer mit der Übung. Das kann dann schon ein paar Jahre dauern, bis man Konzepte wie OOP wirklich verinnerlich hat.
    Vielleicht stellst Du ja auch fest, das das überhaupt nichts für Dich ist. Aber da es heut zu Tage ohne Rechner ja nicht mehr geht, ist es auf jeden Fall kein verschwendetes Wissen. Egal ob es später mal ein Office-Macro ist, irgendwelche Automatisierungsscripte, Flash, Internet, what ever, über "Schleifen", "Bedingungen" und "Datenarray's" wirst Du immer wieder stolpern.



  • Wobei ich eh der Meinung bin, das man "programmieren" nicht lernen kann. Entweder man kann's oder nicht und das hat nichts mit der Programmiersprache zu tun.

    Das heißt entweder bist du mit dem Programmierergen geboren oder nicht?

    Man kann prinzipiell alles lernen was andere auch können, denn die haben es ja auch irgendwann einmal gelernt. Vielleicht sind ab einem bestimmten Punkt durch die eigene Intelligenz Grenzen gesetzt, aber Programmieren ist im Grunde genommen wirklich nicht schwer, da es reine Logik ist (im Gegensatz zu Naturwissenschaften).



  • matze555 schrieb:

    Wobei ich eh der Meinung bin, das man "programmieren" nicht lernen kann. Entweder man kann's oder nicht und das hat nichts mit der Programmiersprache zu tun.

    So ähnlich wie man "Englisch" nicht lernen kann? Entweder man kann's oder nicht. Moment... 🙂



  • Guybrush™ schrieb:

    Man kann prinzipiell alles lernen was andere auch können, denn die haben es ja auch irgendwann einmal gelernt. Vielleicht sind ab einem bestimmten Punkt durch die eigene Intelligenz Grenzen gesetzt, aber Programmieren ist im Grunde genommen wirklich nicht schwer, da es reine Logik ist (im Gegensatz zu Naturwissenschaften).

    Programmieren ist nicht reine Logik. Eigentlich ist Programmieren ein enorm kreativer Prozess, bei dem es viele unterschiedliche Ziele gibt, die der Code später erfüllen soll. Ich denke, in dem Zusammenhang fließt oft auch eine ganze Menge Intuition in den Vorgang ein, die natürlich auf Erfahrung basiert. Deshalb muss man viel üben, damit man die Erfahrung ansammelt.

    Und natürlich kann man für das Programmieren auch mehr oder weniger Talent haben. Genauso wie für alle anderen Tätigkeiten auch.



  • Macht halt auch einen Unterschied ob man nur dafür lernt um im Unterricht zu bestehen oder weil man sich selbst dafür interessiert. Ich weiß das von Freunden von mir die C++ in der Schule hatten und da wurde das nie so intensiv durchgesprochen wie im Studium, deswegen reicht hier vielleicht schon diese Zusammenfassung : http://www.willemer.de/informatik/cpp/crash.htm


Anmelden zum Antworten