[C/C++] Richtig lernen

F3ME

Hack User
5 Mar 2015
324
73
#21
nicht alles was es bei Youtube gibt ist schlecht.

Es gibt einen noch sehr kleinen( klein nur in der Viewerzahl - hat über 1000 Videos) Youtuber genannt Morpheus Tutorials.
https://www.youtube.com/user/TheMorpheus407/videos
( Hat von Java, C, C++ bis hin zu Machine Learning und programmierung in der Unreal Engine alles dabei)

Ist natürlich immer Geschmackssache, aber ich finde den Typ neben meinem Studium sehr angenehm und nützlich. Natürlich ersetzen solche Videos nicht das lernen einer Sprache ansich. Aber zum besseren Verständnis ist es oft cool, wenn jemand einem das nochmal erklärt...

Kann zu C++ nicht viel sagen, aber kauft euch die Bücher! E-Books werden schneller überflogen oder nicht richtig ernst genommen. Wenn ihr was in der Hand habt, dann beschäftigt ihr euch intensiver damit. Also ich meine Erfahrung.
 

Electricz

seal bruder gib mal nicen custom titel
23 Dec 2014
4,334
1,484
#22
nicht alles was es bei Youtube gibt ist schlecht.

Es gibt einen noch sehr kleinen( klein nur in der Viewerzahl - hat über 1000 Videos) Youtuber genannt Morpheus Tutorials.
https://www.youtube.com/user/TheMorpheus407/videos
( Hat von Java, C, C++ bis hin zu Machine Learning und programmierung in der Unreal Engine alles dabei)

Ist natürlich immer Geschmackssache, aber ich finde den Typ neben meinem Studium sehr angenehm und nützlich. Natürlich ersetzen solche Videos nicht das lernen einer Sprache ansich. Aber zum besseren Verständnis ist es oft cool, wenn jemand einem das nochmal erklärt...

Kann zu C++ nicht viel sagen, aber kauft euch die Bücher! E-Books werden schneller überflogen oder nicht richtig ernst genommen. Wenn ihr was in der Hand habt, dann beschäftigt ihr euch intensiver damit. Also ich meine Erfahrung.
Ob Bücher oder nicht kommt immer auf die Person drauf an. Ich habe für mein Abi so wenig wie möglich aus Büchern etc gelernt, da ich es so nicht im Kopf behalten hatte. Hab viele Sachen im Internet nachgelesen, Videos geschaut usw.
Nebenbei Notizen gemacht etc und so ist es am besten in meinen Kopf rein und bis nach dem Abi auch drinnen geblieben

Der Kanal den du geposted hast schaut eigtl ganz nice aus, kann man sich eigtl echt ganz gut nomma die Videos parallel angeben zum besseren Verständnis
 
Likes: F3ME

ECB2

Honorable
15 May 2016
441
1,459
#23
Hallo,
da in den letzten Wochen/Monaten öfters mal gefragt wurde, wie diverse Coder (u.A. Ich) C/++ gelernt haben.
willste mich jetzt dissen nur weil ich kein c++ gott bin und paar mal frage?
naja trotzdem ganz guter post..
 

chris_

Donator
17 Feb 2015
130
47
#25
Find den Post auch sehr gelungen, habe mir schon einige Sachen angeschaut. weiter so :wink:

das ein oder andere hilft aktuell auch im Studium xD
 

GuRa

real Advanced Moderator
7 Jan 2011
5,004
7,627
#26
Falls wer später mal in die Ebene der Treiber möchte, kann ich Windows Internals 6.th Edition (Teil 1 | Teil 2) einem empfehlen. Die 7. Edition ist auch erschienen, allerdings soll der 6. Teil besser erklärt sein als der 7 (ich selbst habe nur den 6. hier, also dunno ob die Aussage stimmt)
 
Likes: chris_

xyzet-

Donator
6 Feb 2015
501
206
#28
Ist jetzt eventuell ein wenig offtopic:
Welche Sprache würdest du einem Einsteiger empfehlen zu lernen? Python oder C? Oder gar eine ganz andere Sprache?
 

dash199t

Hack Support
6 May 2015
4,048
1,384
#29
Ist jetzt eventuell ein wenig offtopic:
Welche Sprache würdest du einem Einsteiger empfehlen zu lernen? Python oder C? Oder gar eine ganz andere Sprache?
Mit C kann man super einsteigen finde ich, Vorallem weil du Sachen wie Arduino usen kannst und damit "praktisch" arbeiten kannst und alles mögliche an Sachen entwickeln kannst.
Auch ist die Syntax nicht allzu schwer, wenn es später um Listen geht, dann kann man sich anfangs echt schön ins Bein schießen, aber naja.

