Anfängerfragen



  • hibbes schrieb:

    hier scheinen ja doch die Meinungen auseinander zu gehen, so dass ich wohl noch ein paar Antworten abwarten werden und mir selbst das Beste heraus filtere.

    Ich kann dir empfehlen, das du dir bewusst werden mußt, das C++ eine komplexe Sprache ist. Und bitte verwechsele komplex nicht mit kompliziert.

    D.h. zu mußt viel lernen, über Jahre. D.h. aber nicht das du Jahre brauchst, um ein Space Invaders zu programmieren. Das wirst du auch nach ein paar Wochen oder Monaten können, wenn du logisch denken kannst. Denn C++ ist dann nur das Werkzeug. Es hilft ja nichts BASIC zu lernen, aber man hat kein Verständnis für das Programmieren. Das Programmieren (egal welche Sprache) muß in Fleisch und Blut übergehen. Aber C++ mit seinen tollen Fähigkeiten kann einen unterstützen, wartbare und schnelle Programme zu entwickeln.

    Aber C++ ist ja erstmal nur eine Sprache mit einer Bibliothek. Was dann noch dazu kommt, ist mit den Tools umgehen zu können. Was ist ein Präprozessor? Was ein Compiler und was ein Linker? Wie kann ich mehrere C++-Module (besser bekannt als Übersetzungseinheiten, also Dateien wo der Code drin steht) zu einem Programm bauen? Wie kann ich fremde Bibliotheken nutzen oder gar selber bauen? Das sind Dinge, die einem nicht nur in C++ über den Weg laufen, auch in Java u.a. Sprachen muß man das alles lernen... und auch dort macht man das nicht an einem Wochenende!

    hibbes schrieb:

    Schade das die deutschen Bücher alle Mist sein sollen, vielleicht kann man mir doch der Eine oder Andere das Beste auch dem Mist empfehlen?

    Na, wer sagt denn, das die dt. Bücher Mist sind? Die meisten deutschen und englischen Bücher sind Mist. Aber es gibt definitiv zwei Deutsche Bücher, die man bedenkenlos empfehlen kann:

    - Der C++ Programmierer von Ulrich Breymann
    - C++ Primer von Stanley B. Lippman u.a.

    Wer am Buch geizt ("Will nur kostenlose Online-Tutorials") der brauch erst gar nicht ernsthaft mit C++ anfangen.

    Zum Compiler und IDE. Wenn du Windows-User bist und kein MS-Hasser aus Prinzip, dann empfehle ich dir eindeutig das kostenlose Visual C++ Express. Die meisten nutzen VisualC++ und du wirst hier schnell Hilfe erhalten.
    Wenn dir der Download zu groß ist, kann man auch Codeblocks empfehlen. Aber ist nur für den Einstieg geeignet, da dessen Compiler nicht die komplette C++-Std-Bibliothek unterstützt.



  • Danke dass du dir die Zeit für eine so ausführliche Antwort genommen hast.
    Ich werde mir eins von den Büchern, die du beschrieben hast, zulegen. Die Visual C++ Express Edition 2010 habe ich schon installiert. Mit der Programmierung an sich habe ich kein großes Problem auch wenn ich bis jetzt "nur" Webentwicklung gemacht habe und früher halt 68000er Assembler. Zum anderen lerne ich unheimlich gerne und nehme ungern Sachen einfach hin ohne wenigstens ein bisschen den Hintergrund dazu zu verstehen.

    Ich denke das Thema hier kann geschlossen werden.

    Danke nochmal an Alle
    hibbes



  • hibbes schrieb:

    Hallo,
    ich würde gerne mit C++ anfangen und hätte ein paar Fragen:

    - Ich habe schon mit Eclipse und PHP, Python und etwas Java programmiert. Was haltet ihr von der IDE in Bezug auf CDT also dem Plugin für C++?

    - Ich liebäugle mit dem Buch C++ für Spieleprogrammierer, da ich auch daran Hobbymässig interessiert bin und auch ein wenig Erfahrungen in kleiner Spieleprogrammierung in Assembler auf dem guten alten Amiga habe. Ist das Buch zu empfehlen?

    - Wird es C++ noch ne Weile geben eurer Meinung nach, wenn ja warum? Ist zwar nicht so wichtig aber es interessiert mich halt.

    - Was sind so die größten Fehler die man mit C++ machen kann?

    G hibbes

    Der grösste Fehler ist den grössten Fehler mit ß zu schreiben 🤡 . Ok - bezieht sich nicht auf C++. Also noch mal: der grösste Fehler ist, C++ nicht richtig zu lernen und dann mit irgendwelchen Halbwahrheiten hier aufzutauchen und als die grösste Erkenntnis zu verkaufen.

    C++ ist schwer zu lernen, da es einfach viele Möglichkeiten bietet. Wenn eine Sprache nur ein drittel der Möglichkeiten bietet, dann brauchst Du auch nur ein drittel der Zeit, um diese zu lernen. Es ist so wie mit dem Auto: wenn Du kein Navigationsgerät hast, brauchst Du nicht zu lernen, damit umzugehen. Aber ist das dann besser?

    Und C++ wird es noch eine Weile geben. Zumindest länger, als diese Hype-Sprachen. Oder mit welcher Sprache ist beispielsweise der Browser geschrieben, an dem ihr gerade sitzt?

    C++ ist moderner, als viele glauben. Leider gibt es viel zu wenige, die C++ gut genug können, um den Wert schätzen zu können.



  • Oberlehrer 2.0 schrieb:

    ...Oder mit welcher Sprache ist beispielsweise der Browser geschrieben, an dem ihr gerade sitzt?

    ich denke doch in c 😉

    lg lolo



  • noobLolo schrieb:

    Oberlehrer 2.0 schrieb:

    ...Oder mit welcher Sprache ist beispielsweise der Browser geschrieben, an dem ihr gerade sitzt?

    ich denke doch in c 😉

    Welchen benutzt du denn? Zumindest Firefox wird in C++ geschrieben.



  • Oberlehrer 2.0 schrieb:

    hibbes schrieb:

    Hallo,
    ich würde gerne mit C++ anfangen und hätte ein paar Fragen:

    - Ich habe schon mit Eclipse und PHP, Python und etwas Java programmiert. Was haltet ihr von der IDE in Bezug auf CDT also dem Plugin für C++?

    - Ich liebäugle mit dem Buch C++ für Spieleprogrammierer, da ich auch daran Hobbymässig interessiert bin und auch ein wenig Erfahrungen in kleiner Spieleprogrammierung in Assembler auf dem guten alten Amiga habe. Ist das Buch zu empfehlen?

    - Wird es C++ noch ne Weile geben eurer Meinung nach, wenn ja warum? Ist zwar nicht so wichtig aber es interessiert mich halt.

    - Was sind so die größten Fehler die man mit C++ machen kann?

    G hibbes

    Der grösste Fehler ist den grössten Fehler mit ß zu schreiben 🤡 . Ok - bezieht sich nicht auf C++. Also noch mal: der grösste Fehler ist, C++ nicht richtig zu lernen und dann mit irgendwelchen Halbwahrheiten hier aufzutauchen und als die grösste Erkenntnis zu verkaufen.

    C++ ist schwer zu lernen, da es einfach viele Möglichkeiten bietet. Wenn eine Sprache nur ein drittel der Möglichkeiten bietet, dann brauchst Du auch nur ein drittel der Zeit, um diese zu lernen. Es ist so wie mit dem Auto: wenn Du kein Navigationsgerät hast, brauchst Du nicht zu lernen, damit umzugehen. Aber ist das dann besser?

    Und C++ wird es noch eine Weile geben. Zumindest länger, als diese Hype-Sprachen. Oder mit welcher Sprache ist beispielsweise der Browser geschrieben, an dem ihr gerade sitzt?

    C++ ist moderner, als viele glauben. Leider gibt es viel zu wenige, die C++ gut genug können, um den Wert schätzen zu können.

    - Ähm, die Rechtschreibprüfung vom Duden sagt dass es mit ß richtig geschrieben ist. http://www.duden.de/deutsche_sprache/rechtschreibpruefung/

    - Ich denke, dass bei Firefox das Meiste in der Scriptsprache XUL programmiert wurde, und der Kern dann in C und C++ oder irre ich da?

    - Vor der Komplexität habe ich keine Angst, sondern sehe das eher als Herausforderung. Auch hier wird nur mit Wasser gekocht, auch wenn es viel mehr dabei zu beachten gibt. Ich werde halt einfach anfangen und am Anfang grottenschlecht sein und dann mit Ruhe und Geduld hoffentlich besser werden.

    G hibbes



  • Janjan schrieb:

    noobLolo schrieb:

    Oberlehrer 2.0 schrieb:

    ...Oder mit welcher Sprache ist beispielsweise der Browser geschrieben, an dem ihr gerade sitzt?

    ich denke doch in c 😉

    Welchen benutzt du denn? Zumindest Firefox wird in C++ geschrieben.

    ja scheinbar ist es eine mischung aus beidem, dachte immer das wäre c, naja evtl. haben auch tausend flinke hände das schnell von c in c++ portiert, kann mir kaum vorstellen das sie ihre gesamte codebase verworfen haben nur weil c++ daher kam 😕



  • Xul ist ne Beschreibungssprache für die GUI und der Kern in C++.



  • hibbes schrieb:

    - Ich denke, dass bei Firefox das Meiste in der Scriptsprache XUL programmiert wurde, und der Kern dann in C und C++ oder irre ich da?

    Laut dem was ich gefunden habe wird hauptsächlich C++ erwähnt (Mozilla), und auch viele andere große Projekte sind im wesentlichen in C++ geschrieben (z.B. einiges von Adobe, Google, Microsoft...).



  • wir hatten alle ein bischen recht ok 😉

    SLOC   Directory   SLOC-by-Language (Sorted)
    475771  security        ansic=401988,cpp=30126,asm=28313,sh=12534,perl=2362,
                            lex=306,yacc=79,ada=49,csh=10,sed=4
    214917  layout          cpp=213968,perl=698,sh=251
    183493  gfx             cpp=92188,ansic=91121,perl=174,awk=10
    173573  content         cpp=173480,perl=89,sh=4
    155271  js              cpp=124352,ansic=17060,java=8272,perl=4743,sh=798,
                            asm=46
    154141  modules         cpp=87316,ansic=65694,java=598,perl=533
    126706  nsprpub         ansic=122078,cpp=2834,asm=1002,sh=668,perl=124
    119422  xpcom           cpp=97100,ansic=17425,asm=4625,perl=200,python=72
    88979   db              ansic=53626,cpp=35339,python=14
    84966   toolkit         cpp=69434,sh=10078,ansic=2229,objc=1476,perl=893,
                            python=458,php=244,java=97,asm=57
    83016   embedding       cpp=78239,ansic=3803,cs=453,perl=375,pascal=86,java=49,
                            sh=11
    68146   netwerk         cpp=63008,ansic=4616,java=354,perl=96,python=66,sh=6
    65828   widget          cpp=59500,ansic=6328
    60347   extensions      cpp=47869,ansic=5237,python=3981,java=2841,lisp=256,
                            perl=96,sh=67
    57332   intl            cpp=37049,ansic=16067,perl=4192,sh=24
    53616   editor          cpp=53616
    36027   tools           ansic=15271,cpp=8002,perl=7997,python=2698,sh=1159,
                            pascal=813,awk=59,csh=28
    32905   accessible      cpp=32905
    31373   dom             cpp=31373
    30051   parser          cpp=18100,ansic=11774,perl=177
    27095   xpfe            cpp=26578,ansic=517
    19189   other-licenses  cpp=16654,ansic=2534,sh=1
    18499   plugin          cpp=17385,java=1114
    17662   jpeg            ansic=17378,asm=284
    14913   rdf             cpp=14913
    12980   config          ansic=7425,perl=2686,python=1976,cpp=783,sh=110
    12307   uriloader       cpp=12307
    12152   docshell        cpp=12152
    10982   browser         cpp=10723,perl=119,sh=117,python=23
    9805    build           sh=3660,perl=2399,cpp=2396,ansic=1274,python=76
    9083    testing         python=4405,sh=2532,perl=1839,cpp=292,exp=12,sed=3
    7920    ipc             cpp=7920
    5426    caps            cpp=5426
    5344    memory          ansic=5303,perl=36,python=5
    4389    dbm             ansic=4389
    3486    view            cpp=3486
    3450    sun-java        ansic=1756,cpp=1694
    3354    xpinstall       cpp=2708,perl=646
    2980    storage         cpp=2980
    2883    profile         cpp=2883
    2674    chrome          cpp=2674
    1247    xulrunner       cpp=1027,sh=220
    114     top_dir         python=79,sh=35
    60      webshell        cpp=60
    0       probes          (none)
    
    Totals grouped by language (dominant language first):
    cpp:        1500839 (59.94%)
    ansic:       874893 (34.94%)
    asm:          34327 (1.37%)
    sh:           32275 (1.29%)
    perl:         30474 (1.22%)
    python:       13853 (0.55%)
    java:         13325 (0.53%)
    objc:          1476 (0.06%)
    pascal:         899 (0.04%)
    cs:             453 (0.02%)
    lex:            306 (0.01%)
    lisp:           256 (0.01%)
    php:            244 (0.01%)
    yacc:            79 (0.00%)
    awk:             69 (0.00%)
    ada:             49 (0.00%)
    csh:             38 (0.00%)
    exp:             12 (0.00%)
    sed:              7 (0.00%)
    
    Total Physical Source Lines of Code (SLOC)                = 2,503,874
    Development Effort Estimate, Person-Years (Person-Months) = 740.58 (8,886.98)
    (Basic COCOMO model, Person-Months = 2.4 * (KSLOC**1.05))
    Schedule Estimate, Years (Months)                         = 6.60 (79.15)
    (Basic COCOMO model, Months = 2.5 * (person-months**0.38))
    Estimated Average Number of Developers (Effort/Schedule)  = 112.28
    Total Estimated Cost to Develop                           = $ 100,042,542
    (average salary = $56,286/year, overhead = 2.40).
    SLOCCount, Copyright (C) 2001-2004 David A. Wheeler
    SLOCCount is Open Source Software/Free Software, licensed under the GNU GPL.
    SLOCCount comes with ABSOLUTELY NO WARRANTY, and you are welcome to
    redistribute it under certain conditions as specified by the GNU GPL license;
    see the documentation for details.
    Please credit this data as "generated using David A. Wheeler's 'SLOCCount'."
    


  • Der Firefox ist in C++ programmiert. Kann ja jeder (da Open Source) selber prüfen.
    Aber auch an den Coding styles kann man das sehen:
    https://developer.mozilla.org/En/Developer_Guide/Coding_Style
    Und mal ein paar Teile des Browser-Sourcecode:

    Browser-Instanz: http://mxr.mozilla.org/mozilla/source/xpfe/browser/src/
    Browser-History: http://mxr.mozilla.org/mozilla/source/toolkit/components/history/src/

    Auch Google Chrome (die nutzen die WTL, mehr C++ geht nicht), Opera (die nutzen Qt, somit C++) und IE sind in C++.

    Ein Browser der in C programmiert wird, ist auf http://www.NetSurf-browser.org zu finden. Ist aber eher die Ausnahme.



  • Artchi schrieb:

    Der Firefox ist in C++ programmiert. Kann ja jeder (da Open Source) selber prüfen.

    jeder der das selber prüfen will, wird herausfinden das eben nicht nur c++ verwendet wird, auch wenn das viele hier gerne hätten...

    lg lolo



  • noobLolo schrieb:

    Artchi schrieb:

    Der Firefox ist in C++ programmiert. Kann ja jeder (da Open Source) selber prüfen.

    jeder der das selber prüfen will, wird herausfinden das eben nicht nur c++ verwendet wird, auch wenn das viele hier gerne hätten...

    Bla bla bla. Hier hätte niemand gerne, das es nur in C++ ist. Aber es geht einem auf dem Keks, wenn andere versuchen zu sagen, das man in C++ kein erfolgreiches Projekt stemmen kann.

    Und gerade C++ ermöglicht es, das man überhaupt sein Projekt mit anderen Sprachen erweitern kann. Und das ist eine Leistung von C++.



  • Artchi schrieb:

    noobLolo schrieb:

    Artchi schrieb:

    Der Firefox ist in C++ programmiert. Kann ja jeder (da Open Source) selber prüfen.

    jeder der das selber prüfen will, wird herausfinden das eben nicht nur c++ verwendet wird, auch wenn das viele hier gerne hätten...

    Bla bla bla.

    schau dir doch auf chatroulette die pimmel an 😡



  • Tyrdal schrieb:

    Xul ist ne Beschreibungssprache für die GUI und der Kern in C++.

    Ja, da hast du recht mit der Beschreibungssprache.
    Ich habe mir auch gerade mal den Sourcecode angeschaut und da ist viel C++, XUL, CSS, JS und XML. Somit wäre das auch geklärt, ich denke da das hier ein ganz anderes Thema ist sollte hier dann doch geschlossen werden. 😉



  • noobLolo schrieb:

    Artchi schrieb:

    Der Firefox ist in C++ programmiert. Kann ja jeder (da Open Source) selber prüfen.

    jeder der das selber prüfen will, wird herausfinden das eben nicht nur c++ verwendet wird, auch wenn das viele hier gerne hätten...

    Niemand hat behauptet Firefox wird nur mit C++ programmiert. Allerdings ein Großteil. Und nun hör bitte auf zu trollen.



  • Artchi schrieb:

    Und gerade C++ ermöglicht es, das man überhaupt sein Projekt mit anderen Sprachen erweitern kann. Und das ist eine Leistung von C++.

    Hmm.
    Meinst du die calling conventions? Die sind eine Leistung der Compiler, und die gab's schon vor C++.
    Oder meinst du Interpreter? Die sind eine Leistung des Programmierers.
    Oder meinst du syntaktische Abstraktionen? Die sind nun nicht gerade eine Stärke von C++.
    🙂


Anmelden zum Antworten