Bronies.de

Normale Version: C++ Einsteigerbuch gesucht
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo Leute,

ich hab seit ca. 4 Jahren nichts mehr (und damit meine ich absolut garnichts mehr) programmiert ( was dazu führte das meine programmierfähigkeiten <0 sind, ka wie ichs geschafft hab selbst das einfachste zu vergessen Twilight: No, Really? Facehoof ) und will nun den einstieg in C++ finden Twilight happy .

Kann mir einer von euch ein gutes buch für "Blutige Anfänger" zum "von der pike auf neu lernen" empfehlen?

Wegen den fragen wieso ich den einstieg finden will:
Ich hab vor Medieninformatik zu studieren und dann sind grundkenntnisse in Programmieren mit C++ nicht gerade das nutzloseste Twilight happy
Desweiteren hatte ich schon immer interresse daran und konnte es leider aufgrund meiner bisherigen, geringen freizeit ( <<0 ) nicht lernen. FS sad

MfG,
ZdU
Die "... für Dummies"-Bücher sind generell sehr verständlich und einfach aufgebaut, vielleicht wäre das etwas.
AJ hmm

also ich hab mich schon einn bisschen informiert und würd zu einem von dene 2 tendieren:

http://www.amazon.de/gp/product/3836213850/ref=ox_sc_act_title_4?ie=UTF8&psc=1&smid=A3JWKAKR8XB7XF

http://www.amazon.de/gp/product/3827247519/ref=ox_sc_act_title_1?ie=UTF8&psc=1&smid=A3JWKAKR8XB7XF

leider hab ich keine ahnung, welches der beiden mehr taugt Whining

diese dummie reihe hab ich schon mal benutzt und ich fand se nich soooo doll.
Ich habe zwar nicht exakt diese Bücher, aber ein Buch von Markt+Technik über HTML und Galileo Computing über Spieleprogrammierung. Das von Markt+Technik ist an sich etwas einfacher und kürzer gefasst, da sich dieser Verlag hauptsächlich an Einsteiger richtet.
Also is des wahrscheinlich empfehlenswehrt AJ hmm

schliesslich bin ich n C++ einsteiger Twilight happy
Galileo Computing verlegt meistens Bücher, die sich an Menschen richten, die nicht nur Grundkenntnisse erlernen wollen. Da werden üblicherweise alle Details erklärt. Einsteiger sollten aber erst einmal die Grundlagen lernen, und da ist Markt+Technik besser. Die Bücher geben einen kurzen Überblick und sind wie Schulunterricht aufgebaut, wenn man so ein Buch durchgearbeitet hat kann man dann mit einem detailreicheren Buch weitermachen.
Also ich persönlich kann nicht zu den Markt+Technik Büchern raten, aber ich tue mich mit Lernbüchern allgemein relativ schwer. Als gute und einfache Bücher sind die von "Dummies" Bücher zu empfehlen.
Die Galileo Serie geht da noch etwas weiter.
Aber wenn du keine Angst vor der harten Materie hast und nicht nur mal eben bisschen Einstieg in ein paar Tagen lernen willst sondern richtig tief in die Sprache wurzeln und gute und praxisnahe Programmiertechniken lernen willst, kann ich die O'Reilly Serie empfehlen, allen voran "Praktische C++-Programmierung"
AJ hmm dann werd ich mir die beiden auch ma anschaun

angst vor harter materie hab ich nich, nur sind meine kennttnisse wirklich seeeeeeeehr gering Whining


p.s. aber prinzipiell würd des Galileo taugn wenn ma einsteign und auch a weng mehr materie als nur basics abbekommn will oder ?
Keine Bange, auch O'Reilly geht Einsteigermäßig los Twilight happy
C++ ist eine schreckliche Programmiersprache. Zuviele Sonderzeichen zur Klassendeklaration (hieß dass so?)... Jede andere Programmiersprache wo ich mich bis jetzt ansatzweise damit beschäftigt habe war Benützerfreundlicher als C/C++ Derpy confused

Ich würde außerdem Buch nummer zwei nehmen. Das sieht besser aus, Ergo: Sollte dir C++ nach kurzer Zeit schon zu sehr am Sack gehen um weiter zu lesen schmückt es dein Bücherregal auf bessere Art und Weiße. RD laugh
Was ich wirklich empfehlen kann, ist C++ für Spieleprogrammierer. Jetzt wird der erste Aufschreien "Halt Stop, Einstieg in die Programmierung durch Spieleprogrammierung? Ganz blöde Idee!" Ja, da kann ich zustimmen, aber das Buch bringt einem kaum etwas über die Spieleprogrammierung selber bei, sondern konzentriert sich hauptsächlich auf die Grundlagen von C++ und erklärt diese meiner Meinung nach mehr als perfekt. Viele Beispiele werden zwar anhand von Videospielkonzepten erläutert (z.B.: Bei Objektorientierter Programmierung versucht man man sinnvolle Klassen zu erzeugen, z.B. in einem Weltraumshooter, gäbe es die Klasse Raumschiff, welche die Funktion fliegen und schießen besitzt.), aber ich finde, dass die Grundlagen dadurch nicht schlechter vermittelt werden. Am Ende wird man mit dem Buch alleine wohl auch nicht wirklich in der Lage sein, ein Spiel zu entwickeln, auch wenn im letzten Kapitel ein kleiner Weltraumshooter erstellt wird.

