Motivation?
-
Ich hab mir das Tutorial nur kurz angesehen, aber mich hat gewundert, dass es gleich mit Klassen usw. los ging.
Meiner Meinung nach könnte man das bei Java machen, aber in C++ würde ich doch anders anfangen OoZur Motivation:
Naja, Motivation kam bei mir immer wieder mal auf, nachdem mir PHP (aus heutiger Sicht *würgs*) nicht für "richtige Programme" geeignet war.
Bitte fangt jetzt hier keinen Flamewar oder so an, aber so war es für mich nunmal.In C++ gabs dann erst einen kleinen Taschenrechner, danach die ein oder andere Applikation mit der Standard-Lib (Streams, Container etc.), bis ih schließlich nach Gtkmm zur Netzwerkprogrammierung fand.
-
Nun für mich wären zb Bots interessante Programme, aber vorallem wollte ich eben mein wissen erweitern nach dem Motto: Wie funtioniert das?(bzw Wie kann ich das und dsa machen?)
Auch wollte ich gerne eine art "matrix-effekt"- mit c++ schreiben wenn ich dann weiß wies geht, versteht sich .....
Und so fehlt mir eben ein bisschen der Einstieg,....-DONTUsee
-
The-Kenny schrieb:
Ich hab mir das Tutorial nur kurz angesehen, aber mich hat gewundert, dass es gleich mit Klassen usw. los ging.
Meiner Meinung nach könnte man das bei Java machen, aber in C++ würde ich doch anders anfangen OoAlso ich fänd sowas gut. Zuerst die Benutzung von Klassen und dann selber welche schreiben.
Ich finde es sowieso seltsam, dass viele Büches/Tutorials zuerst mühsam Pointer erklären und dann C-Strings und 30 Kapitel später auf std::string zu sprechen kommen, der (fast) alle Probleme löst.
Wenn ich ein Tutorial schriebe, würde ich zuerst std::string für Strings und std::vector für Arrays einführen, denn dafür muss man nichtmal Zeiger verstehen. Dann, 30 Kapitel später, wenn man schon Klassen selber schreiben kann und weiß was Referenzen sind, könnte man mal genauer auf Zeiger eingehen.
Naja, das ist meine Meinung. Das Tutorial auf highscore.de hab ich früher mal angefangen zu lesen, hat aber glaub ich nciht soviel Spass gemacht. Die von Volkard oder Shade gefallen mir noch am besten.
Motivation: Wenn ich mal Tiefpunkte hab hör´ich einfach auf. Wenn ich mal richtig gefrustet von den vielen Fallstricken von C++ bin progge ich mal wieder Pascal/Delphi. Da kann man keine Fehler machen (außer man provoziert es oder ist einfach nur ein noob). Dafür gefällt mir die Syntax nicht so, außerdem erscheint mir die Sprache immer so eingeengt.
Gruß
Don06
-
1.Woher nehmt ihr eure Motivation?
Mein Tipp. Setzte Dir realistische Ziele.
Nimm Dir vor ein Projekt zu verwirklichen und betrachte C++ als ein Werkzeug, um es umzusetzten. Mach das Projekt fertig, egal wie gut oder schlecht Dein Code ist. Es geht nicht darum Schönheitswettbewerbe zu gewinnen, sondern darum ein Ziel zu erreichen.z.B. Schreib' ne kleine Börsensimulation oder entwickle ein kleines 3d-programm, dass unser Sonnensystem modelliert. Muss grafisch nicht perfekt sein, aber mach es zu Ende und setzte es als Freeware Download auf Deine Homepage.
3.Was für Tutorials erklären verständlich das programmieren mit c++ mit möglichst allen funktionen bzw möglichkeiten oder was es eben gibt? - und jetz bitte keinen link in die e-books von c-plusplus.net geben , sondern eventuell das buch (bzw Tutorial) das euch sehr gut gefallen hat (als ihr angefangen habt zu programmieren)
mit kurzer beschriebung reinposten
C Primer Plus von Stephen Prata
http://www.amazon.de/C-Primer-Plus-Plus-Sams/dp/0672326973/ref=sr_1_1/303-0545697-5580265?ie=UTF8&s=books-intl-de&qid=1189553425&sr=8-1Das Buch ist sehr gut. Allerdings auf Englisch. Aber es gibt ganz viele Beispiele und sehr viele Erklärungen. Es richtet sich an Anfänger und wird von Kapitel zu Kapitel komplexer. Nach dem Buch hab ich C++ erst richtig verstanden.
-
DONTUSEE schrieb:
Hi erstmal,
Ich wollt mich mal bei euch eingefleischten könnern informieren wie lange es dauert um mit c++ was interessantes programieren zu können?Darauf gibt es keine Antwort.
Es hängt davon ab, wie gut Du lernen kannst, wie schnell Du ein Gefühl für die Thematik bekommst, wieviel Zeit Du investierst und wieviel Unterstützung Du bekommst.
Ich hatte das Vergnügen Programmieren ohne Unterstützung zu lernen. Kein Fachbuch (zu teuer), kein Internet (gab's nicht), keine anderen Programmierer greifbar. Also durfte ich jede Falle selbst erkunden und selbst verstehen, warum es so nicht geht. Programmierung durch raten, ausprobieren und fehlschlagen.
Das dauerte Jahre, dafür habe ich inzwischen (21 Jahre später) ein gutes Gefühl dafür, was geht und was nicht geht.Unterrichte ich Programmieren, sind die Leute in der Regel nach einem Jahr von total unwissend auf halbwegs fit - und selbstständig. Selbst, wenn sie nicht übertrieben viel üben. Ich weiß, wo die Fallen sind und ich sorge dafür, dass meine Schüler auch in möglichst viele Fallen mal reinfallen und verstehen, warum sie da jetzt rauskrabbeln müssen.
Ein Taschenrechner mag kein Programm sein, worauf die Welt gewartet hat, aber wenn Du eine GUI zusammenstellen kannst und Dein Taschenrechner Operatorprioritäten beherscht (Punktrechnung vor Strichrechnung usw), dann wirst Du auch wissen, dass derartiges zu programmieren, nicht uninteressant ist. Und Du wirst eine Menge Fähigkeiten gesammelt haben, um "interessantere" Software zu schreiben, die aber vom programmiertechnischen vielleicht gar nicht so aufwendig ist, wie ein einfacher Taschenrechner.
DONTUSEE schrieb:
Ich wollte anfangen c++ zu lernen weil mich programmieren allgemein interessiert, jedoch bin ich grad sehr demotiviert und weiß nicht ob es sich überhaupt lohnt damit anzufangen.
Entscheide Dich: Willst Du anfangen oder bist Du demotiviert?
Wenn Du nicht willst, lass es. Wenn Du Spaß am Knobeln hast, viel Spaß.
C/C++ ist das beste Strategiespiel, wo gibt. Du bist im Krieg mit der Konkurrenz und Du spielst auf Zeit. Es gibt Level, wo es nur zählt eine Lösung zu finden und es gibt Level, wo eine Lösung nicht zählt, wenn es nicht die perfekte Lösung ist. Manche Lösungen sind bunt, andere geben nur ein Ergebnis auf der Konsole aus. Ich schreibe einen Compiler; mir huscht ein Lächeln über's Gesicht, wenn das Programm nichts auf der Konsole ausgibt.DONTUSEE schrieb:
Deswegen ein paar Fragen an euch :
1.Woher nehmt ihr eure Motivation?
Früher daraus, anderen zu zeigen, wie toll man programmieren kann, heute, um mir zu zeigen, wie toll ich programmieren kann. Ich bin wesentlich schwieriger zufrieden zustellen.
DONTUSEE schrieb:
2.Was sagt ihr zum Tutorial auf highscore.de (für c++)?
Nettes Webdesign.
Du wirst Dir Deine Informationen nicht aus einem (1) Buch holen können. Kauf Dir mehrere Bücher und beschränke Dich nicht darauf, sie zu lesen. Lies die Sourcecodes und spiel damit. Lies das Buch an den Stellen, die Dir nicht verständlich sind. Kauf Dir ein dünnes Buch und probiere aus. Programmieren lernt man nicht durch lesen, sondern durch ausprobieren. Such Dir verschiedene Tutorials, vielleicht Mitstreiter. Im Projekte-Forum war derartiges und es gibt auch Anfängerforen, wo sich Leute zusammentun, um gemeinsam programmieren zu lernen.
Tutorials und Links zu günstigen Buchversendern findest Du auf u.a. meiner Homepage.
DONTUSEE schrieb:
3.Was für Tutorials erklären verständlich das programmieren mit c++ mit möglichst allen funktionen bzw möglichkeiten oder was es eben gibt? - und jetz bitte keinen link in die e-books von c-plusplus.net geben , sondern eventuell das buch (bzw Tutorial) das euch sehr gut gefallen hat (als ihr angefangen habt zu programmieren)
Ich habe C gelernt aus "Jetzt lerne ich C" und dann C++ aus einem rororo Buch "Strukturierte Einführung in C++" oder so. "Jetzt lerne ich C" ist eigentlich kein gutes Buch, es steht viel Bla drin - daher habe ich nur das erste Kapitel gelesen und danach Sourcecodes abgetippt und eben ausprobiert, was das so bedeutet, was man damit so machen kann.
Für C++ nahm ich ein rororo-Buch, weil klein, handlich, billig, kein Platz für Blah-Texte. Dann verkroch ich mich wieder hinter meinen Computer und probierte wieder aus.Geh zu Buchversendern, die Mängelexemplare verkaufen. Statt ein Buch, kauf Dir drei. Ein Blubber-Buch ("Jetzt lerne ich..."), ein Normales und ein möglichst Professionelles. Wenn Du was nicht verstehst, schau Dir die Erklärungen aus den beiden anderen Büchern an und aus beliebigen Tutorials und viel wichtiger: Probiere es einfach aus.
Dass if( a ) gleichbedeutend mit if( a != 0 ) ist, habe ich aus den Büchern nicht kapiert.
Testprogramm geschrieben:#include "stdio.h" int main(void) { int a = 0; if( a ) printf( "true\n" ); else printf( "false\n" ); }Ergebnis auf den großen Schreibtischblock geschrieben: "if( a ) entspricht if( a != 0 )". Das geht schneller als nachschlagen.
-
Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum Rund um die Programmierung verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
Ich danke euch sehr für eure Antworten (Xin
).
Und versuche eure Ratschläge zu beherzigen und mach mich dann soweit die Zeit es zulässt ans proggn und lernen , DANKE sehr nochmals-DONTUsee
-
Xin schrieb:
Unterrichte ich Programmieren, sind die Leute in der Regel nach einem Jahr von total unwissend auf halbwegs fit - und selbstständig. Selbst, wenn sie nicht übertrieben viel üben. Ich weiß, wo die Fallen sind und ich sorge dafür, dass meine Schüler auch in möglichst viele Fallen mal reinfallen und verstehen, warum sie da jetzt rauskrabbeln müssen.
So aus Neugier: wo liegen denn de typischen Fallen & wie sorgst du dafuer, dass die Leute da auch reinfallen?
-
die Motivation? ganz einfach:
für mich hat der PC irgendwas magisches. Wenn ich was darüber lernen darf vergess ich den Rest der Welt, es ist wie en Kribbeln im Bauch und ich bekomm nie genug..... die Grenzen sind beim lernen nur menschlicher Natur:
kurz bevor ich verhunger, setzt der Selbsterhaltungstrieb ein und ich such mir was zu essen. Gleiches gilt für Wasseraufnahme. Schlafen tu ich quasi mit dem Buch in dem ich lese und ich kann ees kaum erwarten bis die Schule aus ist um weiterzumachen ^^
-
Blue-Tiger schrieb:
Xin schrieb:
Unterrichte ich Programmieren, sind die Leute in der Regel nach einem Jahr von total unwissend auf halbwegs fit - und selbstständig. Selbst, wenn sie nicht übertrieben viel üben. Ich weiß, wo die Fallen sind und ich sorge dafür, dass meine Schüler auch in möglichst viele Fallen mal reinfallen und verstehen, warum sie da jetzt rauskrabbeln müssen.
So aus Neugier: wo liegen denn de typischen Fallen & wie sorgst du dafuer, dass die Leute da auch reinfallen?
Sehr früh lasse ich die Leute die Länge eines Strings (char const
ermitteln und ihn kopieren. Die Null am Ende des Strings wird grundsätzlich natürlich vergessen => Segmantation fault.Anschließend sollen die Wörter getrennt werden, also ein Array von Strings entstehen.
Dafür lasse ich erstmal die Wörter zählen.
Etwa 60-70% der Leute zählen dafür die Leerzeichen im String, addieren 1 drauf und haben so die Anzahl der Worte. Das wird mir präsentiert und ich füge weitere Leerzeichen zwischen die Worte ein...
Dann kapieren die Leute, dass sich wiederholende Leerzeichen keine Worte bedeuten und korrigieren das.
Das ist kein typischer Fehler, bringt die Leute aber dazu ihre Aufgaben nicht nur zu lösen, sondern auch auf Bedienfehler zu hinterfragen. Das klappt in der Regel aber nicht sofort. Die Leerzeichen zwischen den Worten werden jetzt aber abgefangen. Das wird mir dann stolz präsentiert.
Dann füge ich vor dem String Leerzeichen ein, worauf die Anzahl wieder nicht stimmt. Die meisten reagieren darauf leicht gefrustet und merken daran, dass es nicht das Ziel ist, nur das Problem zu lösen, sondern es auch drauf ankommt, wie man es löst.
Die meisten sind dann klever genug zu merken, dass es einfacher ist wirklich Worte zu zählen sollen, statt Leerzeichen mit etlichen Sonderbedingungen. Den Anderen füge ich die Leerzeichen ggfs. hinten nochmal ein und vergleiche das Programm mit vielen Sonderbedingungen mit einem Programm, dass wirklich Worte zählt.
Diese Sachen lasse ich die Leute selbst lösen, das kostet sehr viel Zeit, aber die Leute lernen sehr viel. Ich stelle bestenfalls fragen, die hilfreich sind, damit derjenige in die richtige Richtung denkt.Anschließend müssen sie das Array mit den Strings aufbauen. In der Regel kopieren sie die Strings. Ich mache darauf aufmerksam, dass sie im Ursprungsstring die Leerzeichen mit '\0' tauschen können und sich einfach die Adressen merken können. Die Programme werden geändert und anschließend werden falsche Speicherbereiche freigegeben, weil das Pointer im Array ja nicht mehr zuvor alloziiert werden...
Bei den Listen sind 50% schon so klever, erst über die Konsequenzen ihrer Programmierung nachzudenken. Das ist das Hauptziel: denkende Schüler zu erhalten. Diese vermeiden so bereits übliche Fehler wie ein unmarkierter Beginn und/oder Ende der Liste.
In Gruppen stört das nicht, die andere Hälfte verpeilt es ja weiterhin, also spricht man trotzdem drüber. Bei einzelnen lobt man halt, dass sie aufmerksam waren und macht sie so darauf aufmerksam, dass hier ein Punkt wäre, wo es Ärger geben könnte.
Wenn die Grundlagen bekannt sind, lass ich die Leute laufen. In den Tutorien brauchten die Leute Netzwerkprogrammierung also progammiert man einen HTTP-Webserver und -Client. Mit anderen male was auf der Konsole herum und/oder starte ich GUI-Programmierung über GTK oder ähnliches.
Anschließend Klassen und OOP und man guckt mal, wie weit man kommt. Manche haben irgendwann keine Zeit mehr, keine Lust oder wollen selbständig entwickeln und weiterlernen. Und das ist auch okay, ich bringe die Leute binnen kurzer Zeit auf ein relativ hohes Level und es ist gut, dass sie dort erstmal Erfahrungen sammeln, bevor sie sich auf generische Programmierung einlassen.
-
DONTUSEE schrieb:
Ich danke euch sehr für eure Antworten (Xin
).
Und versuche eure Ratschläge zu beherzigen und mach mich dann soweit die Zeit es zulässt ans proggn und lernen , DANKE sehr nochmals-DONTUsee
Ich habe vor 20 Jahren mal intensiv in Clipper programmiert, dann 19 Jahe ausser ein wenig HTML nicht mehr. Vor einem Jahr habe ich wieder ein wenig angefangen, weil ich jetzt wieder die Zeit habe. Zunaechst ein wenig C mit dem - wie ich heute weiss - falschen Buch und es daher schnell frustriert wieder aufgegeben. Dann eine Weile PHP, das mich vom ersten Tag an nicht begeistern konnte, dafuer aber schnell zu Ergebnissen gefuehrt hat.
Im vergangenen Jahr bin ich dann ueber die OpenBooks von http://www.galileocomputing.de gestolpert und habe mich dadurch intensiv mit C beschaeftigt. Und siehe da, irgendwann habe ich sogar angefangen zu begreifen was Pointer sind, wie diese funktionoeren und warum man die braucht. Da hat's mich dann langsam gepackt und Frust kam eigentlich nur noch selten auf.
Letztlich aber gehoert mein ganzes Interesse eigentlich nur noch C++, was aber ohne das 'Studium' der Sprache C wohl kaum moeglich gewesen waere. Auch das wollte ich vor geraumer Zeit schon fast wieder hinwerfen, aber dann bin ich ueber das geniale Forum hier gestolpert. Nun lese ich mich tagtaeglich durchs Forum, konnte auch schon einige Fragen formulieren, denn auch selbst das ist anfangs ja nicht ganz so einfach, und bin begeistert ueber die Hilfsbereitschaft hier.
Ich hatte leider nie die Chance irgendwas in der Art von Informatik zu studieren, denn ich bin 1950 geboren und zu meiner Zeit war das ja alles noch nicht erfunden. Zudem lebe ich mittlerweile auf den Philippinen, wo Du nicht mal eben in den Laden gehen und ein gutes Buch kaufen kannst.
Aber wie Du siehst, selbst das konnte mich nicht abhalten und ich erinnere mich noch sehr genau an den Moment, als mein erstes 'eigenes' C++ Programm ploetzlich funktionierte und Daten auf dem Bildschirm ausgab; das waren gegen 5 Uhr in der Fruehe. Fuer einen Laien kaum nachvollziehbar, aber das war schon ein tolles und motivierendes Gefuehl ....
Also falls Du, so wie Xin es vorgeschlagen hat, einen 'Mitstreiter' suchst, melde Dich gerne bei mir. Vieleicht koennen wir das eine oder andere Problem gemeinsam angehen ...
Gruss
Guenther
Davao City, Philippines, Planet Earth