Gab hier Mal ein Aufgaben Pool für C oder Cpp meine ich.
Websites wie c-howto sind auch ganz nett und haben ganz gut zusammengefasste Texte zu den jeweiligen Themen
 
Likes: xyzet-

xyzet-

Donator
6 Feb 2015
501
206
#30
meine ich.
Websites wie c-howto sind auch ganz nett und haben ganz gut zusammengefasste Texte zu den jeweiligen Themen
Auf c-howto war ich auch schon unterwegs und war am überlegen mir deren Buch zu kaufen, wusste nur noch ob es sich lohnt weil GuRa GuRa es nicht mit aufgelistet hat.
Aber hört sich für mich so an, als würde es sich lohnen und ich damit nichts falsch mache?
 
Last edited:

Tim

Well-Known Member
12 Jan 2013
913
403
#31
Ist jetzt eventuell ein wenig offtopic:
Welche Sprache würdest du einem Einsteiger empfehlen zu lernen? Python oder C? Oder gar eine ganz andere Sprache?
So im Studium lernst du Python/Java/C(++)/Haskell. Falls du da was in die Richtung vor hast, würde sich eins anbieten. Einfach mal auf der Uniseite schauen, was so drankommt.
Haskell ist glaub eher sowas unispezielles. Wenn man danach googled, gibts halt ganz schön viele Ergebnisse von Unis^^. Selber keine Erfahrung damit.
C lernen ist doch an sich nur sinnvoll, wenn man sehr viel Embedded Systems macht. Ansonsten wäre doch eher C++ geschickt, weil OOP ist ja irgendwo doch state of the art. Trotzdem hat das was von als Fahranfänger sich nen Ferrari gönnen anstatt langsam reinzuwachsen.
Java ist halt Standard, hat OOP und statische Typisierung aka du sagst was fürn Typ die Variable ist. Ich find ohne geht nicht. Hab grad ein Projekt mit Javascript am Laufen und es fickt mich die ganze Zeit erst suchen zu müssen was für ein Datentyp er jetzt auswählt aufgrund meiner vorherigen Zuweisung an Werten. Mir ist es sogar einmal passiert, dass anhand meiner Wertezuweisung (jquery val() return, sollte string, er hats als int genommen) er es nicht 100% zuordnen konnte und dann hab ich erstma paar Minuten gebraucht, um den "Fehler" zu finden.
Python ist dann halt nur noch OOP mit dynamischer Typisierung aka während der Laufzeit wird der Datentyp zuordnet, also selbstständig.

Jedenfalls eins würde ich empfehlen: Nehm eine Sprache mit Garbage Collection. Bei C/C++ musst du halt selbst den Speicher freimachen. Bei Java geht das von alleine. Dadurch hast du natürlich einen minimalen Perfomanceverlust. Aber der ist praktisch so gering, dass du ihn vernachlässigen kannst. Den kannst du wahrscheinlich für eine lange Zeit so oder so nicht ausnutzen, weil dein Code am Anfang jetzt nicht wirklich optimiert sein wird.
 
Likes: xyzet-

NF1337

Donator
9 Jul 2016
657
259
#32
Ist jetzt eventuell ein wenig offtopic:
Welche Sprache würdest du einem Einsteiger empfehlen zu lernen? Python oder C? Oder gar eine ganz andere Sprache?
Einem Einsteiger ganz klar C. - Ich hatte damals auch, ohne viele Programmierkenntnisse, bis auf ein wenig HTML und Vb, mit C gestartet und da lernst du sowohl die Logik als auch wie ich finde das Programmieren sehr zügig.
 

GuRa

