c++ auch ohne GUI?!



  • cometi schrieb:

    Ich empfinde C++/GUI (z.B. MFC) als sehr schwer.
    Habs mal probiert aber bin nicht sehr weit gekommen.
    Das ist ja wie nochmal eine komplett neue Sprache.

    Dann hast du noch nie den C++Builder und die VCL benutzt.
    Damit ist eine GUI entwickeln wortwörtlich ein Kinderspiel.
    Leider kenne ich sonst nichts, was auch nur in die Nähe des C++Builders kommt.



  • Dann hast du noch nie den C++Builder und die VCL benutzt.
    Damit ist eine GUI entwickeln wortwörtlich ein Kinderspiel.

    Das ist es ja.
    Wenn ich z.B. eine kleine MFC-Dialoganwenung erstellen möchte, hat man in paar sek. das Hauptprogramm und braucht quasi nur noch seinen Code/Algorhytmus da irgendwie einbauen.

    Ich fühle mich dabei aber nicht gut, weil da sehr viel Code generiert wird, von dem ich noch nicht mal weiß, was er genau macht. Oder sollte ich es einfach so hinnehmen?!



  • Informationen ausgeben .. über Konsole [..] reicht das nicht? [..] Ich empfinde C++/GUI als sehr schwer [..] Ich fühle mich dabei aber nicht gut

    Also deine anfaengliche Argumentation vom (Un)Nutzen einer GUI hat nichts mit deinen tatsaechlichen Gruenden fuer deine Abneigung zu tun.



  • cometi schrieb:

    Ich empfinde C++/GUI (z.B. MFC) als sehr schwer.
    Habs mal probiert aber bin nicht sehr weit gekommen.
    Das ist ja wie nochmal eine komplett neue Sprache.

    Kurz gesagt: Du akzeptierst deine Inkompetenz nicht.



  • Naja ich hab den Einstieg in die MFC versucht und hes hat mir nicht ganz gefallen. Daraufhin hab ich überlegt ob ich zwingend überhaupt GUI brauche 🙂

    and by the way:
    Ist GUI mit Java eigentlich schweriger oder einfacher als c++?



  • cometi schrieb:

    Wenn ich z.B. eine kleine MFC-Dialoganwenung erstellen möchte, hat man in paar sek. das Hauptprogramm und braucht quasi nur noch seinen Code/Algorhytmus da irgendwie einbauen.

    Ich fühle mich dabei aber nicht gut, weil da sehr viel Code generiert wird, von dem ich noch nicht mal weiß, was er genau macht. Oder sollte ich es einfach so hinnehmen?!

    Verstehe nur Bahnhof!!
    Wenn Du ein "hallo world" als Einzeiler in C baust, dann steckt im Endergebnis eine Menge Code den Du vermutlich noch nie gesehen hast ( ich übrigens auch nicht ) und wohl auch nicht auf Anhieb verstehst.
    Ich habe egal ob Windows oder Linux immer auch eine Konsole am laufen, wiel manches ( aber wirklich nur manches ) in einer Konsole einfacher ist. Vieles andere ist mit einer Gui einfacher, und der unbedarfte Anwender kann mit einer Konsole schon garnichts anfangen.

    tschüß
    Troll.Soft



  • cometi schrieb:

    Naja ich hab den Einstieg in die MFC versucht und hes hat mir nicht ganz gefallen. Daraufhin hab ich überlegt ob ich zwingend überhaupt GUI brauche 🙂

    and by the way:
    Ist GUI mit Java eigentlich schweriger oder einfacher als c++?

    Es kommt aufs Framework an, welches du in C++ benutzt. Einfacher als MFC, aber schwieriger als z.B. mit Qt.

    Aber allein die Frage zeigt schon, dass du nicht genug Grundwissen in C++ hast um dich überhaupt mit der GUI Programmierung richtig zu befassen.



  • cometi schrieb:

    Hallo,
    muss man als "C++-Profi" zwingend auch mit GUI's umgehen können?

    Damit umgehen von Anwenderseite her sowieso.
    Damit umgehen = den Code zumindest grob annähernd verstehen solltest du, wenn du für ein Projekt arbeitest in dem eine GUI benutzt wird, die von anderen implementiert wird: eine kurze Einarbeitung in die für dich relevanten Bereiche des GUI-Frameworks sollte reichen.

    Ich weiß nicht, wofür ich GUI brauche?
    Wenn ich mir Informationen ausgeben lassen will, tue ich es über Konsole oder speicher es einfach in ner .txt gut ist.

    Für den Hausgebrauch als Hobby-Programmierer reicht das. Im professionellen Bereich wenn du ein GUI-fernes Modul betreust/entwickelst und dir dafür eine Schnittstelle für debug ein- ud Ausgaben bastelst, die du mit geeigneten Tools weiterverarbeitest reicht das auch, ist sogar meist besser als ne GUI. Für den Endanwender der alles schön auf einen Blick haben will und eine benutzerfreundliche Oberfläche braucht, reicht das nicht.

    Wenn du also nur für den Hausgebrauch und für die Übung entwickelst, brauchst du keine GUI. Größere Anwendungen ohne GUI wirst du aber in den meisten professionellen Bereichen kaum an den Mann bringen können.



  • Wenn du C++ mit einer GUI benutzen willst, dann nimm Borland bzw. Embarcadero RAD Studio, und nicht das furtchtbare MFC von Microsoft.

    Wenn du aber unbedingt Visual Studio benutzen willst und damit eine GUI machen willst, dann nimm als Sprache C# und als GUI entweder WinForms, oder noch besser WPF.



  • Wenn Du ein "hallo world" als Einzeiler in C baust, dann steckt im Endergebnis eine Menge Code den Du vermutlich noch nie gesehen hast ( ich übrigens auch nicht ) und wohl auch nicht auf Anhieb verstehst.

    Nagut was der Compiler/Linker nachher draus macht, ist mir im Prinzip egal.
    Aber wenn ich ein neues MFC-Projekt eröffne und er da schon 1000 Dateien, Codezeilen, Ressourcen anlegt, find ich es nicht so toll wenn ich das nicht verstehe.

    Gibt es sonst alternativ ein einfacheres (evtl. auch übersichtleres) GUI Framework? Wo ich nicht gleich 5000 Seite Quelltext bekomme, wenn ich nur mein Programm in eine Dialogbox stecke 😃

    Aber allein die Frage zeigt schon, dass du nicht genug Grundwissen in C++ hast um dich überhaupt mit der GUI Programmierung richtig zu befassen.

    Das muss du mir genauer erklären, warum eine Frage zur einer neuen Materie aussagt, dass ich die Grundbasic nicht behersche?



  • Cybertec schrieb:

    Wenn du C++ mit einer GUI benutzen willst, dann nimm Borland bzw. Embarcadero RAD Studio, und nicht das furtchtbare MFC von Microsoft.

    Oder QT, wxWidget, ultimate++... (und wie sie alle heißen).

    Ich bin weder ein Fan der MFC noch der VCL. Ersteres weil es imho eines der schlechtest umgesetzten UI-Frameworks ist. Letzteres weil es zu stark an einen Anbieter gebunden ist, schon in der Vergangenheit mal etwas fallen gelassen wurde, die Komponentenhersteller immer rarer werden [was auch an der Rückläufigen Verbreitung von C++ Builder/Delphi liegt] und zu guter Letzt weil es einige kleinere Inkompatibilitäten hat (Kommt nunmal als der Delphiwelt, und ist nicht vorrangig ein C++ Framework). Beispielsweise kann man sich nicht sicher sein das ein VCL-Typ der per konstanter Referenz Übergeben wird, nicht änderbar ist (TDateTime ist so ein Kandidat). Zudem sind mir Beide Frameworks zu sehr mit Zeigern überladen (Nichts gegen Zeiger, aber man kann es auch übertreiben).



  • cometi schrieb:

    Gibt es sonst alternativ ein einfacheres (evtl. auch übersichtleres) GUI Framework? Wo ich nicht gleich 5000 Seite Quelltext bekomme, wenn ich nur mein Programm in eine Dialogbox stecke 😃

    ja

    hier ist der Code zu einem Gui-hallo-world

    #include <QtCore>
    #include <QtGui>
    
    int main	( int Argc, char ** Argv ) 
    //######
    {
        QApplication	App(Argc, Argv);
    	QPushButton		Button("hallo world");
    	Button.show();
    	App.exec();
    }
    

    funktioniert perfekt.
    Einarbeitungszeit muß mitgebracht werden 🙂

    tschüß
    Troll.Soft



  • Also wenn ich mit Qt eine Anwendung entwickle, dann sind da nicht am Anfang gleich tausend Zeilen Code, sondern gar nix, wie mit normalem C++.

    Ich würde dir Qt empfehlen, da es sich auch gut für plattformunabhängige Anwendungen eignet.

    Gruß freeG



  • Die Antworten hören sich so an, als gäbe es nur Programme mit GUI. Natürlich sehen wir nur Programme mit GUI. Daher fällt es gar nicht auf, dass selbst auf dem heimischen PC jede Menge Programme im Hintergrund ohne GUI werkeln.

    Auch im professionellen Bereich, oder vielleicht sogar gerade im professionellen Bereich hat nur ein kleiner Teil der Programme eine GUI. Sei es eine Steuerung eines Videorecorders oder eine Datenbank oder irgendwelche Statistikauswertungen oder was auch immer. Eine GUI ist da in der Regel höchstesn ein Nebenprodukt. Und erst Recht irgendwelche Serverprogramme, wie Mailserver oder Nameserver oder oder oder.

    Und die GUI ist dazu noch eher die einfachere Seite. Da hat man es normalerweise nur mit einem Anwender zu tun und hat eine ganze CPU für sich alleine. Wenn aber irgendein Backend-System tausende Anwender hat, die irgendwelche Transaktionen anstossen, ist die Herausforderung groß.


Anmelden zum Antworten