Effektives lernen gefragt



  • Kearf schrieb:

    Ja Hallo bin neu hab heut schon mal was geposted was nicht so intelligent war(I am sorry) aber jetzt kommt eine Frage was mir schon lange durch den Kopf geht und hoffe hier richtig zu sein.
    Also, ich lese das Buch "Jetzt lerne ich C++" bin bei Std.14 "Überladen von Operatoren" und denke mir seid der Std.12 "Referenzen und Zeiger weiterführende Themen" was geht den hier ab.
    Ich weiß nicht mehr recht wie ich das alles am besten lernen soll den nur mit lesen hat sichs ganz bestimmt nicht. Wenn ich dann versuche eigenen Code zu schreiben weiß ich nicht wie. Mir fehlt dann einfach der Plan. Ihr Coder werdet für mich irgendwie zu sowas wie Superhelden je weiter ich durchs Buch lese den zb. Operatoren überladen check ich gar nicht mehr. Is mir viel zu hoch und ich mach mir schon ernsthaft Gedanken um meine Intelligenz.
    Ich hoffe nicht zu dumm zu sein fürs Programmieren, doch wenn ich mir Threads hier im Forum über C++ durchlese verstehe ich meistens auch nur Bahnhof.
    Wie lernt ihr das??
    Muß ich dafür in eine Schule gehen damit ich das verstehe oder hat das damit nichts zu tun? Normalerweise lerne ich schnell aber beim Programmieren verzweifle ich.
    Wäre echt toll von euch wenn ihr mir ein paar Lerntips geben könnt damit ich in diesem Leben noch ein richtiger Coder werde.

    Ja! - Dieses Zenario begegnet hin und wieder! 😉

    Als ich im letzten Herbst eine Gruppe von Azubi (FI-AE) übernommen hatte,
    war da jemand im 2. Lehrjahr, den hatte ich schon fasst aufgegeben:

    War nicht dumm, theoritsches Wissen sehr gut, eigentlich auch sehr fleißig und hatte auch ein anständiges Abi gemacht. Aber am PC - nur Luft. Bei C++ ist er mir bereits nach 3-4 Tagen "mental ausgestiegen". Als es dann zum ersten go-to-practice ging... ohje,ohje. War nur in den Büchern am Blättern, postete in Foren um Hilfe, nervte die Anderen wegen jeden Kleinsc****. Der Compiler machte stundenlang alle 10 sek *bäng* (da bekommt der Begriff 'Code' eine völlig neue Bedeutung 😃 ). Nachdem er in drei Tagen keine 30 SLOC stehen hatte, aber 20 angefangene Klassen alle ausge´rem´t, mußte ich tatsächlich mal aufstehen...

    Und zwar hatte er die nötigen sematischen Mittel schnell erfasst und zusammengetragen, hat auch schönen Beispielcode gefunden und angepasst, aber er hatte nicht verstanden, wozu ...

    Für den war Marc++us Buch die ultimative Erlösung:
    http://www.c-plusplus.net/titelanzeige.php?ISBN=3826629841

    Da stand nichts drin, was er nicht schon mal an der einen oder anderen Stelle gehört oder gelesen hatte. Aber es wurde für Ihn zum erstenmal Alles in einen Gesamtkontext eingeordnet. Zu Erkennen war a)wozu b)warum c)wohin.
    Wenig Details in dem er sich verlieren konnte. Ein strukturiertes gut ausgebautes Autobahnkreuz in der C++/OOP Methodik, das Ihn erst in die weiterführende C++-Gebiete gebracht hat.

    Dann begann die Abstraktion, konzentriertes strukturiertes Denken.
    Programmieren lernen heißt nicht Programmiersprachen lernen!
    Du wirst kein C++ Guru nur weil Du die STL im Schlaf, die Besonderheit jedes Compilers oder 'Modern C++ Design' kennst.
    Es ist ein rekursiver Erfahrungs- und Abstraktionsprozess, der in keiner OO-Hochsprache so gefordert wird wie in C++. Deshalb würde auch ich sagen, jemand der vernünftig C++ kann, hat in der OOP anderer Hochsprachen keine Probleme mehr.



  • hmmm. Dieses Buch liegt schon genauso lange herum wie das jetzt lerne ich Buch.
    Hab jetzt auch schoon im anderen ein wenig nachgelesen und ich muß dir absolut recht geben. Danke für die Tips werd mich nicht mehr auf EIN Buch versteifen sondern überall alles nachlesen wenn ich schon die Möglichkeit habe.
    Jetzt gerade plagt mich eh einmal ein anderes Problem und zwar funzt gar kein Compiler mehr. Bekomme nur Fehlermeldungen obwohl ich die Compiler neu deinstalliere und wieder installiere.
    Aber auch dieses Problem werd ich lösen und mit der Erfahrung gelößter Probleme wachse ich dann sowieso in diese Materie hinein.
    Hab erst seid vorigem Jahr Dezember einen Rechner und habe dafür eh schon allerhand gelernt und werd auch so weitermachen und eines Tages bekomme ich vielleicht sogar eine Arbeit in der IT Branche.

    mfg Kearf 😉



  • Ich denke, unabhängig welche Programmiersprache gemeint ist, jemand der algorithmisch Denken kann, wird es leichter haben, als jemand der ein Problem nicht in viele Teilprobleme zerlegen kann.

    So Long Winn



  • Ich finde den letzten Punkt fast noch wichtiger, weil er für fast alle Lebensbereiche anwendbar ist: "Ein Problem in viele kleine Teilprobleme zerlegen."



  • ja ja, der "Divide and Conquer" ... 😃



  • Kleiner Tipp, und des ist ernst gemeint :
    Wer Assembler kann, hat mit C nicht genz o viele Probleme, wie einer, der es nicht kann.

    Das liegt daran, dass Assemblerprogrammierer aufgrund ihrer Nähe zur Maschine einiges über Speicherorganisation und Prozessorfunktionen wissen müssen. Dies erleichtert aber auch das Verständnis von Pointern und eingem Anderen.
    Wenn man dann C kann, ist der Sprung zu C++ eigentlich nicht mehr sooo weit.
    Wobei ich eher ein Freund von objektorientiertem C bin, aber das ist jedem sein ding - solange es lesbar bleibt..



  • Ich muss ehrlich sagen, das ich es wirklich nicht verstehen kann, warum die Leute C++ als so schwer hinstellen!
    Meiner Meinung nach ist die Sprache perfekt zum Einstieg, warum soll ich so nen Scheiss wie TP lernen, wenn´s mit C++ vielleicht ein wenig langsamer, aber letzendlich effizienter geht!
    C++ ist doch sehr gut strukturiert und gut zu verstehen, besonders wenn es darum geht die Grundlagen zu lernen!
    Ich bin selber relativer Noob aber muss sagen das mir c++ deutlich leichter fällt, als VB, Java oder sogar TP 🙂



  • Was für jeden Tutorial und Buchschreiber eine Selbstverständlichkeit ist, ist für den Neuling noch lange nicht offensichtlich. Da müssen einige Türen im Denken geöffnet (und auch geölt) werden. Deine 'Blockade' ist also absolut natürlich - das ging uns allen so.
    Deswegen kann ich mich all denen nur anschliessen, die die Praxis empfohlen haben.
    Was ich bislang vermisst habe, ist ein Hinweis auf die Wichtigkeit des Einzelschrittdebuggens. Jeder Anfänger sollte *sehr* schnell auch an den Debugger rangehen. Da wird einiges offensichtlich!
    Hat man das mal in den Fingern, kann man auch schnell mal ein 'was passiert eigentlich wenn...' versuchen.
    Eben auch sehr sinnvoll beim Thema virtual und Operatorüberladung.
    Und keine Panik vor den Templates.
    Es dauert eine Weile, bis man weiß, wann man was sinnvoll einsetzt.
    Dabei hilft nur *sehr viel* Praxis.



  • Ich kann nur dazu sagen, dsas ich C nach dem Lesen von 2 Büchern überhaupt nicht verstanden habe. - naja, damals wusste ich auch nicht, wie man lernt..
    Zumindest hab ich dann alles innerhalb einer halben Stunde begriffen, als ich mich mit nem Bekannten hingesetzt und ihm zugesehen hab, wie er n C-Programm schrieb. Anschließend hab ich die Bücher begriffen. C++ hat ein klein wenig länger gedauert, aber des Wichtigste davon hab ich inzwischen schonmal gemacht..



  • @Falky:
    Hmmmm. Ich habe jetzt 1 Jahr TP gelernt und seit dem kann ich mich in bisher jede Sprache die ich getestet habe einarbeiten. Bist du dir sicher das es dir nicht leichter fällt C++ zu lernen, weil du schon Kenntnis in anderen Sprachen hast? Ich habe mehr oder weniger (hatte schon viel Theorie) auch erst mit C++ angefangen und fand den Einstieg extrem leicht. Ich denke aber das kommt daher das ich die Grundlagen der Programmierung verstanden habe.

    Ich schließe mich den Lernmethoden der anderen an. Vor allem das ausprobieren der Beispiele und nicht einfach nur das lesen, warum etwas so ist bringt oft sehr viel und man begreift es schneller. Und einen Tip würde ich dir noch geben, halte dich nicht strikt an Bücher, sondern Probier aus und mache es vielleicht anders. Habe ich selbst erst jetzt bei einem Problem gemerkt sich nicht immer an Bücher zu klammern, der eigene Stil ist wichtig.

    Code-Hacker


Anmelden zum Antworten