real Advanced Moderator
7 Jan 2011
5,004
7,627
#33
Bei C/C++ musst du halt selbst den Speicher freimachen.
Bei C++ nicht wirklich. Dafür sind ja smart Pointer (std::shared_ptr, std::unique_ptr> gedacht, du musst dich nicht mehr um die Memory kümmern.
 

On3byT

Donator
5 Apr 2015
567
118
#34
Würde Java/C# empfehelen da es an Unis auch meistens Java gibt und die sich sehr ähneln. Dazu kommt noch dass man hier schön mit objekt orientiert programmieren kann.
 
25 Jul 2017
84
49
#36
Bei C/C++ musst du halt selbst den Speicher freimachen. Bei Java geht das von alleine. Dadurch hast du natürlich einen minimalen Perfomanceverlust. Aber der ist praktisch so gering, dass du ihn vernachlässigen kannst. Den kannst du wahrscheinlich für eine lange Zeit so oder so nicht ausnutzen, weil dein Code am Anfang jetzt nicht wirklich optimiert sein wird.
Zwischen C und C++ muss man gerade durch die neueren C++ Updates (11, 14 und 17) definitiv unterscheiden. Bei C++ musst du dich, wie GuRa GuRa schon erwähnt hat, kaum noch um's Memory Management kümmern aufgrund von smart Pointern. Zumal durch bspw. std::unique_ptr meines Wissens nach keinerlei Performanceverlust entsteht. Bei Java hat man außerdem zusätzlichen Performanceverlust, da es nicht direkt in Machinecode kompiliert wird, sondern erstmal in Bytecode übersetzt wird, welcher dann wiederum interpretiert wird. Auch wenn das inzwischen nicht mehr so stark auffallen mag wie früher, da das immer mehr optimiert worden ist, muss man gerade bei Java aufpassen, dass man seinen Code halbwegs vernünftig optimiert, wenn man auf gute Performance wert legt. Um auf die Frage von xyzet- xyzet- zurück zu kommen: reines C zu lernen bringt heutzutage nicht mehr viel, auch wenn es immer noch stark vertreten ist. Allerdings sind die Anwendungszwecke von C hauptsächlich Gerätetreiber, Betriebssysteme o.ä. Für normale Anwendungen wird es kaum verwendet. Python ist ganz nett und für Einsteiger auch recht einfach zu lernen, wenn man damit anfangen will, kann man das also recht problemlos tun. Wenn du dich später mit dem Konzept der OOP nochmal mehr auseinander setzen willst, kannst du dir auch mal Smalltalk anschauen. Wird auch an einigen Universitäten gelehrt. Habe damals mit C++ angefangen zu programmieren (allerdings noch C++ 98/03) und dann später erst mir die neuen Standards von C++ 11, 14 und 17 angeeignet. Auch wenn viele sagen, dass C++ als erste Sprache nicht geeignet ist bin ich da zumindest bedingt anderer Meinung. Inzwischen ist C++ mMn um einiges leichter geworden und es hebt sich immer mehr von C ab. Wenn du also mit C++ anfangen solltest, dann halte dich direkt an die neuen Standards, die erleichtern dir das Leben ungemein. Ansonsten würde ich Delphi/Object Pascal noch in betracht ziehen als erste Sprache, da sie recht leicht zu lernen ist und dennoch recht viele Möglichkeiten bietet. Allerdings ist ein großes Manko dabei die Preispolitik von Embarcadero. Bieten zwar die beste Delphi IDE, allerdings kostet die günstigste Version mal eben knappe 2k. Und du musst nach ich glaube spätestens nachdem drei neue Versionen raus gekommen sind seit deinem Kauf die Upgrades auf neue Versionen wieder voll bezahlen. Und bei der Frequenz wie die neue Versionen rausbringen darfst du alle 12-18 Monate 2k hinblättern, wenn du die neuste Version haben willst.
Also kurz zusammengefasst: Als Einsteigersprache eignet sich Python, C++ solange man direkt die neuen Standards beachtet und evtl auch Delphi/Object Pascal. Gibt sicher noch einige mehr, die sich eignen, haben ja bereits ein paar andere was empfohlen.
 
Last edited:

xyzet-

Donator
6 Feb 2015
501
206
#37
Würde Java/C# empfehelen da es an Unis auch meistens Java gibt und die sich sehr ähneln. Dazu kommt noch dass man hier schön mit objekt orientiert programmieren kann.
Hab mir das Modulhandbuch der FH nochmal genauer angeschaut.
Es wird mit Java angefangen, anschließend kommt C/C++ (Typische Programierfehler, Unterschiede etc.) wobei der Schwerpunkt dann auf C++ gelegt wird.
Würde mit Java anschauen, da es auch als erstes gelehrt wird.
Tim Tim seVen1337 seVen1337 Danke für die ausführlichen Texte

Falls der kurze offtopic im Thread stört, kann er gecleart werden.
 

On3byT

Donator
5 Apr 2015
567
118
#38
Hab mir das Modulhandbuch der FH nochmal genauer angeschaut.
Es wird mit Java angefangen, anschließend kommt C/C++ (Typische Programierfehler, Unterschiede etc.) wobei der Schwerpunkt dann auf C++ gelegt wird.
Würde mit Java anschauen, da es auch als erstes gelehrt wird.
Tim Tim seVen1337 seVen1337 Danke für die ausführlichen Texte

Falls der kurze offtopic im Thread stört, kann er gecleart werden.
jow dann hau dir eclipse drauf und ab geht die post. Der Einstieg geht schon klar und gibt viele Tuts auf yt

Was ich dir empfhelen kann ist javavideokurs meld dich einfach bezahl die 60 taken dl alles in 10 tagen und sag du bist unzufrieden kriegt man es geld zurück hat n kumpel von mir so gemacht. Du kannst auch einfach angemeldet bleiben weil zu allen aufgaben ein eigenes Forum gibt.
Für den Einstieg ist das ne echt gute Idee
 
12 Sep 2017
17
8
#40
Last edited: