ubuntuusers.de

Buchempfehlung für C++

Status: Ungelöst | Ubuntu-Version: Ubuntu
Antworten |

boerr

Avatar von boerr

Anmeldungsdatum:
13. Oktober 2005

Beiträge: 75

Wohnort: Essen

Hallo,

ich möchte mir gerne Kenntnisse in C++ aneignen. Den ganzen Visuel-Kram möchte ich erstmal außen vorlassen. Es geht mir darum die Syntax, sowie die Eigenarten dieser Sprache kennen zu lernen. Eine Erklärung zu Makefiles wäre ebenfalls nett, da ich mit der Libery SystemC arbeiten werde.

Meine momentanen Kenntnisse belaufen sich auf Java und Delphi. C kann ich nicht. Zu Datenstrukturen und OOP muss das Buch auch nicht unbedingt was enhalten, da ich diese Themen schon von Java kenne.

Kann mir jemand einen guten Buchtipp geben? Der Preis spielt keine soo große Rolle, auch wenn ein günstiges Buch natürlich schön wäre.

Sorcerer

Avatar von Sorcerer

Anmeldungsdatum:
24. Januar 2005

Beiträge: 329

Wohnort: Helmstedt

Das C++ Buch schlechthin: The C++ Programming Language von Bjarne Stroustrup (C++ "Erfinder")
Je nach Englischkenntnis würde ich zum original raten, statt zur Übersetzung

Sid_Burn

Anmeldungsdatum:
23. Oktober 2004

Beiträge: 2159

Also ich würde dir erstmal raten vorher C zu Lernen.
Das ganze hat den Vorteil das du besser Lernst mit Strukturen, Zeigern und der Speicherverwaltung umzugehen.

Wenn du das einmal kannst, dann kannst du dir ja anschauen was bei C++ dazu gekommen ist. Teilweise sind dies kleine Verbesserungen, und natürlich der ganze OOP Kram.

Für reines C gibt es auch ein OpenBook http://www.pronix.de/pronix-4.html. Wenn du lieber etwas gedrucktes vor dir hast, so wie ich, dann kannst du dir das Buch auch im Laden kaufen. Auf pronix.de gibt es auch noch ein sehr kompetentes Forum.

user_unknown

Avatar von user_unknown

Anmeldungsdatum:
10. August 2005

Beiträge: 17604

Wohnort: Berlin

Ich schließe mich Sorcerer an, aber muß leider sagen, daß die 2. Auflage bei Addisson Wesley ausgezeichnet übersetzt war; während mir die 3. Auflage, die man wegen neuer Erweiterungen der Sprache inhaltlich empfehlen müßte, sprachlich lange nicht mehr so gut gefallen hat.
Vielleicht gibt es aber auch inzwischen eine 4. oder 5. Auflage, die wieder jemand anderes übersetzt hat.

Gerade wenn Du mit vielen Programmelementen wie Schleifen, Methoden, Datentypen etc. bereits von Java vertraut bist, ist Stroustroup m.E. nicht zu starker Tobak, und Unions, Structs, Typedefs, Funktionszeiger und Referenzen werden bei BS auch behandelt, so daß ich Sid nicht unbedingt zustimme, erst C zu lernen.

Aber wenn C, dann auch hier den Klassiker der Sprachentwickler: Kernighan u. Ritchie.

Bei BS wirst Du übrigens - nach unten abgerundet - nichts zu make finden.

Generell ist meine Erfahrung, daß die Bücher von Addisson Wesley und O'Reilly fast immer ihr Geld wert sind, während auf den ersten Blick billigere Machwerke von Sybex oder Markt u. Technik auch selten die gleiche Qualität haben, und die Ramschtitel von bhv und Francis auch geschenkt noch zu teuer sind - es sei denn, man will mit ihnen heizen.

Lunar

Anmeldungsdatum:
17. März 2006

Beiträge: 5792

Sid Burn hat geschrieben:

Also ich würde dir erstmal raten vorher C zu Lernen.
Das ganze hat den Vorteil das du besser Lernst mit Strukturen, Zeigern und der Speicherverwaltung umzugehen.

Wenn du das einmal kannst, dann kannst du dir ja anschauen was bei C++ dazu gekommen ist. Teilweise sind dies kleine Verbesserungen, und natürlich der ganze OOP Kram.

Imo ist das keine gute Idee.
Zu einem sind die Unterschiede zwischen C++ und C doch relativ groß. C++ ist eben kein verbessertes C, sondern eine andere Sprache mit anderen Prinzipien.
Wer C als Vorbereitung für C++ lernt, eignet sich viel Wissen an, was bei C++ in der Form nicht mehr benötigt wird, da es durch andere Konzepte ersetzt wurde.
Besonders, wenn man wie der OP bereits Erfahrung mit anderen objektorientierten Sprache wie Java gesammelt hat, ist es ziemlich verwirrend, die funktionalen Konzept von C zu erlernen.
Ich würde gleich mit C++ anfangen, da die objektorientierten Grundlagen sofort auf C++ übertragbar sind. Somit fällt der direkte Einstieg wahrscheinlich leichter als der Umweg über C.

Gruß
Basti

boerr

(Themenstarter)
Avatar von boerr

Anmeldungsdatum:
13. Oktober 2005

Beiträge: 75

Wohnort: Essen

Erstmal Danke, für bis jetzt schon gekommenden Ratschläge, für einen Umweg über C, fehlt mir ohnehin die Zeit, da ich dieses Semester schon mit C++ arbeiten muss.

