Effektives lernen gefragt
-
Naja, es gibt da schon ein paar grundsätzliche Lernregeln, die einfach aus dem Aufbau des Hirns her rühren.
Eine sehr interessante Variante ist für mich immer, selber über das zu schreiben, was ich nicht verstehe. Das führt dazu, dass sich das Hirn mit den Informationen auseinandersetzen muss. Man versteht dadurch die Zusammenhänge nach und nach. Okay, das Meiste von dem Geschriebenen kann man wegwerfen, aaber man hat's dann meistens verstanden.(Einen Vortrag über Lernpsychologie erspar ich euch jetzt lieber
)Ansonsten schließe ich mich den Vortippern an. Code lesen, Code schreiben, Code verstehen, Fehler finden. - so lernt man...
cYa
DjR
-
C++ ist ein ziemlicher Brocken um mit dem Programmieren anzufangen, wie Gregor schon gesagt hast. Wenn du - so wie ich vermute - jeden Tag eine "Stunde" im Buch liesst, bist du schon nach 2 Wochen bei ueberladenen Operatoren gewesen. No panic wenn du das nicht verstehst, ich denk, wenn man in 2 Wochen so viel neues lernen will, muss einem irgendwann der Kopf platzen

IMO sollte man sowas wie eben Operatoren ueberladen erst nach z. B. ein, zwei Monaten lernen, wenn man schon halbwegs programmieren kann. Lass dir ruhig Zeit, stopf dein Gehirn nicht mit zuviel Informationen voll. Wie die anderen schon gesagt haben: schreib ganz einfache kleine Programme und spiel mit dem Quellcode rum. Bau hier was ein, da was ein... das Ganze soll Spass machen, ansonsten... ehm... machts keinen Spass
Ich z. B. hab fast 2 Monate lang an einem Programm rumgebastelt, das nichts anderes tut als Primzahlen zu suchen *g*...Und im Prinzip lern ich heute noch so (irgendwie lernt man beim Programmieren nie aus
): wenn ich irgendwo was neues hoer, das mich interessiert, oder ich in irgend einem Gebiet (z. B. Grafikprogrammierung) was neues lernen will, dann denk ich mir ein Projekt aus, und programmier mal was dazu (eigentlich eher umgekehrt: ich fang mit einem neuen Projekt an und entdecke dann, dass ich dafuer irgend was neues lernen muss). Auch wenn ich das Programm am Ende gar nicht zum Laufen bekomme, oder wenn ich die gesteckten Ziele nicht erreiche, am Ende hab ich doch 'ne Menge daraus gelernt (-:Mach dir also nur keinen Stress, geh's langsam an... am Anfang wirkts vielleicht kompliziert, aber ich glaub das ist allen so gegangen
Und wenn du irgendwelche Fragen hast - egal wie dumm sie dir auch vorkommen moegen - stell sie einfach hier im Forum. Wir haben alle mal angefangen, und haben uns die meisten dieser dummen Fragen auch selber mal gestellt ...Und lass dich nicht abschrecken wenn du auch mal irgend eine der Antworten auf deine Fragen nicht ganz klar ist, sondern frag einfach weiter 
Also, have a lot of fun (-:
-
Ich würde Dir raten das Überladen von Operatoren erst einmal nicht so sehr zu berücksichtigen.
Das A und O was Du bei der C++-Programmierung als Anfänger oder Fortgeschrittener verstehen solltest sind die Zeiger. Wenn Du die Funktionsweise von Zeigern verstanden hast, dann bist Du schon ein grossen Schritt weiter.
Das Überladen von Operatoren ist schön zu wissen, aber wirklich erst einmal nicht so wichtig wie die Funktionsweise von Zeigern.
-
die bücher sind so ne sache....
also ich habe ganz zu anfang erstmal mit turbo pascal angefangen

das sind nur befehle, und als richtiger einstieg, ein kindlicher einstieg ins programmieren.denn genauso wie jede andere sprache muss sie, wie als kind, von ganz zu anfang erlernen.
und in buch zu kaufen und mit c++ anzufanegn, ist sehr sehr flasch und bringt einem nix!
zuerst solltest du, wenn du schon mit c++ anfängst, solltest du tagelang erstmal einfach programme schrieben, monatelang, erstmal vielleicht die klassen verstehen, die zeiger, wie schonmal gesgat wurde.
und alles andere, überladen von operatoren, (was eigentlich eine ziemlich einfach sache ist) komtm dann mit der zeit von ganz alleine!
Bj
-
Um auch noch meinen Senf dazuzugeben:
Ich hab auch mit C/C++ angefangen! Zurückblickend haben die anderen schon
recht: C++ ist ein ganz schöner brocken! Aber wenn du dass erstmal gerafft
hast, verspeist du die nächste Sprache zum Frühstück.
Wenn du irgendwann, wenn du schon dachtest, jetzt hab ich das Prinzip
verstanden, plötzlich siehst, eigentlich war das bisherige nur ein Sch**ß,
wunder dich nicht. Passiert mir immer noch, nacj jahrelanger Programmiererei:
Juhu, Pointer verstanden, Operatoren verstanden, Klassen verstanden, jetzt
kann ja nix mehr kommen, und was dann? Dann taucht da das kleine, unscheinbare
Wort virtaul auf, was soll das denn? Naja, irgendwann hab auch das gerafft,
und dann? Warum bracuh ich jetzt für mein kleines, unscheinbares Spielchen
Lineare Algebra, dass mir der Kopf schwirrt.... Das geht immer so weiter :p
Auch den ganzen Damen und Herren, die hier unglaublich schlaue Sachen schreiben
-
Hey ich danke euch, habt mir wieder Mut gemacht. Naja, beschäftigen tu ich mich jetzt schon ein halbes Jahr mit C++ nur halt eben einmal mehr einmal weniger. Seid 3 Tagen lerne ich wieder regelmäßig. Hab alles wiederholt, hab hier im Forum nachgelesen(wenig verstanden) und schließlich mir noch das Tutorial von http://www.schornboeck.net/ckurs/inhalt.htm angesehen. Bis peratoren überladen bin ich auch hier gekommen und hab auch die Übungen gemacht.Ich bleib sicher am Ball man hört sich nd irgendwann zeig ich euch dann eine eigene 3D Engine
Machts gut. Nochmals danke für eure Hilfe.cu Kearf
-
Taurin schrieb:
C++ ist ein ganz schöner brocken! Aber wenn du dass erstmal gerafft
hast, verspeist du die nächste Sprache zum Frühstück.Das ist so allgemein falsch, hängt von der nächsten Sprache ab, und stimmt vielleicht gerade mal für Mainstream-Sprachen wie Java oder PHP. Ich glaube z.B. nicht, dass man Haskell "zum Frühstück verspeist", egal wie gut man C++ "gerafft" hat.
-
Wo braucht man denn eine funktionale Programmiersprache wie HASKELL.
Praktische Anwendung in der "normalen Welt" -> 0.
-
Das wurde von COBOL auch behauptet.. naja, ist eine andere Diskussion und passt nicht zum Thema!
So nebenbei: Im Dialog lernt es sich auch am einfachsten. Also such Dir wen, der's kann und befrag ihn...
-
Die Aussage war: Wenn Du C++ verstanden hast kannste andere Sprachen auch leicht verstehen... also ist es vollkommen wurscht, ob die Sprache jetzt real verwendet wird oder nicht. Aber um noch ein/zwei Beispiele zu bringen würd ich mal sagen auch mit Lisp oder Prolog wird man sich wohl nicht soo leicht tun.
MfG Jester
-
Bashar schrieb:
Taurin schrieb:
C++ ist ein ganz schöner brocken! Aber wenn du dass erstmal gerafft
hast, verspeist du die nächste Sprache zum Frühstück.Das ist so allgemein falsch, hängt von der nächsten Sprache ab, und stimmt vielleicht gerade mal für Mainstream-Sprachen wie Java oder PHP. Ich glaube z.B. nicht, dass man Haskell "zum Frühstück verspeist", egal wie gut man C++ "gerafft" hat.
Ich geb's ja zu: Ich habe ein wenig pauschalisiert.
-
PASCAL und BASIC kapiert man auf jeden Fall, wenn man C schon kann...
-
Pascal und Basic kapiert man auch ohne C
-
Basic hab ich mit 8 Jahren ein wenig rum gespielt. Damals noch QBasic.
Begonnen habe ich mit dem guten alten Amiga Basic.Tja, da sind aber Welten zwischen Basic und C++.
Nur mit Basic fang ich sicher nix an, ich denke mir das es nur eine Frage der Zeit ist bis man C++ checkt. Wenn ich jetzt brav jeden Tag lese und die Codes schreibe und ausprobiere und immer wieder versuche eigenen Code zu schreiben werde ich es auch noch lernen. Habs mir halt leichter vorgestellt.
Mich interessiert am meisten Sound und Internet. In diesen Bereichen will ich mich echt gut auskennen. Möchte zb. eigentlich Programme wie FruityLoop und CuBase für die Linux Oberfläche schreiben. Halt Open Source. Nur bis dahin habe ich noch einen sehr langen und Steinigen weg vor mir.
mfg Kearf
-
Kearf schrieb:
Tja, da sind aber Welten zwischen Basic und C++.
Das stimmt wohl. Aber mit dem programmieren ist es wie mit dem kochen. Die einen kochen nach Rezept und bleiben sehr lange abhängig von einem Kochbuch. Die anderen probieren so lange rum bis es schmeckt, variieren und kombinieren Rezepte und irgendwann schmeckt fast alles was sie kochen.

-
also ich programmiere schon seit knapp 2 Jahren eher hobbymäßig an allem möglichen rum. Ich weiß aber heute noch nicht, wie das jetzt mit virtueller Klassenvererbung oder auch überladenen Operatoren geht... ganz einfach weil ichs bis jetzt noch nicht gebraucht habe und auch gar nicht wüsste wozu.
Deswegen bringt es meiner Meinung auch nichts, als "justforfun" Progger gleich so nen Zeug zu lernen. Ich halte meiner Meinung nach Lernen bis KLassen, Vererbung und Zeigern sinnvoll, was danach kommt lernt man, wenns gebraucht wird.Naja, ist meine Meinung. Aber ich kenn auch sonst einige die länger programmieren und vieles noch nicht können.
-
schlumpfl schrieb:
Naja, ist meine Meinung. Aber ich kenn auch sonst einige die länger programmieren und vieles noch nicht können.
Je länger (programmieren) lernt, desto stellt man fest, dass man eigentlich
am Anfang ist zu lernen
-
schlumpfl schrieb:
Deswegen bringt es meiner Meinung auch nichts, als "justforfun" Progger gleich so nen Zeug zu lernen.
Ja, bin ich auch der Meinung. Bei mir war es so: Als ich das erste C++ Buch gelsesen habe, war bei ab Kapitel5 (keine Ahnung was das war) oder so sense. Ich habe nichts mehr verstanden, etc. Dann, als ich das dann irgendwann viel spaeter mal gebraucht habe, habe ich mir gedacht: Aha, das habe ich mal irgendwo gelesen, ich guck mal nochmal nach. Dann habe ich es nochmal gelesen und auch verstanden. Also ich lerne immer nur soviel wie ich brauche... Und mit der Zeit braucht man halt immer mehr, also lernt man auch immer mehr...

MfG Aoeke
-
schlumpfl schrieb:
also ich programmiere schon seit knapp 2 Jahren eher hobbymäßig an allem möglichen rum. Ich weiß aber heute noch nicht, wie das jetzt mit virtueller Klassenvererbung oder auch überladenen Operatoren geht... ganz einfach weil ichs bis jetzt noch nicht gebraucht habe und auch gar nicht wüsste wozu.
Und woher weiß man, dass man virtuelle Klassenvererbung braucht, wenn man sie nicht verstanden hat? Und zumindest Zuweisung sollte man überladen können, damit die geschriebenen Klassen wenigstens als "fehlerfrei" durchgehen, und wenn man operator= überladen kann, kann man auch die anderen überladen. IMHO sollte man den Sprachumfang immerhin komplett im Hinterkopf behalten, damit man weiß, wie man seine Probleme elegant lösen könnte.
-
operator void schrieb:
schlumpfl schrieb:
also ich programmiere schon seit knapp 2 Jahren eher hobbymäßig an allem möglichen rum. Ich weiß aber heute noch nicht, wie das jetzt mit virtueller Klassenvererbung oder auch überladenen Operatoren geht... ganz einfach weil ichs bis jetzt noch nicht gebraucht habe und auch gar nicht wüsste wozu.
Und woher weiß man, dass man virtuelle Klassenvererbung braucht, wenn man sie nicht verstanden hat? Und zumindest Zuweisung sollte man überladen können, damit die geschriebenen Klassen wenigstens als "fehlerfrei" durchgehen, und wenn man operator= überladen kann, kann man auch die anderen überladen. IMHO sollte man den Sprachumfang immerhin komplett im Hinterkopf behalten, damit man weiß, wie man seine Probleme elegant lösen könnte.
und wie lange dauerts, bis man soweit ist, dass man sowas wie virtuelle Vererbung braucht?
Klar ist's schoen zu wissen, aber erstmal funktionsaufrufe, if's, Schleifen und vielleicht Klassen verstehen. IMO muss man nicht immer alles auf Anhieb "perfekt" loesen, es ist besser, wenn man's erst mal schlecht und umstaendlich macht... dann weiss man den einfachen Weg anschliessend wenigstens zu schaetzen
(Erfahrung ist IMO halt der beste Lehrer)