C++ Buch zum Lernen?

1 Antwort

Eine gute Empfehlung war immer der sehr feine "C++ Primer" von Lippman. Das Buch ist leider ein bisschen veraltet (letzte Auflage ist derzeit gut 10 Jahre alt), wodurch wichtige Elemente von modernem C++ nicht behandelt werden. Neu würde ich's daher nicht kaufen, aber eine gebrauchte Ausgabe kann auf jeden Fall das Geld wert sein.

Bei C++ musst du bedenken, dass du eigentlich mehrere Sprachen in einer lernst. Ausgehend von der Basis in C ist die Sprache in mehreren Generationen enorm gewachsen; jede dieser Generationen schaut aber sehr deutlich anders aus und führt zu recht unterschiedlichen Programmierstilen.


schrauberking 
Beitragsersteller
 26.07.2023, 10:06

Danke dir! Interessant Info. Was würdest du mir denn empfehlen? Sollte ich erst etwas einfacheres lernen? Habe mal mit einem IT-Mann geredet, der meinte, dass C++ etwas schwierig sei für den Anfang.

0
jo135  26.07.2023, 15:24
@schrauberking

An C++ ist an sich nichts verkehrt, aber es ist halt keine Sprache die man schnell halbwegs umfassend lernen kann. Es kommt vor allem darauf an, was du damit machen willst. Wenn du C++ brauchst, dann lerne ruhig direkt C++ und nicht erst was anderes.

0
schrauberking 
Beitragsersteller
 26.07.2023, 16:15
@jo135

Ich würde einfach gern Programmieren lernen, so komisch das klingt. Damit ich quasi verstehe, was die Skripte in R eigentlich machen. Ansonsten kann ich Befehle verstehen, wie Matrizenmultiplikation, Schritte für Simplexalgorithmus etc. aber eben nie den "Background".

0
jo135  26.07.2023, 18:02
@schrauberking

Wie gesagt, die Sprache C++ ist riesengroß. Es gibt kaum Entwickler, die C++ wirklich vollständig in allen Details verstehen. Für ein generalisiertes "Programmierenlernen" ist C++ daher wirklich nicht die naheliegendste Wahl.

Dafür würde ich sogar eher Python empfehlen: das ist eine vollwertige, für viele Zwecke nutzbare Sprache. Sie unterscheidet sich halt sehr deutlich von C, C++ und davon syntaktisch inspirierten Sprachen wie Java.

R selbst ist auch eine vollwertige Programmiersprache, die aber doch in ihrer Anwendung sehr eingeschränkt ist und generell ein bisschen..."anders" ist. Wenn du selbst R-Libraries verstehen willst, solltest du R lernen. C (und C++) werden aber auch gern verwendet, um R-Libraries zu schreiben...also sind wir dann wieder am Ausgangspunkt.

Wie gesagt, es kommt auf deine Zielsetzung an.

0
schrauberking 
Beitragsersteller
 26.07.2023, 20:26
@jo135

Also mein Ziel ist es, eigene Skripte schreiben zu können. Eigene Programme quasi. Aber dabei möchte ich auch alle Befehle verstehen. Ist das bei C++ nicht möglich oder wie meinst du das? Und noch eine Frage: Welche Programmiersprache ist denn die schwierigste? Habe mal gehört Assembler, aber stimmt das?

0
regex9  29.07.2023, 17:00
@schrauberking
Aber dabei möchte ich auch alle Befehle verstehen. Ist das bei C++ nicht möglich (...)?

Doch, natürlich ist das möglich.

Eine Schwierigkeit bei C++ liegt darin, dass es einige Sprachfeatures/Verhaltensweisen gibt, die nicht in jedem Kontext so einfach zu durchschauen sind. Aufgrund der Möglichkeit, Operatoren zu überladen, könnte hinter einer Zuweisung

a = b;

beispielsweise viel mehr stecken, als man normalerweise annimmt.

Sich mit allen Befehlen sehr genau auseinanderzusetzen zu wollen, wäre meines Erachtens übrigens unnötiger Aufwand, so lange man sie nicht benötigt / es sich nicht um oft genutzte Befehle handelt. Hierbei meine ich die Implementationen (Klassen, Funktionen) aus der Standardbibliothek. Für den Anfang genügt da ein grober Überblick: Es gibt Funktionen zur Verarbeitung von Strings, Date, etc. und bei Bedarf schlägt man konkret einmal in einer Dokumentation/Referenz nach.

Welche Programmiersprache ist denn die schwierigste?

Ein Kandidat wäre Malbolge, doch es gibt noch andere esoterische Programmiersprachen, die nicht unbedingt einfach les-/schreibbar sind (z.B. Whitespace).

0