Ich gucke mir die Bücher mal, bin aber immernoch für weitere Vorschläge dankbar ☺

boerr

(Themenstarter)
Avatar von boerr

Anmeldungsdatum:
13. Oktober 2005

Beiträge: 75

Wohnort: Essen

Kann jemand etwas zu "C++ in 21 Tagen" von Jesse Liberty sagen? Dieses Buch macht auf mich einen sehr praktischen Eindruck, was ja bei dem Erlernen einer Programmiersprache nicht unbedingt ein Nachteil sein muss.

Bjarne Stroustrup empfehlen viele nur bedingt für Einsteiger, hier scheiden sich die Geister doch sehr deutlich, was bei einem Preis von knapp 50€ ja auch ein gewisses Risiko darstellt. Aber vieleicht ist für mich ja auch eine Kombination von beiden Büchern sinnvoll, da ich so zum einen schnell mit C++ arbeiten kann, dann aber für später (ich werde in zukunft wohl deutlich mehr mit C++ zu tun haben) eine vernünftige Grundlage schaffen kann. Stimmt mir da jemand zu?

user_unknown

Avatar von user_unknown

Anmeldungsdatum:
10. August 2005

Beiträge: 17604

Wohnort: Berlin

Zu BS: Für Leute, die überhaupt keine Programmiersprache kennen ist es wohl etwas heftig - für jemand der schon Java und Delphi kann nicht.

icepacker

Anmeldungsdatum:
11. Oktober 2005

Beiträge: 20

boerr hat geschrieben:

Kann jemand etwas zu "C++ in 21 Tagen" von Jesse Liberty sagen?

Die Bücher "Programmiersprache X in Y Tagen/Stunden" sind imo schrott.
Von C++ in 21 Tagen hab ich mal eine Online-Version gefunden und da ein bisschen drin gelesen:
Nicht empfehlenswert und auch kein wirklich standard konformes ISO C++.

Der BS ist sicher für dich geeignet 😉
Ansonten guck mal hier da sind viele Buchempfehlungen zu C++: c-plusplus.de/buecher

lg icepacker

boerr

(Themenstarter)
Avatar von boerr

Anmeldungsdatum:
13. Oktober 2005

Beiträge: 75

Wohnort: Essen

Gut, ich habe den BS nämlich gerade schon bei Amazon bestellt 😉

Apollon

Avatar von Apollon

Anmeldungsdatum:
27. Oktober 2004

Beiträge: 724

Wohnort: Darmstadt

Gut so!

MrDoubtfire

Anmeldungsdatum:
18. Oktober 2005

Beiträge: 210

Hallo,

Das Buch "C++ in 21 Tagen" finde ich auch nicht so besonders ...

Empfehlen kann ich ohne Abstriche das Buch "C++. Objektorientiertes Programmieren von Anfang an." von Helmut Erlenkötter (ISBN 3499600773). Mit 10,50 € ist es zudem noch sehr preiswert, ohne dass die Qualität darunter leidet.

C-Grundlagen sind zwar u. U. hilfreich jedoch nicht zwingend notwendig.

MrDoubtfire

Doener

Avatar von Doener

Anmeldungsdatum:
13. April 2006

Beiträge: 1647

Wohnort: Berlin

Zu C gibt es bei Galileo Press übrigens auch ein OpenBook (d.h., dass es das kostenlos im Netz gibt):

http://www.galileocomputing.de/openbook/c_von_a_bis_z/

Ich habe es nicht gelesen aber viele Profis halten nicht so viel davon. Zu Ubuntu gibt es übrigens auch ein OpenBook:

http://www.galileocomputing.de/openbook/ubuntu/

StephanH

Anmeldungsdatum:
3. April 2006

Beiträge: Zähle...

Hi,
vielleicht helfen dir ja diese links auch weiter:
http://www.c-plusplus.de/forum/viewtopic-var-t-is-41467.html
http://www.c-plusplus.de/forum/viewtopic-var-t-is-112134.html
http://www.c-plusplus.de/forum/viewtopic-var-t-is-134700.html

www.c-plusplus.de ist generell ein gutes forum, wenn man von einigen spielkindern absieht.

Capella

Avatar von Capella

Anmeldungsdatum:
21. April 2006

Beiträge: Zähle...

Wohnort: Esens

Hi,

dann hier auch nochmal ein Buchtipp, falls der Stroustrup sich im ersten Anlauf als zu unverdaulicher Brocken erweist:

Andrew Koenig, Barbara Moo: Accelerated C++, Practical Programming by Example, Addison-Wesley 2000 (evtl. gibt es inzwischen eine neue Auflage)

Das fängt wirklich bei Null an, setzt keine Programmierkenntnisse in irgendeiner Sprache vorraus, vermittelt aber wirklich C++ wie Stroustrup sich das gedacht hat und nicht ein aufgemöbeltes C. Danach versteht man die Sprache wirklich besser und kann dann auch Stroustrups Wälzer leichter verdauen.

Ich halte es übrigens auch eher für den falschen Weg, erst C zu lernen, wenn man eigentlich objektorientiert arbeiten will. Man kommt nur auf falsche Gedanken dabei und ist dann später immer versucht, vermeindliche Abkürzungen zu gehen. Es gibt durchaus Bereiche, in denen C die geeignetere und auf jeden Fall die verbreitetere Sprache ist, in der embedded Programmierung z.B., aber wenn man in erster Linie Anwendungsprogramme mit graphischer Benutzeroberfläche entwickeln will, ist man mit C++ allemal besser bedient.

Gruß,
Capella

Antworten |