Gemeinsam C++ lernen, wer macht mit? Speziell auf Anfänger bezogen.



  • Samp schrieb:

    Keine Angst, wir warten auf alle ^^

    Ihr solltet nicht ewig warten. 😉

    Allerdings solltet ihr euch Gedanken machen, wie ihr euer Zusammenlernen organisieren wollt. Ihr solltet euch also noch nicht zu fest aneinanderklammern, denn sobald einer keine Zeit hat, kommen dann alle nicht weiter. Andere sind vielleicht hochmotiviert und wollen schnellstmöglich Anwendungen entwickeln.

    Weiterhin werdet ihr für den Anfang einfache und teils individuelle Fragen und Testprogramme brauchen.

    Ihr werdet entweder jemanden brauchen, der einen Lerntakt für alle vorgibt und ausbalancieren kann, also Nachzügler mitziehen und Überflieger beschäftigen kann.

    Von daher denke ich, dass jeder, der C++ lernen möchte und ungefähr weiß, weshalb er das tun möchte, einfach anfangen sollte.



  • Ich kann Xin da nur zustimmen. Einfach mal losglegen.
    Damit das Ganze aber dann doch nicht komplett in Einzelarbeit zerfällt würde ich vorschlagen, z.B. über Skype einen Gruppenchat aufzumachen um sich gegenseitig auszutauschen und das Ganze zu managen.



  • Was haben eigentlich alle gegen IRC? So ein Channel ist immernoch 10 mal praktischer als Skype. oO



  • @cooky451
    Im Prinzip ist es mir egal ob IRC oder Skype, aber Skype haben nunmal die meisten.

    Aber mal etwas ganz anderes: Ist das Projekt tot? Habe seit einigen Tagen keinen Konakt mehr zu Samp oder anderen die mitmachen möchten.
    Wenn jemand Informationen oder Interesse hat das ganze mit mir weiter zu verfolgen, würde ich mich freuen. Ich bin jederzeit per mail erreichbar.
    Ansonsten werde ich das Ganze wohl doch alleine angehen.

    mfg qubic



  • qubic schrieb:

    Ansonsten werde ich das Ganze wohl doch alleine angehen.

    Ich möchte dieser Bemühung keine Konkurrenz machen, aber schlussendlich ist unsere Website genau für diesen Fall da und falls das hier im Sand verläuft, spamme ich einfach mal.
    Das Tutorial ist alles andere als perfekt, aber wir arbeiten dran. Deine/Eure Kritik hilft uns dabei und je mehr lesen, kritisieren und später ihre Erfahrungen beschreiben, umso besser.
    C++ sollte man bis zu einem akzeptablen Level aber durchaus damit bereits lernen können.
    Alles was fraglich ist, kann im Forum diskutiert werden und wird dann am Wiki korrigiert.

    Wenn sich Leute zusammenfinden, um gemeinsame Projekte aufzubauen, besteht die Möglichkeit diese Projekte auf proggen.org zu hosten (Subversion/Bugzilla).

    Als Kommunikationskanal dient das Forum, bewusst kein IRC oder Skype.



  • Ich weiß nicht, ob das passt, aber auch egal:

    Ich hab vor einiger Zeit (etwa vor 3-4 Monaten) angefangen C++ zu lernen. Hab dafür auch ein Buch schon durch ("Einstieg in C++" von Arnold Willemer, im übrigen ein mehr als empfehlenswertes Buch!) und bin jetzt am nächsten dran. Im Moment lese ich "Visual C++ 2010" von Dirk Louis, um mich der Entwicklung von GUI-Anwendungen etwas näher zu bringen und vielleicht später auch "richtige" Anwendungen schreiben zu können.
    Die Syntax vom reinem C++ kann ich schon einigermaßen gut, die von net. (Visual C++) muss ich noch lernen.
    Kennen tue 2 Leute, die etwas mit Programmierung am Hut haben, leider kann ich mit denen recht wenig anfangen, denn der eine hat sich auf Internet-Design und so nen Zeug spezialisiert und der andere ist zum einen in Erfahrung mir weit vor raus und zum anderen programmiert er in Java, nicht C++.
    Also frage ich mal hier, ob ich bei dieser "Gruppe" mitmachen kann oder ob es vielleicht andere Interessenten gibt, die mit mir zusammen was in die Richtung machen wollen?!? 🙂



  • ⚠ C++ != C++/CLI
    Das Sind zwei Grundverschiedene Sprachen.

    R.Paul W. schrieb:

    Im Moment lese ich "Visual C++ 2010" von Dirk Louis, um mich der Entwicklung von GUI-Anwendungen etwas näher zu bringen und vielleicht später auch "richtige" Anwendungen schreiben zu können.

    C++/CLI + Windows Forms MACHT KEINEN SINN!
    Wenn du GUIs in C++ (ohne CLI) schreiben willst, dann benutz entweder die MFC, WTL oder die Platformunabhaengigen wie GTK(mm), QT und wxWidgets.



  • Vielleicht hat die Website recht (vielleicht auch nicht), das kann ich jedoch nicht wirklich gut beurteilen, weil ich noch ein Anfänger bin.
    Ich weiß nicht:
    Diese ganze Geschichte mit das C++ von Visual Studio sei ganz anders als das "richtige" C++, kommt mir etwas übertrieben vor. Zumindest empfand ich es bis jetzt als nicht allzu schwer von der reinen C++-Syntax auf die neue umzusteigen. Klar hatte ich zu Beginn mein persönliches Drama damit, dass man nicht mehr

    #include <iostream>
    

    schreibt und anstatt von

    using namespace std;
    

    ,

    using namespace System;
    

    eintippen muss. Die Umstellung von

    cout << xy << endl;
    

    auf

    Console::WriteLine(xy);
    

    war für mich auch irgendwie ein Schock und vom Aufbau her erinnert mich das eher ein bisschen mehr an das bisschen Java, was ich im Informatik-Unterricht gesehen haben (wobei mein Lehrer dort mehr als kläglich versagt hat 😉 ), aber insgesamt fand ich es doch ganz akzeptabel und verständlich. 🙂 (Manchmal sogar etwas verständlicher als reines C++...mich aber bitte nicht wegen dieser Aussage auf den Scheiterhaufen werfen 😉 😃 ).
    Zumindest habe ich, Website hin oder her, vor dieses Buch zu Ende durch zu arbeiten, um zumindest grundlegend zu lernen, wie diese ganze GUI-Anwedungen-Erstellen-Geschichte funktioniert (habe bis jetzt nur Konsolen-Anwendungen geschrieben). Danach werde ich vielleicht, wenn nötig auf ein anderes IDE oder eine "andere" Sprache umsteigen (Java?!?).

    Trotzdem danke für deinen Hinweis (und sag mir bescheid, wenn ich etwas falsch interpretiert hab von dem, was du/ die website geschrieben hast/hat)! 🙂



  • Das ist kein "Visual Studio C++". Du hast keine Ahnung 😉 Such mal im Forum, gibt schon genug Threads zu dem Thema, keine Lust das wieder durchzukauen.



  • C++/CLI ist nicht "das C++ von Visual Studio" oder "die neue Syntax".
    C++/CLI ist eben C++/CLI. Aka. ein rundes Schwein das durch ein eckiges Loch gepresst wurde.
    Dafür was es ist, ist es mMn. sehr gut geworden. (Wobei man auch bedenken sollte dass es bereits der 2. Anlauf dieser Schweineverformung ist. Der erste nennt sich "managed C++", war einigermassen grauenhaft, und wird von MS auch nicht mehr weiter supported.)

    Aber GUI Anwendungen in C++/CLI zu entwickeln macht wirklich keinen Sinn, da hat "die Webseite" (aka. Jochen Kalmbach, der auch öfters hier im Forum postet) absolut Recht.

    Ich würde C++/CLI als eine Sprache einstufen, die man - für bestimmte recht spezielle Anwendungsfälle - genau dann gut verwenden kann, wenn man davor schon *sehr gut* C++ und C# kann. Für die meisten Sachen ist es aber einfach das falsche Werkzeug.



  • Sag mal ist es in diesem Forum Brauch, dass man mindestens von 1-2 Leuten runtergemacht wird, sobald man irgendeine Frage stellt, wo etwas inkorrekt formuliert wurde?! Ich hab bis jetzt 3 mal etwas in dem Forum gepostet (die ersten beiden Male waren Verständnisfragen und ich wurde zur Sau gemacht, weil ich zu dem Zeitpunkt noch nicht wusste, was STL ist) und wurde jedesmal angemeckert...anscheinend sollte man sich hier als Anfänger nicht rumtreiben (das zeigen auch die ersten beiden Antworten auf diesen Post von Samp)! So viel dazu...

    C++/CLI ist nicht "das C++ von Visual Studio" oder "die neue
    Syntax".

    Es ist mir klar, dass dies nicht die korrekten Formulierungen sind, nur für mich war es ja bis jetzt "die neue Syntax" und "das C++ von Visual Studio", da ich zuvor mit Dev-Cpp gearbeitet habe und dort lediglich "reines C++" kannte! 😉

    Zumindest habe ich, Website hin oder her, vor dieses Buch zu Ende durch zu arbeiten, um zumindest grundlegend zu lernen, wie diese ganze GUI-Anwedungen-Erstellen-Geschichte funktioniert (habe bis jetzt nur Konsolen-Anwendungen geschrieben). Danach werde ich vielleicht, wenn nötig auf ein anderes IDE oder eine "andere" Sprache umsteigen (Java?!?).

    Und bei der Aussage bleibe ich weiterhin... 🙄



  • C++/CLI ist wirklich nur als Inter-OP von managed nach unmanged gedacht. Es ist durchaus eine nuetzliche Sprache, ich habe nie etwas anderes behauptet, wenn man z.B. alte Bibliotheken wrappen will.
    Aber fuer GUIs ist es einfach ungeeignet. Probier mal WPF-Programme C++/CLI zu schreiben. Es ist moeglich, aber Unterstuetzung seitens des Designers bekommst du sogut wie keine. Wenn du Designer-Gestuezt arbeiten willst, musst du Windows Forms nehmen. Die sind nicht schlecht, werden aber nicht mehr weiterentwickelt.

    Entscheide dich: Willst du C++ (und damit meine ich richtiges C++) benutzen? Wenn ja, dann benutze die von mir vorgeschlagenen Bibliotheken. Willst du auf .NET zurueckgreifen? Dann benutz C# oder VB als Sprache. Beides zu mischen ist moeglich, macht aber nur seltenst Sinn.

    EDIT: Wir machen dich nicht runter, wir wollen dir helfen. Mach nicht den Fehler C++/CLI als Primaersprache zu benutzen oder es als C++-Erweiterung zu sehen. Das schafft mehr Probleme als es loesen wird.



  • EDIT: Wir machen dich nicht runter, wir wollen dir helfen. Mach nicht den Fehler C++/CLI als Primaersprache zu benutzen oder es als C++-Erweiterung zu sehen. Das schafft mehr Probleme als es loesen wird.

    Das mit runtermachen war eher auf Leute wie Mechanics bezogen, dein Beitrag war durchaus hilfreich... 👍

    Entscheide dich: Willst du C++ (und damit meine ich richtiges C++) benutzen? Wenn ja, dann benutze die von mir vorgeschlagenen Bibliotheken. Willst du auf .NET zurueckgreifen? Dann benutz C# oder VB als Sprache. Beides zu mischen ist moeglich, macht aber nur seltenst Sinn.

    Ich glaub nicht, dass es für mich als Anfänger sinnvoll ist noch eine weitere Sprache zu lernen, also wahrscheinlich C++.
    Da kommt bei mir dann natürlich die Frage auf, welche Möglichkeiten habe ich damit und gibt es dazu irgendwelche guten Tutorials/Bücher???

    Naja ich will auf jeden Fall C++/CLI zu Ende lernen (sprich das Buch durchlesen und mir dazu meine Gedanken machen 😉 ), man weiß ja nie wozu das später noch zu gebrauchen sein wird (vielleicht bringt ja Vater Microsoft eine Neuerung davon raus, welche es deutlich nützlicher macht 😉 😃 )!



  • R.Paul W. schrieb:

    man weiß ja nie wozu das später noch zu gebrauchen sein wird (vielleicht bringt ja Vater Microsoft eine Neuerung davon raus, welche es deutlich nützlicher macht 😉 😃 )!

    Du hast wohl noch nichts von C++/CX gehört ? 🤡
    http://msdn.microsoft.com/de-de/library/windows/apps/hh700360.aspx



  • R.Paul W. schrieb:

    Ich glaub nicht, dass es für mich als Anfänger sinnvoll ist noch eine weitere Sprache zu lernen, also wahrscheinlich C++. [...]
    Naja ich will auf jeden Fall C++/CLI zu Ende lernen

    Ist das nicht ein Widerspruch?

    man weiß ja nie wozu das später noch zu gebrauchen sein wird (vielleicht bringt ja Vater Microsoft eine Neuerung davon raus, welche es deutlich nützlicher macht 😉 😃 )!

    C++/CLI ist doch sehr nützlich.



  • R.Paul W. schrieb:

    Ich glaub nicht, dass es für mich als Anfänger sinnvoll ist noch eine weitere Sprache zu lernen, also wahrscheinlich C++. [...]
    Naja ich will auf jeden Fall C++/CLI zu Ende lernen

    Ist das nicht ein Widerspruch?

    Ja und nein, eigentlich ist es schon irgendwie eine andere Sprache, aber im Vergleich zu Java o.ä. ist es nicht so viel anders als C++.



  • R.Paul W. schrieb:

    Entscheide dich: Willst du C++ (und damit meine ich richtiges C++) benutzen? Wenn ja, dann benutze die von mir vorgeschlagenen Bibliotheken. Willst du auf .NET zurueckgreifen? Dann benutz C# oder VB als Sprache. Beides zu mischen ist moeglich, macht aber nur seltenst Sinn.

    Ich glaub nicht, dass es für mich als Anfänger sinnvoll ist noch eine weitere Sprache zu lernen, also wahrscheinlich C++.
    Da kommt bei mir dann natürlich die Frage auf, welche Möglichkeiten habe ich damit und gibt es dazu irgendwelche guten Tutorials/Bücher???

    Buecher und Tuts gibt es zu diesen Bibliotheken genug (einige besser, einige schlechter), aber bevor man dir da was empfehlen kann, muesstest du dich erstmal fuer eine der Libs entscheiden. Hier mal meine Erfahrungen pro und contra fuer einige dieser Libs:

    • WinAPI

    • + extrem maechtiges Interface

    • + Extrem systemnah, nur mit Syscalls waerst du naeher dran

    • + Gut dokumentiert in der MSDN

    • - Nur ein C Interface (d.h. sachen a la cout darfst du nicht erwarten)

    • - nutzt ein veraltetes Design (wird sich aus Kompatiblitaetsgruenden auch nicht mehr aendern)

    • - einige Leute finden die Namenskonvention grauenhaft (wenn man dran gewoehnt ist und ihr Muster versteht kann man gut damit arbeiten

    • Fazit: WinAPI ist das Mittel der wahl, wenn die anderen Bibliotheken eine bestimmte Funktion nicht anbieten. Fuer den produktiven Einsatz mit C++ sollte sie jedoch nicht benutzt werden, ausser man braucht unbedingt eine Funktion aus ihr.

    • MFC

    • + Objektorientierte Kapselung vieler WinAPI-Funkitionen

    • + Framework fuer Anwendungen nach dem MVC-Modell

    • + Sehr gute WinAPI-kompaitblitaet, d.h. wenn du eine Funktion vermisst kannst du ohne Umwege darauf zurueckgreifen

    • + Bietet nciht nur GUI sondern auch viele Utility-Klassen

    • + Gut dokumentiert in der MSDN

    • - Kein modernenes C++ (sie ist zwar Objektorientiert, aber benutzt ein veraltetes Design)

    • - Namenskonvention

    • Fazit: *Die* Bibliothek fuer native Windows-Anwendungen in C++. Zwar etwas in die Jahre gekommen, aber dennoch gut zu verwenden. Die nahtlose Integration mit der WinAPI macht sie zu einem extrem maechtigen Werkzeug. Trotz kleiner Mankos zu empfehlen.

    • GTKmm

    • + Platformunabhaengig, d.h. Anwendungen laufen auch auf Linux usw.

    • - Dadurch kann sie aber auch nur einen begrenzten Funktionsumfang anbieten, der auf allen System auf denen sie laeuft vorhanden ist

    • - Anwendungen brauchen beim ersten Start nach einem reboot ziehmlich lange (getestet auf Windows)

    • Fazit: Gutes Mittel um Platformunabhaengige GUI-Anwendungen zu schreiben. Bietet allerdings keine WinAPI-Integration an, d.h. wenn du an bestimmten Steuerelementen mehr haben willst als die vorhandenen eigenschaften musst du darauf verzichten oder sie von Hand in der WinAPI erzeugen.

    Mit QT und wxWidgets habe ich noch keine Erfahrungen gemacht.

    R.Paul W. schrieb:

    Naja ich will auf jeden Fall C++/CLI zu Ende lernen (sprich das Buch durchlesen und mir dazu meine Gedanken machen 😉 ), man weiß ja nie wozu das später noch zu gebrauchen sein wird (vielleicht bringt ja Vater Microsoft eine Neuerung davon raus, welche es deutlich nützlicher macht 😉 😃 )!

    Lobenswerte Einstellung; es schadet nie mehrere Programmiersprachen zu koennen. Fuer Interops ok, fuer Anwendungen bitte richtiges C++ :p



  • Plattformunabhängigkeit ist mir im Moment nicht so wichtig. Ich hab zwar auf meinem Zweitrechner (ich hab insgesamt 3 Stück zu Hause 😃 ) Liux installiert, nutze es aber nicht aktiv. Zumeist arbeite ich mit Windows 7 (eventuell auch mit XP). GTKmm scheint für mich also nicht die beste Wahl zu sein. Bleiben noch WinAPI und MFC:

    Fuer den produktiven Einsatz mit C++ sollte sie jedoch nicht benutzt werden

    Demnach würde ich also zu MFC tendieren, es wäre aber schön, wenn noch jemand die Pros- und Contras von QT nennen könnte. 🙂



  • Bei MFC vergass ich ein Contra: Es ist leider erst mit VS Prof. und hoeher enthalten. Solltest du VS Express verwenden (und kein Schueler oder Student sein um VS Prof. kostenlos bei MS abzukupfern), kannst du leider nciht die aktuelle MFC verwenden (im Platform-SDK ist glaub ich eine alte Version vorhanden, aber die zu verwenden waere Leichenschaendung).
    Als kostenlose Alternative kann ich noch die WTL nennen. Stammt auch von MS und basiert auf der ATL, ist aber Open Source. Ansonsten duerften die Pros und Contras weitesgehend mit denen von MFC uebereinstimmen, aber es ist schon laenger her, dass ich sie mal verwendet habe, also ohne Gewaehr).



  • Ich bin noch Schüler (demnächst hoffentlich auch Student der Mathematik an der Uni Oldenburg 😉 )...


Anmelden zum Antworten