Ich habe mir durch das Buch jedenfalls die Grundlagen der Programmierung beigebracht und ich finde, dass der Autor auch schwierige Themen (Stichwort Zeiger), sehr gut und vor allem sehr verständlich erklärt, daher von mir eine absolute Kaufempfehlung Twilight happy

@HMND: Wer C/C++ kann, kann dafür wohl auch jede andere Programmiersprache RD laugh
Ich bin auch nicht gerade der größte Fan von C/C++, vor allem da ich C# gewöhnt bin und auf der FH aktuell mit C gefoltert werde. RD laugh
(18.04.2013)Xris schrieb: [ -> ]@HMND: Wer C/C++ kann, kann dafür wohl auch jede andere Programmiersprache RD laugh
Ich bin auch nicht gerade der größte Fan von C/C++, vor allem da ich C# gewöhnt bin und auf der FH aktuell mit C gefoltert werde. RD laugh

Man kann auch sagen, wer 'Through the Fire and the Flames' auf der Gitarre spielen kann, kann alles auf der Gitarre spielen, aber wer kann das schon auf der Gitarre spielen außer Dragonforce selbst. FS grins
Ein gutes Buch kann ich leider auch nicht empfehlen, ich bin damals direkt eingestiegen und hab nie mehr als Referenz-Nachschlagewerke verwendet. Und das, was ich heute als Referenz verwende, ist eher das Gegenteil von Anfängertauglich. RD wink

C++ ist eine echte Herausforderung. Und erstaunlicherweise wird es über viele Schichten immer komplexer und mächtiger, die man als Anfänger kaum erahnen kann. Bei so mancher Erweiterung des Boost-Toolkit komme dann selbst ich an die Grenzen dessen, wo ich noch schlüssig erklären kann, wie das überhaupt funktionieren kann. Aber es hat auch einen Vorteil, C++ zu lernen: Hat man C++ gemeistert, kann einen fast kein Sprachkonstrukt einer anderen Sprache mehr verwirren. Dinge, die in manchen Sprachen verwirrend scheinen, versteht man viel besser, wenn man weiß, auf welchen allgemeineren Ansätzen sie basieren, und versuchen, deren Komplexität hinter einfacheren Strukturen zu verbergen.
Warum hat noch niemand den Klassiker empfohlen? Ich bin echt enttäuscht von euch.

@404compliant, nun, im Vergleich zu Haskell ist c++ doch nicht so schwer. Hier muss man schon wirklich die Mathe/Kategorientheorie verstehen.
Oh, der Beitrag hat es gestern noch geschafft? Hatte auf Senden geklickt, aber Minutenlang nur eine Ladeanzeige bekommen, bis der Server dann nur noch SQL-Fehler warf.

Anyway, C++ hat einige Untiefen, gerade im Bereich Template-Programmierung, an denen selbst ich kaum noch nachvollziehen kann, wie so etwas gehen kann. Und mein Standardnachschlagewerk ist immerhin der ISO/IEC 14882. Vor kurzem bin ich z.B. über die Boost Parameter Library gestolpert, die es erlaubt, Funktionen mit benamten Parametern zu schreiben, und die (optionalen) Parameter in variabler Reihenfolge zu schreiben:

Für eine angenommene Funktion
    window* new_window(
        char const* name,
        int border_width = default_border_width,
        bool movable = true,
        bool initially_visible = true);

kann man dann statt
    window* w = new_window("alert", 1, true, false);
den Funktionsaufruf auch so schreiben:
    window* w = new_window(initially_visible_=false, "alert box");
    window* w = new_window("alert box", initially_visible_=false);
    window* w = new_window("alert box", initially_visible_=false, movable_=true);

Wohlgemerkt, das ist keine neue Sprache, das ist eine standardkonforme Zusatzbibliothek, die INNERHALB der Sprache das ermöglicht, was C++ eigentlich nicht kann. Ich habe keine Ahnung, wie der obige Programmcode noch sinnvoll übersetzbares C++ sein kann. Und wie ich die Boost-Leute kenne, wird das von einem optimierenden Compiler vermutlich mit Null Overhead gegenüber einem normalen Funktionsaufruf übersetzt. Das ist C++ auf Magier-Level.
ich habe c++ mit diesem Buch gelernt: Object-Orientated Programming in C++ von Robert Lafore

ist zwar auf englisch aber c++ wird sehr gut erklärt.

Warum soll c++ so kompliziert sein? ich finde die sprache voll einfach und ich denke man sollte die auch zum einsteigen benutzen
C++ hat Tiefe. Wenn du Spaß haben willst, schau mal in den ISO 14882 rein, wenn du da auf Anhieb auch nur irgend etwas verstehst, meinen höchsten Respekt!

Kleiner Test?
Code:
int a[10] = {1};
cout << a[5];

Ist das gültiger Code, mit definiertem Verhalten? Was genau wird ausgegeben, und warum? Was ändert sich, wenn man das = {1} weg lässt?