Alternative zu VC++/MFC



  • Ich habe bisher einiges mit VC++/MFC entwickelt und will nun umsteigen. Ein Ziel soll dabei sein, dass die Programme, die ich vornehmlich für Windows schreibe, mit nicht allzu großem Aufwand auch für Linux kompilierbar sein sollen.

    Ich dachte an folgende Kombi für die C++ Programmentwicklung:

    - Dev-C++ Entwicklungsumgebung
    - Boost für Spezielles
    - wxWidgets für GUIs

    Wie würdet Ihr das angehen? Habt Ihr noch was nützliches?



  • Klare Sache: Java!



  • hansile schrieb:

    Wie würdet Ihr das angehen? Habt Ihr noch was nützliches?

    Also, ich würde mir erste eine GUI Bibliothek suchen die ich für meine Programme nutzen will und mich dann genau informieren auf was ich bei dieser achten muss (Limzenbedingungen, etc.). Eventuell wäre auch ein Umstieg auf Java, etc. möglich. Anschließend würde ich mich in das Framework einarbeiten und dann ganz normal wieder Programme schreiben.

    Zu GUIs findest du hier ne übersicht:
    http://www.c-plusplus.net/forum/viewtopic-var-t-is-81596.html



  • Also ich bin eher ein C++ Noob, aber habe auch nach Umgebungen dafür gesucht, die frei von MS und kostenlos sind. Nach einigem rumprobieren entschied ich mich dann für Dev-C++. Seine Einfachheit, leichte Bedienbarkeit und die schlanke Installation, haben mich überzeugt. Einfache Programme, die Du dort unter Win32 schreibst, lassen sich fast 1:1 auch in Linux kompilieren, aber nur fast! Machs am besten gleich unter Linux. 😉 Mit Grafik kenn ich mich nicht aus.

    Gruß, Matze



  • Vielen Dank für Eure Antworten.

    Ich entwickle auch in Java. Die Frage hier bezieht sich aber auf den Fall, dass C++ verwendet werden soll.



  • hansile schrieb:

    Ich entwickle auch in Java. Die Frage hier bezieht sich aber auf den Fall, dass C++ verwendet werden soll.

    Dann ist deine Kombi für die C++ Programmentwicklung die du oben beschrieben hast gar nicht mal so schlecht. 😃



  • hansile schrieb:

    - Dev-C++ Entwicklungsumgebung
    - Boost für Spezielles
    - wxWidgets für GUIs

    Ich würde eher empfehlen:
    - CodeBlocks (Dev-C++ ist veraltet und wird nicht weiterentwickelt) oder aber wxDev-C++ wenn Du wirklich wxWidgets einsetzt.
    - Boost nicht nur für Spezielles 😉
    - wxWidgets für GUIs schließe ich mich an

    Nachtrag zum ersten Punkt:
    Ich habe gerade festgestellt der wxWidgets-Dialogeditor wxSmith, der in CodeBlocks enthalten ist, wird immer besser. Er kommt inzwischen sehr nah an den wxFormBuilder und schlägt damit (IMHO) den Designer von wxDev-C++.



  • Ja, habe auch eben gelesen, dass Code::Blocks mit wxWidgets geschrieben wurde. Das macht es mir nat. sehr symphatisch. Meine aktuelle Wahl wäre also

    - Code::Blocks als Entwicklungsumgebung
    - wxWidgets für GUIs
    - Boost

    Einige Sachen wie z.B. Thread-Unterstützung scheint es in wxWidgets und Boost zu geben. Was wäre da zu bevorzugen?
    Wie siehts mit Sockets, XML-Unterstützung usw. aus?



  • hansile schrieb:

    Einige Sachen wie z.B. Thread-Unterstützung scheint es in wxWidgets und Boost zu geben. Was wäre da zu bevorzugen?
    Wie siehts mit Sockets, XML-Unterstützung usw. aus?

    Threads werden im C++09 rein kommen, entsprechend wird es bald Compiler dazu geben. Die Threads in C++09 werden sich an Boost.Threads orientieren.
    Netzwerk wird es in C++ TR2 geben. Dafür wurde Boost.Asio vorgeschlagen, aber noch nicht endgültig entschieden.

    Wenn du XML machen willst, kann man Xerces-C++ empfehlen.

    Wenn du ein Komplettpacket haben willst, schau dir mal http://pocoproject.org/ an.



  • hansile schrieb:

    Was wäre da zu bevorzugen?

    Ich würde wohl Boost bevorzugen, da die wxWidgets-API hässlich ist.

    Wie siehts mit Sockets, XML-Unterstützung usw. aus?

    boost::asio bietet Sockets. Ist aber noch in keinem offiziellem Boost-Release enthalten. Aber eine Nachinstallation ist recht leicht, da es Header-only ist.

    Für XML-Unterstützung musst du dir noch eine andere Library installieren.



  • hansile schrieb:

    Einige Sachen wie z.B. Thread-Unterstützung scheint es in wxWidgets und Boost zu geben. Was wäre da zu bevorzugen?
    Wie siehts mit Sockets, XML-Unterstützung usw. aus?

    Wenn du schon wxWidgets benutzt, und auch mit wx Kommunizieren musst, würde ich evtl. wxWidgets bevorzugen, da du dann z.B. von wxThread und wxEvtHandler ableiten kannst.
    XML Unterstützt wxWidgets auch, gibt aber sicher bessere sachen.

    Boost ist natürlich das Mittel der Wahl, wenn man keine GUI braucht.

    phlox


Anmelden zum Antworten