Was soll ich als Neuling machen? ( Einführung / Tutorial gesucht ! )



  • Hallo

    strcat schrieb:

    Also ich würde dir raten, zuerst C zu lernen!

    Da mußt du dich nicht mit den Eigenschaften von Objektorientierten Sprachen herumschlagen und du hast danach ne gute Basis!

    Ich persönlich hab auch zuerst C, dann Java gelernt, danach ist das Erlernen von anderen Sprachen wie C++ usw. relativ einfach.

    Also, meine Empfehlung: Erst C, danach Java oder C++, ist eigentlich egal aber meiner Meinung nach kann man Objektorientiertes Programmieren besser mit Java lernen!

    Ich möchte meinem Vorrednder nicht wiedersprechen, weil ich wir schön öfters verschiedener Meinug waren 😉 , sondern weil ich es besser finde um C einen grossen Bogen zu machen. Das rumgefrickle mit den char und die umständliche Textausgabe in der Konsole finde ich deutlich schwerer zu lernen als OOP. Ich bin allerdings selber noch nicht sehr weit, aber ich muss sagen, dass ich es nie bereut habe gleich mit C++ anzufangen.

    chrische



  • chrische5 schrieb:

    ...um C einen grossen Bogen zu machen.

    naja, dass würde ich nicht unterschreiben. wenn man microcontroller oder hardwarenahe sachen coden will ist 'c' ein muss. da helfen einem auch die besten c++ kenntnisse nix.



  • Hallo

    net schrieb:

    chrische5 schrieb:

    ...um C einen grossen Bogen zu machen.

    naja, dass würde ich nicht unterschreiben. wenn man microcontroller oder hardwarenahe sachen coden will ist 'c' ein muss. da helfen einem auch die besten c++ kenntnisse nix.

    Dessen bin ich mir schon bewusst, aber in aller Regel fängt man als Anfänger nicht mit solchen Sachen an. Wenn man also erst einmal sicher mit C++ umgehen kann dann fällt auch Umstieg auf C nicht mehr so schwer, weil man Zeiger und so etwas schon kennt. Man wird vielleicht etwas Komfort vermissen, aber es wird schon klappen.

    chrische



  • chrische5 schrieb:

    Wenn man also erst einmal sicher mit C++ umgehen kann dann fällt auch Umstieg auf C nicht mehr so schwer, weil man Zeiger und so etwas schon kennt. Man wird vielleicht etwas Komfort vermissen, aber es wird schon klappen.

    klar, wenn man erstmal eine programmiersprache kennt, fällt einem das lernen anderer sprachen auf jeden fall leichter. aber wenn einer c++ gut beherrscht und konsequent objektorientierung macht und die mitgelieferten libraries nutzt, wird ihm unter 'c' einfach ALLES fehlen. kein new, keine stl, keine templates, kein cout usw. er muss mit nullterminierten char-arrays hantieren, inkompatibilitäten (in c ist sizeof('x')==sizeof(int), in c++ nicht) und vieles mehr.



  • net schrieb:

    naja, dass würde ich nicht unterschreiben. wenn man microcontroller oder hardwarenahe sachen coden will ist 'c' ein muss. da helfen einem auch die besten c++ kenntnisse nix.

    unfug. c++ schließt diesbezüglich c voll ein. man lernt also dann doch c und c++, nur kann man sich, wenn man c++ anfängt, eine sillvolle reihenfolge des ganzen aussuchen und ist nicht gezwungen, mit der objektorientierung anzufangen, NACHDEM man hunderte von übungsprogrammen gebaut hat.

    und ich rate dringend davon ab, vorher c zu lernen. aus eher soziokulturellen gründen. die c-gemeinde stümpert stilistisch noch im urteich rum und du würdest dir grausame sachen angewöhnen, die du nie wieder los wirst (naja, 10 jahre stümperschaft halt statt ewiger verdammnis).

    prinz&prinz-kartoffelbrei nimmste für schnelle halherzige erfolge. für totalen raff unter bezahlung von denkarbeit nimmste breymann. auch hier ist dir frage, was man sich bei prinz&prinz angewohnt und wie teuer das ist.



  • Oh Mann....hör nicht auf die, lern C! 😉

    Ich würde nie behaupten das C eine besonders schöne Sprache ist oder leicht zu lernen, aber es bildet doch eine super Grundlage und danach dürften andere Sprachen kein Problem mehr sein (bis auf die Umgewöhnung nach Objektorientierten Sprachen).

    @chrische5
    Hey, du schon wieder 😉

    chrische5 schrieb:

    ...Das rumgefrickle mit den char und die umständliche Textausgabe in der Konsole...

    Was bitte ist an einem printf umständlich 😕



  • strcat schrieb:

    Oh Mann....hör nicht auf die, lern C! 😉

    Ich würde nie behaupten das C eine besonders schöne Sprache ist oder leicht zu lernen, aber es bildet doch eine super Grundlage und danach dürften andere Sprachen kein Problem mehr sein (bis auf die Umgewöhnung nach Objektorientierten Sprachen).

    Du scheinst dich noch nicht näher mit C++ beschäftigt zu haben...

    chrische5 schrieb:

    ...Das rumgefrickle mit den char und die umständliche Textausgabe in der Konsole...

    Was bitte ist an einem printf umständlich 😕

    Oh, ein printf("Hallo Welt\n"); ist noch recht einfach, aber wenn's darum geht, n 10 stellies Ausgabefeld, mit führenden Nullen und vier Nachkommastellen darzustellen, macht es schon weniger Spaß. Hier sind die C++ Streams imho schöner zu handeln.

    Des Weiteren macht es als Anfänger wirklich GAR KEINEN SPASS, sich mit strncat, strncpy und dem blöden \0 Zeichen rumzuärgern, anstatt einfach

    string s("Hallo Welt");
    s = "Foo";
    s += " bar",
    

    zu schreiben.

    MfG

    GPC



  • GPC schrieb:

    Du scheinst dich noch nicht näher mit C++ beschäftigt zu haben...

    Und wie kommst du darauf?

    GPC schrieb:

    Oh, ein printf("Hallo Welt\n"); ist noch recht einfach, aber wenn's darum geht, n 10 stellies Ausgabefeld, mit führenden Nullen und vier Nachkommastellen darzustellen, macht es schon weniger Spaß. Hier sind die C++ Streams imho schöner zu handeln.

    Des Weiteren macht es als Anfänger wirklich GAR KEINEN SPASS, sich mit strncat, strncpy und dem blöden \0 Zeichen rumzuärgern....

    Klar macht es keinen Spaß sich mit sowas rumzuschlagen, das hab ich auch nie behauptet. Und klar sind viele Sachen in c++ schöner und einfacher zu handeln als in C, aber gerade diese Schwierigkeiten üben doch.
    Wenn es ihm daraum geht, möglichst schnell Programmieren zu lernen um schöne Programme zu schreiben, dann kann er natürlich auf C verzichten.
    Aber ich finde gerade dieses "rumfrickeln" übt ungemein.

    Um mal dein Beispiel aufzugreifen, ich finde das

    s += " bar"
    

    nicht wirklich einfacher ist als

    strcat(s,"bar");
    


  • Mit

    strcat(s,"bar");
    

    ist es nicht getan, denn strcat beachtet den für s reservierten Speicherplatz nicht.



  • winheis schrieb:

    Mit

    strcat(s,"bar");
    

    ist es nicht getan, denn strcat beachtet den für s reservierten Speicherplatz nicht.

    Naja gut, das Speicherhandling unter C ist natürlich so `ne Sache, darum muß man sich halt selbst kümmern. Ist einerseits ein Nachteil (wenn man sich die ganzen Buffer Overflow Schwachstellen in vielen heutigen Programmen anguckt), andererseits ist auch das sehr interessant, man muß sich halt ein wenig damit beschäftigen!



  • strcat schrieb:

    GPC schrieb:

    Du scheinst dich noch nicht näher mit C++ beschäftigt zu haben...

    Und wie kommst du darauf?

    Weil du sagtest, dass es eine super Grundlage bildet und der Umstieg auf andere Sprachen kein Problem sei. Ich sehe das eben anders. Aber ich will keinen Flamewar starten, das wurde schon oft gengug diskutiert.

    Und klar sind viele Sachen in c++ schöner und einfacher zu handeln als in C, aber gerade diese Schwierigkeiten üben doch.

    Ich könnt mir vorstellen, dass das als Anfänger eher frustriert.

    MfG

    GPC



  • GPC schrieb:

    Ich könnt mir vorstellen, dass das als Anfänger eher frustriert.
    MfG

    GPC

    Natürlich, die Gefahr besteht! Bei vielen sinkt die Motivation weil ihnen Konsolen-programme einfach nicht spektakulär genug aussehen, dann schnappen sie sich zb. VC++, und mit ein paar klicks hat man eine wunderschöne Oberfläche....!

    Aber wenn man sich wirklich für`s Programmieren interessiert und sich nicht so schnell frustrieren lässt, dann halte ich C immer noch für die ideale Sprache um damit anzufangen!



  • erst ein mal vielen dabk für all die antworten.

    ich fasse jetzt mal zusammen, was ich aus allen antworten geschlossen habe:
    ich sollte mit c++ anfangen, weil dass nicht so viel rumgepfriemel hat und weil DAS vermutlich wirklich stimmt: 😉

    Ich könnt mir vorstellen, dass das als Anfänger eher frustriert.
    MfG

    GPC

    Und dann gibt es bei windown noch irgendein wasauchimmer zum runterladen; es wär toll, wenn das nochmal besprochen werden könnte, wie ich an einen guten compiler rankomme und was ein guter editor ist und wie ich an einen linker rankomme oder ist der schon im compiler dabei? also wie gesagt, bei der software fehlts mir noch...

    alles in allem würd ich dann jetzt mal mit c++ anfangen und ich hab grad ned genug geld für ein buch...ein onlinetutorial, das wirklich gut ist so für komplette neulinge; gibt es das?

    also noch mals vielen dank,

    Der Neuling



  • programmneuling schrieb:

    ich sollte mit c++ anfangen, weil dass nicht so viel rumgepfriemel hat...

    vielleicht macht's dir die entscheidung einfacher, wenn du dir überlegst, was du programmieren willst. je nach anwendungsfall gibt es sprachen, die mehr oder weniger gut dafür geeignet sind. aber wenn du c++ nimmst ist das nicht die schlechteste wahl. c++ ist wohl die universellste sprache....



  • programmneuling schrieb:

    Und dann gibt es bei windown noch irgendein wasauchimmer zum runterladen; es wär toll, wenn das nochmal besprochen werden könnte, wie ich an einen guten compiler rankomme und was ein guter editor ist und wie ich an einen linker rankomme oder ist der schon im compiler dabei? also wie gesagt, bei der software fehlts mir noch...

    http://www.c-plusplus.net/cms/modules.php?op=modload&name=Web_Links&file=index&req=viewlink&cid=57

    programmneuling schrieb:

    alles in allem würd ich dann jetzt mal mit c++ anfangen und ich hab grad ned genug geld für ein buch...ein onlinetutorial, das wirklich gut ist so für komplette neulinge; gibt es das?

    http://www.c-plusplus.net/cms/modules.php?op=modload&name=Downloads&file=index&req=viewsdownload&sid=2
    http://www.onlinetutorials.de/cpp-index.htm



  • Morgen,

    programmneuling schrieb:

    Und dann gibt es bei windown noch irgendein wasauchimmer zum runterladen; es wär toll, wenn das nochmal besprochen werden könnte, wie ich an einen guten compiler rankomme und was ein guter editor ist und wie ich an einen linker rankomme oder ist der schon im compiler dabei?

    beim Compiler ist der Linker (fast) immer dabei. Wenn du eine IDE nimmst, hast du ein Komplettpaket aus Editor, Compiler und Linker.
    Ich empfehle Code::Blocks ( http://www.codeblocks.org/ ) oder
    das Visual Studio 2005 Express Edition ( http://www.microsoft.com/germany/msdn/vstudio/express/visualc/default.mspx )

    Von Dev-Cpp rate ich ab, ist z.T. recht verbuggt und stürzt bei zu vielen Fehlern im Source code auch mal ab 😃

    also wie gesagt, bei der software fehlts mir noch...

    Das dürfte sich jetzt erledigt haben 😉

    ein onlinetutorial, das wirklich gut ist so für komplette neulinge; gibt es das?

    http://tutorial.schornboeck.net/inhalt.htm
    http://www.volkard.de/vcppkold/inhalt.html

    MfG

    GPC



  • hi danke nochmal...ich bin grad bei volkard und lese gerade über MinGW etwas...ist das zu empfehlen?? Es sieht aus wie ein Compiler und ein Editor, wobei dann wohl der Linker wohl dabei ist...wisst ihr was darüber?

    Der Neuling



  • programmneuling schrieb:

    hi danke nochmal...ich bin grad bei volkard und lese gerade über MinGW etwas...ist das zu empfehlen?? Es sieht aus wie ein Compiler und ein Editor, wobei dann wohl der Linker wohl dabei ist...wisst ihr was darüber?

    MinGW ist der Compiler+Linker, worüber du liest ist "MinGW Studio", eine IDE (C+L[+Tools] in den Editor integriert).
    Als IDE würde ich aber eher C::B oder so empfehlen, halt dich einfach an GPCs Post.
    Wobei redundanterweise nochmal hervorzuheben ist dass von Dev-C++ vehement abzuraten ist!



  • hi sorry aber irgendwie stell ich mich grad n bisschen dumm an... ich hab win98 momentan als betriebssystem... kann mir jemand den link direkt geben für c::b( falls es wirklich besser ist als Min GW Studio...) und auch für win xp weil ich das ab montag hab...?

    danke




Anmelden zum Antworten