C bevor man C++ lernt erlernen?



  • Hallo,
    ich habe vor einigen Wochen angefangen C++ zu lernen,
    nun hörte ich von mehreren das man unbedingt vorher C lernen sollte und dann auf C++ umsteigen sollte.

    Nun was sagt ihr dazu ? Ein Autor eines Buches schreibt, dass es unnötig sei c davor zu lernen, ist es nun nötig oder nicht?

    Und welches Buch könnt ihr mir als Anfänger empfehlen, ich will mal später die Programmsprache sehr gut beherschen!



  • denke ich nicht, ich finde vorher C gelernt zu haben ist sogar hinderlich um sich dem OOP Konzept zu nähern,
    also lass den quatsch, falls du später von C++ auf C runtermusst,
    (wegen performance, direkten hardware-zugriff usw) kannst du das immernoch dazulernen.



  • Auf jeden Fall solltest du vorher C lernen, denn C ist eine Teilmenge von C++ und in Geometrie machst du ja auch erst 2D bevor du 3D machst, und 2D ist schließlich auch eine Teilmenge von 3D



  • Nedem schrieb:

    ...nun hörte ich von mehreren das man unbedingt vorher C lernen sollte und dann auf C++ umsteigen sollte.

    Diese Aussage ist Unfug. C++ mag zwar von C abstammen, die Unterschiede sind aber dennoch gegeben. Warum sollte man die Sprache C erst lernen wenn man ohne sie ebenso klar kommt.

    Ich rate dir wenn du C++ lernen willst, auch eben dies zu tun. Solltest du aus irgendwelchen Gründen dann doch mal etwas von C brauchen, so beschränk dich auf den benötigten Teil. Zumal ich hier immer wieder die Erfahrung mache das die, die zuerst C gemacht haben sich auch beim Umstieg schwer tun und immer wieder C-Konstrukte verwenden wo es C++ Gegenstücke gibt.

    cu André



  • ich hab gleich angefangen c++ zu lernen und schreib mittlerweile auch c-code, das ist kein problem.
    (c hab ich nicht extra gelernt, das ergibt sich wenn man sich c-codes ansieht und einfach mal probiert c-code zu schreiben, der c-compiler sagt einem dann schon ob man das in c darf was man gerade versucht oder nicht).
    andersrum gehts sicher genauso aber imho ist es unnoetig, erst c zu lernen.

    mfg,
    julian



  • Wobei C++ nicht die beste Sprache ist, wenn man gerade mit dem Programmieren anfängt.



  • Nedem! Man erlangt keinen Vorteil vorher C zu lernen. C++ ist aus C entstanden, aber heute inkompatibel. Man bedenke das C++ vor über 20 Jahren aus C entstand. Beide Sprachen haben sich weiter entwickelt, und das ganz sicher nicht in die gleiche Richtung! Jede Sprache hat ihren eigenen sinnvollen Weg. Wenn sie beide gleich wären, bräuchte man nicht zwei Sprachen. Dann hätte man nicht C++ erfinden brauchen. Also warum vorher C lernen? Damit man das Wissen streichen kann, wenn man C++ programmieren will? Völlig sinnlos, wenn man eigentlich kein C programmieren will.

    Will man in der Zukunft C programmieren? Ja? Dann sollte man C lernen! Will man kein C programmieren? Dann sollte man C++ oder eine andere Sprache lernen (halt die, die man programmieren will). Vorallem als Programmieranfänger sollte man sich nicht verwirren lassen. Später, wenn Programmieren einem im Fleisch und Blut liegt, kann man immer noch andere Sprachen (leichter) lernen. Jetzt gilt erstmal überhaupt DIE Sprache zu lernen, mit der man erstmal programmieren will. Und das ist schon schwer genug, wenn man noch nie programmiert hat.

    In dieser Liste unter http://david.tribble.com/text/cdiffs.htm sieht man sehr schön die Inkompatibilitäten zwischen C und C++ sehen. Und das sind nur die Sprachunterschiede, die Standard-Libraries sind da nicht mal mit aufgeführt! Wenn du vorher C lernst, wirst du später in C++ noch mehr Fragen als Erkenntnisse haben (sprich Verwirrung).

    Ein gutes Buch für C++-Einsteiger ist meiner Meinung dieses hier:
    http://www.oop-mit-cpp.de/



  • kingshorses schrieb:

    Wobei C++ nicht die beste Sprache ist, wenn man gerade mit dem Programmieren anfängt.

    Das möchte ich hier nicht grundsätzlich so stehen lassen. Ja, Sprachen die viele Interna verbergen sind einfacher und schneller zu erlernen. Doch im Gegenzug habe ich auch festgestellt das jemand der C++ gelernt hat, leichter mit einfachen Sprachen klar kommt als umgekehrt. Okay, mit C++ als Einstiegssprache wird man sich nicht nur einmal eine blutige Nase holen, aber man kann von C++ auch viel lernen.

    cu André



  • Alle richtigen Programmierer haben mit BASIC angefangen. Auf C64 und Co.



  • Ja, du kannst mächtig auf die Nase fallen, wenn du keinen guten Lehrer hast. Da man meistens keinen persönlich hat, muß man sich Büchern bedienen. Und hier kann man auch auf die Nase fallen, wenn man an eines der leider vielen schlechten C++-Bücher gelangt. 😞 Wenn man ein sehr gutes Buch hat und einem sauberes und echtes C++ beibringt, hat man schon mal weniger Stolperfallen und für die Zukunft eine gute Wissensbasis.



  • Xtrem Wichtig schrieb:

    Alle richtigen Programmierer haben mit BASIC angefangen. Auf C64 und Co.

    Das soll wohl ein Trollversuch werden, oder? Zum einen schreiben wir das Jahr 2007 und du wirst es schon schwer haben ein Gerät aus der alten Zeit zu bekommen (Ich habe noch zwei Atari ST rumstehen, wenn jemand will ;P ) und zum anderen kann BASIC einem die Programmierung auch versauen. Nicht jeder hat ein Vater der selbst Programmierer ist und einem über die Schulter schaut und sagt was sauber und was unsauber ist, und ich kenne noch genug Leute die der Meinung sind das ein goto auch in den Hochsprachen wichtig wäre...

    Was nicht heißt das man mit BASIC nicht auch sauber schreiben kann, es mag auch daran liegen das es zu dem Zeitpunkt als BASIC Modern war noch nicht allso viele Entwickler gab, und man kaum Möglichkeiten hatte seinen Code zu "verifizieren".

    cu André



  • Naja, damals war es halt nicht sinnvoll einen C-Compiler auf einem C64 zu benutzen. 😃 Vom Ergebnis mal ganz abgesehen. 😉 Da war es schon seeehr sinnvoll BASIC einzubauen und jeder der mal reinschnuppern wollte, konnte seine kleinen Programme proggen. Da ging es auch nicht darum Programme zu entwickeln, die für das Büro waren oder 20 Jahre gewartet werden. Es waren Homecomputer... Das Home sagt schon alles über den Einsatzzweck. Und für aufwändigere Anwendungen (die es ja auch teilweise gab) gabs dann Assembler. Und galt dann mit allen Mitteln das Maximum aus der kleinen Kiste raus zu holen. Egal was es koste (in dem Fall Wartbarkeit).

    Es gab ja Hochsprachen, wie C-Compiler, Comal, Pascal usw. Aber die waren für Homecomputer nicht sinnvoll.

    Heute würde ich eher (wenn es nach Homecomputer-Art gehen soll) Python oder Ruby empfehlen. Aber da kommt man halt auch an seine Grenzen, wie damals mit BASIC.


  • Mod

    Dieser Thread gehört nicht in dieses Forum.



  • Artchi schrieb:

    Ein gutes Buch für C++-Einsteiger ist meiner Meinung dieses hier:
    http://www.oop-mit-cpp.de/

    Wenn ich mir die Kommentare durchlese die zu diesem Buch abgegeben wurden, und was mir die freigegebenen Kapitel bestätigen, würde ich das Buch keinen Einsteigern ohne Vorerfahrung in anderen Sprachen empfehlen. Dafür sind die Erklärungen zu knapp gehalten und in dem STL Bereich fehlen einige verständliche und vertiefende Beispiele (auch hier ist mir der Stil für Anfänger eindeutig zu theoretisch).

    cu André



  • asc schrieb:

    Xtrem Wichtig schrieb:

    Alle richtigen Programmierer haben mit BASIC angefangen. Auf C64 und Co.

    Das soll wohl ein Trollversuch werden, oder? Zum einen schreiben wir das Jahr 2007 ...

    2008



  • Mir fang' bei 0 an... 😃



  • Ich finde wenn man mit dem Programmieren anfangen will dann gleich richtig.
    Ich hab auch gleich mit C++ angefangen und hatte keine Probleme damit.

    Ich wuerde "C++ Lernen und professionell anwenden"
    von Peter PRinz und Ulla Kirch-Prinz empfehlen.
    (ISBN-3-8266-0824-0)


Log in to reply