nach c++... was nun?



  • kingruedi schrieb:

    phlox81 schrieb:

    Wenn du dich schon gut mit C++ auskennst, ist wxWidgets eine gute Wahl wenn du was
    mit GUI machen willst.

    Nein, wxWidgets ist eigentlich keine gute Wahl. wxWidgets ist kein zeitgemäßes C++ mehr.

    Zeitgemäße, platoformunabhängie Alternativen?



  • Chris++ schrieb:

    kingruedi schrieb:

    Nein, wxWidgets ist eigentlich keine gute Wahl. wxWidgets ist kein zeitgemäßes C++ mehr.

    Zeitgemäße, platoformunabhängie Alternativen?

    Qt, ganz klar, denn da steht auch wer dahinter mit Gespür für Innovation.



  • Qt ist auch nicht moderner, es benutzt nicht nur Makros, nein, sondern sogar noch nen eigenen Präpräprozessor! (den moc)

    Qt hat auch keine native Widgets, wenn einem sowas wichtig ist. Und mit WindowBlinds funktionieren die Qt4.1.4 Anwendungen nicht mal korrekt.

    wxWidgets ist zwar an vielen Stellen altbacken, aber es ist auch nicht so schlimm wie MFC. Es erfüllt auf jeden Fall seinen Zweck.

    Letztendlich muß man seine eigenen Prioritäten kennen und sich seine eigene GUI-Lib raussuchen.



  • Hallo Leute, ich interessiere mich auch f+r GUI-Programmierung und will sie mir neben (in c)/nach dem c++ lernen (in c++) auch ansehen und mich in die Grundlagen einarbeiten.

    Was empfehlt ihr mir für c++ bzw wo muss ich aufpassen damit ich nicht als pfuscher ende wie ein vorposter beschrieben hat?

    Thx, hoffe die Fragestellung ist nicht blöd.



  • Was ist dir oder deinen Endanwendern denn wichtig an einer GUI? Neben vernünftigem C++ Design gibts ja auch noch andere Aspekte: auf welchem OS muß sie mind. verfügbar sein? Ist eine große Community wegen Hilfe und zus. verfügbaren Erweiterungen wichtig? Muß die GUI stylisch aussehen, oder kann sie auch nur puristisch sein? Sind native Widgets wichtig? etc. pp.

    Das Thema GUI ist (leider) komplexer als man denkt.

    EDIT: Oder willst du erstmal überhaupt nur was auf dem Bildschirm zaubern, damit du sowas mal gemacht hast? Dann kann ich z.B. fltk 2.x (nicht die 1er Version!) oder Smartwin (wenn du Windows hast) empfehlen.



  • Beginner13 schrieb:

    Was mich auch noch interessieren würde ist, wie man dlls macht und ob das überhaupt wichtig ist sowas zu lernen?

    Einiges zu DLLs gibt's in meinem Artikel, welcher voraussichtlich in der nächsten Ausgabe des Magazins erscheinen wird.

    Greetz, Swordfish



  • volkard schrieb:

    fängste jetzt mit grafik an, biste mit großer wahrscheinlichkeit in 10 wochen ein hofnungsloser stümper. kannst danach bestenfalls noch ein great game coder werden.

    hehe, guter spruch 👍
    obwohl für einsteiger grafik/sound ja besonders reizvoll sind und alles andere eher zu trocken...



  • kingruedi schrieb:

    phlox81 schrieb:

    Wenn du dich schon gut mit C++ auskennst, ist wxWidgets eine gute Wahl wenn du was
    mit GUI machen willst.

    Nein, wxWidgets ist eigentlich keine gute Wahl. wxWidgets ist kein zeitgemäßes C++ mehr.

    Das ist Ansichtssache.
    Wenn man nur auf Linux unterwegs ist, ist GTKmm sicher ne alternative, aber
    für Plattformunabhängigkeit würde ich da neben wx momentan nur Qt sehen.
    Kommt halt auch drauf an, ob man seine Programme unter GPL stellen will oder nicht.

    Aber volkard hat schon recht, vor der GUI kommt erstmal die Konsole.
    Wer GUI will, sollte C++ und OOP gut verstanden haben. Und ein wenig STL
    schadet auch nicht, im Gegenteil, sie bietet häufig bessere Alternativen,
    wenn es z.b. ums Dateihandling oder Container geht.



  • QT ist eine nette GUI-Libraries. Du kannst dein Programm auch für Linux kompilieren. Jedoch braucht man eine gewisse Zeit um diese zu beherrschen. deine Programme kannst du sogar für Linux kompilieren, ohne grosse Änderungen vornehmen zu müssen



  • volkard schrieb:

    Beginner13 schrieb:

    hi, ich habe mir in den letzten Wochen c++ mit einem Buch beigebracht und wollte nun mal wissen, was ihr danach so noch lernt.

    jetzt kannste anfangen, programmieren zu lernen. und zwar ohne grafik. nur mit konsole. keine bange, wirst noch auf jahre hinaus genügend probleme finden, die dich nicht unterfordern.
    fängste jetzt mit grafik an, biste mit großer wahrscheinlichkeit in 10 wochen ein hofnungsloser stümper. kannst danach bestenfalls noch ein great game coder werden.

    auf den punkt gebracht 😃 👍



  • @Artchie:

    Also Gui brauch ich nicht weil ich jetzt sage es muss unbedingt eins sein so wie beginner13 viell kA, sondern weil ich es sehr interessant finde.

    Ja Hilfe is immer wichtig, naja ich brauch nicht alle extras es soll aba einigermaßen gut aussehen.

    Sry 😕 aba was sind native widgets?



  • Chris++ schrieb:

    Zeitgemäße, platoformunabhängie Alternativen?

    fltk für die GUI (ist nach meiner Einschätzung die praktikabelste GUI für C++ derzeit) und für den Rest (Sockets, Threads ...) boost.



  • @muhi!

    Das ist doch schon mal eine Aussage. Dann kann man z.B. sagen, das du keine MFC, kein wxWidgets und auch kein Qt brauchst. Das sind nämlich alles große Frameworks, die man zum Reinschnuppern nicht braucht.

    Folgende Toolkits sind meiner pers. Meinung für Anfänger als Einstieg geeignet: FLTK 2.x, FOX-Toolkit und Smartwin. Eine Übersicht findest du hier: http://www.kharchi.de/cpp_gui.html

    Native Widgets: Windows hat ja eine GUI, soll heißen es stellt uns bereits eigene einheitliche Fenster, Buttons, Texteingabefelder usw. bereit. Das sind alles Widgets (Dinger). Nativ heißt, das es ursprünglich oder original ist. Halt wie Natives (Ureinwohner). Bei nativen Widgets gehts aber nicht nur um das Aussehen (Look) sondern auch um das Verhalten (Feel). Wenn einem z.B. das Look&Feel unter MacOS X wichtig ist, kriegt man das nur hin, wenn man auch die nativen Widget von MacOS X benutzt. Und nicht in dem eine GUI-Lib versucht diese selbst nachzubilden. Das gilt natürlich für jedes Desktop-GUI.



  • Danke für die Antworten!

    Nur noch eine Frage 😃 .:

    Ich hab zwar schon viel rumgegoogelt aba so richtig braucbares hab ich nicht gefunden. Was ich suche sind (auch zum experimentieren und zum mal gemacht haben) RADs bzw. Gui designer.

    Alles was ich brauche sind Namen, den Rest google ich mir zusammen.

    Abschliessende Frage: Wieso kann ich manche libs nur mit c++ verwenden?

    Wenn ich mich mit oop ein wenig auskenne und C++ ja abwärtskompatibel ist sollte es auch gehen oder?

    offtopic: netter Blog 🙂 .



  • Wie du findest nichts? Hab dir doch nen Link gegeben. Oder willst du das in C machen? Da kann man dich leider nur enttäuschen. Da Desktop-Anwendungen heute nunmal mehrheitlich in C++ und nicht C entwickelt werden, sind die Libs auch alle in C++. Es gibt praktisch nur eine nennenswerte C-GUI-Lib: gtk+.

    Wie C++ ist abwärtskompatibel? Dann hast du was falsch verstanden: Du kannst in C++ auch C-Libs benutzen. Nicht umgekehrt!



  • Sorry, ich meinte aufwärtskompatibel.

    Naja der Gedankengang war, dass C (nur mal die syntax und die Möglichkeiten) ja auch in C++ verwendbar is, also auch in einer lib.

    sodass wenn man sich auch ein wenig mit oop befasst hat da viell was zusammenbasteln könnte g. vertsehst du in etwa was ich meine?





  • @muhi!

    Nein, leider weiß ich nicht was du meinst. Ich denke eher, das du falsche Vorstellungen hast. 😉 Denn im Prinzip hat z.B. FLTK das was du willst: Rapid Applikation Development. Du nimmst einfach den GUI-Designer namens Fluid von FLTK und klickst dir deine GUI zusammen. Du kannst in Fluid sogar eigenen Code einbinden. Hast du deine GUI fertig, kannst du sie sogar von Fluid aus kompilieren und ausführen lassen. Aber im Prinzip gebe ich hier nur Infos wieder, die du selbstständig heraus finden kannst. Auf meiner Seite über C++ GUIs steht das alles bzw. auch in den Links (z.B. das Fluid-Tutorial als Flashmovie, mußt du natürlich den Lautsprecher einschalten).

    Fast alle GUI Libs haben GUI Designer, die einem ermöglichen schnell etwas zusammen zu klicken. Die einen etwas schlechter, etwas besser, kostenlos oder gegen Geld. Wenn du meine Seite aufmerksam liest, wirst du das feststellen.



  • Hi, erstmal danke für die vielen antworten 😮
    es gibt also so einige Möglchkeiten für die GUI Programmierung, fragt sich, welche die beste ist? So wie es in diesem thread aussieht, ist das wohl eher ansichtssache. Aber als Anfänger weiss ich nun nicht, für welche ich mich nun entscheiden soll. Weil ich auch später im Beruf so programmieren will, welche GUI Lib wird denn am meisten in der professionellen Programmiererwelt gebraucht? ich hoffe mal hier arbeiten welche als Programmierer und können mir da helfen, denn diese GUI lib, oder auch die 2 meist verwendetsten libs, werde ich dann lernen.
    volkard, danke für den tip. ich werde natürlich weiter in c++ lernen, jetzt muss ich halt ein buch für fortgeschrittene finden. danke für die links zu effektiv c++, werde da mal nachsehen.



  • Beginner13 schrieb:

    Hi, erstmal danke für die vielen antworten 😮
    es gibt also so einige Möglchkeiten für die GUI Programmierung, fragt sich, welche die beste ist? So wie es in diesem thread aussieht, ist das wohl eher ansichtssache. Aber als Anfänger weiss ich nun nicht, für welche ich mich nun entscheiden soll. Weil ich auch später im Beruf so programmieren will, welche GUI Lib wird denn am meisten in der professionellen Programmiererwelt gebraucht? ich hoffe mal hier arbeiten welche als Programmierer und können mir da helfen, denn diese GUI lib, oder auch die 2 meist verwendetsten libs, werde ich dann lernen.

    Falscher Ansatz! Es gibt weder _die_ GUI lib, noch kannst du damit rechnen, dass du in deinem Leben mit nur ein oder zwei Libraries auskommst.

    Viele Firmen haben eigene GUI-Entwicklungen oder sogar noch schlimmer, sie haben für jedes Projekt eine eigene GUI-Library.

    Wichtig ist hier eben, dass du die Probleme verstehen lernst und das du gute Programmier-Basics hast, dann kannst du innerhalb kürzester Zeit den Umgang mit einer GUI-Library erlernen. Mag diese Library noch so grausam designt und programmiert sein.

    Daher ist es ja wichtig sich die Basics zu erarbeiten. Die meisten Leute scheitern an GUI-Libs, weil ihnen die Basics fehlen.

    volkard, danke für den tip. ich werde natürlich weiter in c++ lernen, jetzt muss ich halt ein buch für fortgeschrittene finden. danke für die links zu effektiv c++, werde da mal nachsehen.

    Effektiv C++ und Exceptional C++ sollten dir helfen. Aber wie gesagt, nicht nur lesen. Programmieren!


Anmelden zum Antworten