Willkommen |
|
myGully |
|
Links |
|
Forum |
|
|
|
 |
02.07.11, 08:51
|
#1
|
Banned
Registriert seit: Jun 2011
Beiträge: 91
Bedankt: 13
|
Wie seid ihr mit C++ angefangen
Hey Leute,
wie seid ihr angefangen mit C++ zu programmieren,
in anderen Worten was würdet ihr einem Anfänger empfehlen,
der noch nie (außer HTML und CSS) programmiert hat?
Wie sollte ich anfangen?
|
|
|
02.07.11, 09:06
|
#2
|
Banned
Registriert seit: Jun 2011
Beiträge: 62
Bedankt: 40
|
Die erste Sprache, die man lernen sollte ist "Deutsch".
Dann sollte man wissen, dass HTML und CSS keine Programmiersprache ist.
Dann sollte man ein Forum durchsuchen können und Google bedienen.
Dann sollte man sinnvolle Titel für einen Thread wählen können.
Dann sollte einem klar sein, dass Wissen aneigenen mit Lesen und nicht mit "Thread-im-Forum-erstellen" zu tun hat.
Versteht man die genannten Punkte nicht oder kann diese nicht umsetzen, dann wird man nie programmieren können!
|
|
|
02.07.11, 09:08
|
#3
|
Banned
Registriert seit: Mar 2011
Beiträge: 43
Bedankt: 253
|
jap sehe das wie mein vorredner.
naja villecht solltestes mal mit nem buch probieren:
[ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ]
|
|
|
02.07.11, 09:54
|
#4
|
Newbie
Registriert seit: Apr 2009
Beiträge: 78
Bedankt: 21
|
SEID?!?! HABT!
wenigstens nicht seiT
|
|
|
02.07.11, 13:30
|
#5
|
Anfänger
Registriert seit: Jun 2011
Beiträge: 13
Bedankt: 0
|
Lerne besser erstmal C bevor du C++ lernst, der ganze Objekt Orientierte Scheiß interessiert dich am Anfang nämlich einen feuchten Dreck
Hierzu einfach mal Googeln es gibt 10 * 10 ^ 6789734582734345701234 Tutorials im Netz.
Und als Compiler nimm den GCC oder unter Windows MinGW-GCC - mit dem lernt man den ganzen Ablauf meiner Meinung bei weitem besser, als wenn du irgend eine Entwicklungsumgebung mit integriertem Compiler hast, wo du absolut keinen Peil hast was überhaupt abgeht.
|
|
|
02.07.11, 17:25
|
#6
|
Hinter dir!
Registriert seit: Apr 2010
Beiträge: 1.125
Bedankt: 487
|
Ich bin einer etwas anderen Meinung als mein Vorredner. Ich finde, du solltest mit C++ anfangen, damit machst du nichts verkehrt.
Wie du anfängst bleibt dir überlassen.
Am besten du liest dich erstmal in einem Buch ein und versuchst nebenbei das erlernte umzusetzen.
Werf auch gleich mal einen Blick in Dev, MS Visual Studio oder Embarcadero Rad Studio. Indem man etwas rumspielt/rumexperimentiert kann man auch eine Menge lernen.
|
|
|
02.07.11, 19:50
|
#7
|
Erfahrenes Mitglied
Registriert seit: Oct 2009
Beiträge: 640
Bedankt: 228
|
Wenn du meinst du willst C++ lernen, gehe ich mal davon aus dass du dich bereits genau damit beschäftigt hast, was du vor hast. Denn genau das ist bei der Wahl der Sprache wichtig.
Darum Verstehe ich nicht warum hier ein paar Leute versuchen dir etwas anderes ein zu reden. Nur weil man selbst eine Sprache toll findet, muss man das nicht jedem aufquatschen. Immerhin will er hier nicht wissen welche Sprache er wählen soll, sondern wie er C++ am besten lernen kann.
In erster Linie ist es wichtig sich die Bibliotheken und Dokumentation der Sprache an zu sehen. Weil es aber ein sehr steiniger Weg sein kann, hat es sicher Vorteile sich ein Buch an zu schaffen (neben dem oben genannten kann ich auch das Buch empfehlen: [ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ])
|
|
|
04.07.11, 19:19
|
#8
|
Anfänger
Registriert seit: Jun 2011
Beiträge: 13
Bedankt: 0
|
Zitat:
Zitat von slahn
Wenn du meinst du willst C++ lernen, gehe ich mal davon aus dass du dich bereits genau damit beschäftigt hast, was du vor hast. Denn genau das ist bei der Wahl der Sprache wichtig.
Darum Verstehe ich nicht warum hier ein paar Leute versuchen dir etwas anderes ein zu reden. Nur weil man selbst eine Sprache toll findet, muss man das nicht jedem aufquatschen. Immerhin will er hier nicht wissen welche Sprache er wählen soll, sondern wie er C++ am besten lernen kann.
In erster Linie ist es wichtig sich die Bibliotheken und Dokumentation der Sprache an zu sehen. Weil es aber ein sehr steiniger Weg sein kann, hat es sicher Vorteile sich ein Buch an zu schaffen (neben dem oben genannten kann ich auch das Buch empfehlen: [ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ])
|
Da hast du vollkommen recht, aber ich kann euch allen versichern, dass wenn man eine Programmiersprache lernt, jede andere mehr oder weniger gut mitlernt (mit Ausnahme von Assembler Sprachen, das ist dann nochmal was anderes).
Als ich angefangen habe C++ zu programmieren (und das war wirklich so ziemlich der Anfang) habe ich ÜBERHAUPTNICHT objekt orientiert programmiert, ich wusste zu diesem Zeitpunkt noch garnicht was das ist.
Darum habe ich empfohlen erst C zu lernen, weil man da viel mehr Programmiererfahrung schöpft wie in C++ (meiner Meinung nach).
Und du hast ihm ja nicht ohne Grund das eBook 'C von A bis Z' empfholen, nehme ich an.
mfg MaSydJun
|
|
|
04.07.11, 20:58
|
#9
|
Banned
Registriert seit: Jun 2011
Beiträge: 62
Bedankt: 40
|
Zitat:
Zitat von MaSydJun
... aber ich kann euch allen versichern, dass wenn man eine Programmiersprache lernt, jede andere mehr oder weniger gut mitlernt...
|
Dann hast Du aber viele Programmiersprachen nicht kennengelernt!
Denn das ist schon ziemlicher Unsinn.
Haskell, Prolog?
Sprachen mit besonderen Architekturen? Rails, C# mit WPF, Tier-Geschichten?
MPI?
Klar, wer C und OOP verstanden hat, der kommt auch schnell mit Java, C++ und ÄHNLICHEN Sprachen zurecht. Aber OOP und prozedurale Sprachen sind nur ein kleiner Teil der gesamten Programmiersprachen!
|
|
|
07.07.11, 20:56
|
#10
|
Anfänger
Registriert seit: Jun 2011
Beiträge: 13
Bedankt: 0
|
Zitat:
Dann hast Du aber viele Programmiersprachen nicht kennengelernt!
Denn das ist schon ziemlicher Unsinn.
|
Ich meinte damit nicht, dass etwa die Syntax ähnlich sei, sondern (einfache) Kontrollstrukturen wie if, (then), else, while, for etc.., die wohl in den meisten (oder fast allen) Sprachen Verwendung finden. Klar Kontrollstrukturen sind keine Magie, aber das ist doch genau das, womit man sich am Anfang beschäftigt. Ganz elementare Dinge wie Variablen und Konstanten.
Zitat:
Haskell, Prolog?
Sprachen mit besonderen Architekturen? Rails, C# mit WPF, Tier-Geschichten?
MPI?
|
Okok "alle" Programmiersprachen ist wohl sehr übertrieben…
Alle "bekannteren" Sprachen würde wohl eher passen.
Aber an dieser Stelle möchte ich nochmal auf mein "mehr oder weniger gut" hinweisen.
Aber was ist an C# denn so besonders? Die VM?
Zitat:
Klar, wer C und OOP verstanden hat, der kommt auch schnell mit Java, C++ und ÄHNLICHEN Sprachen zurecht. Aber OOP und prozedurale Sprachen sind nur ein kleiner Teil der gesamten Programmiersprachen!
|
Zitat:
und mit Ausnahme der ganzen nicht-objektorientierten Sprachen, und auch der objektorientierten und objektbasierten Sprachen, welche etwas anders "ticken" als C++ und Co.
|
Aber das Grundprinzip ist _fast_ bei jeder Programmiersprache ungefähr gleich - oder worin unterscheidet sich beispielsweise ein grundlegender Programmablauf eines Haskell-Programms im Vergleich zu einem C-Programm so stark?
Zitat:
Mit C lernt man einfache Probleme imperativ zu lösen und in einer bestimmten Sprache, nämlich C, umzusetzen. Du lernst da als Anfänger sowas wie Datentypen, Zuweisungen, Kontrollstrukturen, Wiederholungen, Verzweigungen und wie man Probleme auf Prozeduren aufteilt. Nichts, was du nicht auch mit jeder anderen Sprache lernen könntest, welche imperative/prozedurale Programmierung unterstützt. Diese Erfahrungen sind außerdem ein Witz gegenüber dem, was man als heutiger Entwickler in großen Softwareprojekten draufhaben muss. Das ist weit mehr als nur Code in den Computer einzutippen. Zumal sich die anderen Paradigmen ziemlich stark von der imperativen Denkweise unterscheiden.
|
Und sind das nicht genau die Grundlegenden Dinge, die man brauch, um beispielsweise in einer objektorientierten Sprache ein Problem zu lösen?
Einen Algorithmus für ein Problem zu finden bzw. erfinden hängt doch vom Problem an sich ab und nicht von der Sprache, in dem man ihn implementieren will.
|
|
|
07.07.11, 21:34
|
#11
|
Mitglied
Registriert seit: Aug 2009
Ort: void* (*wtf[])(void **);
Beiträge: 453
Bedankt: 137
|
Zitat:
Aber das Grundprinzip ist _fast_ bei jeder Programmiersprache ungefähr gleich - oder worin unterscheidet sich beispielsweise ein grundlegender Programmablauf eines Haskell-Programms im Vergleich zu einem C-Programm so stark?
|
auf der quelltextebene wirklich grundlegend!
funktionale sprachen bieten ein wesentlich höheres abstraktionsniveau als imperative sprachen.
siehe auch [ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ]
Zitat:
Einen Algorithmus für ein Problem zu finden bzw. erfinden hängt doch vom Problem an sich ab und nicht von der Sprache, in dem man ihn implementieren will.
|
genau. und desto mathematischer man einen algorithmus im quelltext beschreiben kann, desto besser.
z.b.: sortieren:
Code:
sort(L) = sort (alle elemente aus (L ohne x) <= x) + x + sort (alle elemente aus (L ohne x) > x) wobei x = erstes element aus L
es sei denn es kommt auf performance an. dann ist jede algorithmus-umsetzung die näher an der maschine arbeitet natürlich
die bessere wahl.
z.b. sortieren in asm
quicksort als haskell-einzeiler:
Code:
qsortOneLine xs = concat [qsortOneLine [y | y <- tail xs, y < x] ++ x : qsortOneLine [y | y <- tail xs, y >= x] | x <- take 1 xs]
versuch das mal in C ... (ohne qsort() zu verwenden)
__________________
entropie erfordert keine wartung
|
|
|
08.07.11, 01:06
|
#12
|
Erfahrener Newbie
Registriert seit: Mar 2009
Beiträge: 154
Bedankt: 56
|
Zitat:
Aber was ist an C# denn so besonders? Die VM?
|
Zum Teil, aber das ist nicht alles. Z. B. ist es seit .Net 3.5 möglich, imperative Ansätze durch die Linq-Technologie zu verfolgen.
Zum Beispiel der erwähnte Quicksort würde in C# so aussehen
Code:
List<int> UnsortedList = new List<int> { 0 , 2, 1, 5, 3, -6, 12 };
var SortedList = from element in UnsortedList
where element >= 0 //schmeiße alle negativen Zahlen raus
orderby element
select element;
Dies ist ein .Net-Feature, womit alle .Net-kompatiblen Sprachen(VB, F#) ebenfalls damit arbeiten können.
|
|
|
10.07.11, 11:41
|
#13
|
Banned
Registriert seit: Jun 2011
Beiträge: 62
Bedankt: 40
|
Zitat:
Zitat von MaSydJun
Aber das Grundprinzip ist _fast_ bei jeder Programmiersprache ungefähr gleich - oder worin unterscheidet sich beispielsweise ein grundlegender Programmablauf eines Haskell-Programms im Vergleich zu einem C-Programm so stark?
|
Das ist absolut falsch! Du kennst wahrscheinlich nur imperative Programmiersprachen und bist deshalb dieser Annahme!
Logische Programmiersprachen sind ein Paradebeispiel. Informier Dich da am besten selbst...
|
|
|
10.07.11, 13:44
|
#14
|
Anfänger
Registriert seit: Jun 2011
Beiträge: 13
Bedankt: 0
|
Zitat:
Zitat von Pillewutz
Das ist absolut falsch! Du kennst wahrscheinlich nur imperative Programmiersprachen und bist deshalb dieser Annahme!
Logische Programmiersprachen sind ein Paradebeispiel. Informier Dich da am besten selbst...
|
Nun, ich hatte noch nie etwas mit logischen oder funktionalen Sprachen am Hut. Aber mir des öfteren den ein oder anderen Wikipedia Artikel durchgelesen  (Was keinerlei Kompetenznachweis sein soll)
So Grundlegende Dinge wie Funktionen und Kontrollstrukturen gibt es ja auch in Haskell, LISP, Prolog etc…
Aber du hast wohl recht, denn wenn sich Programmiersprachen nicht unterscheiden würden, würde man sie wohl auch nicht kategorisieren…
|
|
|
10.07.11, 19:06
|
#15
|
Anfänger
Registriert seit: Jun 2011
Beiträge: 13
Bedankt: 0
|
Ok, gebe mich geschlagen.
Ich wollte hier nicht rumtrollen, sondern habe lediglich meinen Auffassung der Dinge vertreten, dass mein Halbwissen dafür nicht ausgereicht hat, habe ich jetzt auch mitbekommen.
|
|
|
16.07.11, 20:44
|
#16
|
Ohh die Meisterröstung!
Registriert seit: Jun 2011
Ort: Deutschland
Beiträge: 101
Bedankt: 78
|
Was ich dir sehr Empfehlen kann ist das Buch [ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ].
Das nutze ich persönlich selbst im moment. Dort wirt dir alles Beigebracht aber nur die Programmierung für Konsolenprogramme also für die Eingabeaufforderung und keine GUI Programme. Also alles wichtig mit Container, Klassen definierung, Ein-Ausgaben, Arrays und Aufzählung, Objekte u.s.w.
__________________
|
|
|
19.07.11, 10:31
|
#17
|
Erfahrener Newbie
Registriert seit: Jan 2010
Ort: Mein Bett und gelegentlich ein anderes Bett.
Beiträge: 104
Bedankt: 32
|
Warum setzt ihr c++ immer direkt mit oop gleich?
__________________
Die heutige Jugend ist selbst zum googlen zu faul...
|
|
|
19.07.11, 16:47
|
#18
|
Erfahrenes Mitglied
Registriert seit: Oct 2009
Beiträge: 640
Bedankt: 228
|
Weil ich sonst gleich C nehmen kann, wenn ich die OO-Eigenschaften nicht Nutze. Nur wegen der Metaprogrammierung würde ich es nämlich nicht nehmen, da es nicht nur vorteile hat.
|
|
|
Forumregeln
|
Du kannst keine neue Themen eröffnen
Du kannst keine Antworten verfassen
Du kannst keine Anhänge posten
Du kannst nicht deine Beiträge editieren
HTML-Code ist Aus.
|
|
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:53 Uhr.
().
|