Web GUI realisieren



  • randa schrieb:

    es scheint dass ich also mit Wt per

    WServer server(argv[0]);
    server.setServerConfiguration(argc, argv, WTHTTP_CONFIGURATION);
    [...]
    

    einen server aufstelle der dann im Browser angesprochen werden kann, äquivalent zu wenn ich zum Beispiel apache für php nutze und dann das dokument im Browser aufrufe?

    ich glaube das ist nicht ganz die vorgehensweise, schaut dir mal das minimale hello world beispiel an:
    http://www.webtoolkit.eu/wt/src/hello



  • Mechanics schrieb:

    Vergbiss bitte das echo in PHP. Da gibts auch Frameworks, z.B. Symfony oder Yii.

    ah, vielen Dank.

    hustbaer schrieb:

    Dafür gibt es eigene Frameworks.

    Was benutzen die denn um die Ui zu zeichnen?


  • Mod

    randa schrieb:

    hustbaer schrieb:

    Dafür gibt es eigene Frameworks.

    Was benutzen die denn um die Ui zu zeichnen?

    Die generieren entsprechendes HTML, normalerweise mit massivem Einsatz von CSS. Oft auch in Zusammenspiel mit eventuellen Fähigkeiten des Browsers, Vektorgrafiken darzustellen (SVG, HTML5, ...). Nützt dir diese Antwort etwas? Wohl kaum, denn du scheinst fast schon mit Absicht die falschen Fragen zu stellen. Warum fragst du nicht, wie diese Frameworks heißen? Willst du etwa wirklich selber nachprogrammieren, wofür andere hunderte oder tausende von Programmiererjahren gebraucht haben, um die verschiedensten Technologien halbwegs sauber unter einen Hut zu bekommen (aus Sicht des GUI-Programmierers), um damit eine halbwegs reaktive GUI erstellen zu können (aus Sicht des Anwenders)? Denkst du, es wäre damit getan, wie bei einer nicht-Web GUI ein paar GUI-Elemente zu definieren und mit Ereignissen zu verknüpfen? Wie soll das funktionieren? Dieses Abstraktionsniveau hast du nur, wenn du eben ein solches Web-GUI-Framework benutzt, weil die den ganzen komplizierten Kram (Wie kommt Rückmeldung vom Browser zum Server? Wie kommt Rückmeldung vom Server zum Browser? Wie erzeugt man die GUI? Wie erzeugt man sie effizient, ohne andauernd neu zu laden? Was, wenn der Browser ein IE 6 ist? Was, wenn der Browser in Wirklichkeit ein Webcrawler ist, der auf einem System mit 36 Bit großen Bytes, EBCDIC-Zeichensatz und mixed Endianess läuft?) weg kapseln. Selbst dann ist es immer noch sehr verschieden von klassischen UI-Frameworks wie Qt, einfach weil das Umfeld (Client-Server System) derart anders ist.

    All das wurde im Prinzip schon angedeutet in den anderen Antworten, besonders hustbaers, aber hier hast du es noch mal ausgeschrieben.



  • SeppJ schrieb:

    Willst du etwa wirklich selber nachprogrammieren, wofür andere hunderte oder tausende von Programmiererjahren gebraucht haben

    Statt hundert fragen zu fragen und Annahmen zu machen warte doch erstmal auf eine Antwort.

    Denkst du, es wäre damit getan, wie bei einer nicht-Web GUI ein paar GUI-Elemente zu definieren und mit Ereignissen zu verknüpfen

    exakt das erwarte ich. Irgendwer wird schon anbieten, nach Qt Modell mal eben ein paar Widgets zu platzieren und Events zu handhaben. Und wenn nicht dann wird es halt Wt, weil das dem Modell recht nahe kommt.

    Welche weiteren Fragen sich für mich überhaupt stellen ist erst klar wenn ich Framework kenne und was geschrieben habe und schon tiefer ins Projekt eingedrungen bin.

    Nützt dir diese Antwort etwas? Wohl kaum

    Selbstverständlich. Alle Kochen scheinbar nur mit Wasser, was im Notfall bedeutet ich kann es auch auf das Level runterbringen.



  • randa schrieb:

    Mir ist egal wie ich es realisieren kann, ich kann jedwede Sprache on the fly lernen, und mit jeder Bibliothek arbeiten.

    Endlich mal ein richtiger Held hier und nicht nur so Schlaffies.


  • Mod

    randa schrieb:

    SeppJ schrieb:

    Willst du etwa wirklich selber nachprogrammieren, wofür andere hunderte oder tausende von Programmiererjahren gebraucht haben

    Statt hundert fragen zu fragen und Annahmen zu machen warte doch erstmal auf eine Antwort.

    Die Frage, die du gestellt hast, macht nur Sinn, wenn du das wirklich vor hast:

    Nützt dir diese Antwort etwas? Wohl kaum

    Selbstverständlich. Alle Kochen scheinbar nur mit Wasser, was im Notfall bedeutet ich kann es auch auf das Level runterbringen.

    Also hatte ich Recht mit meiner Vermutung. Lass dich bloß nicht abhalten. Es sagt ja bloß jeder, dass du dir das viel zu einfach vorstellst. Die haben ja alle keine Ahnung.

    ~PS: Kennt ihr dieses seltsame Gefühl von Genugtuung, wenn man jemanden dabei zusieht, wie er, entgegen aller Warnungen, etwas gegen die Wand fährt?~



  • rapso schrieb:

    ich weiss nicht was daran so schlimm ist dass du dich daran so hochziehst.

    Hab ich nicht, ist vielleicht falsch rübergekommen. Das 🙄 bezog sich auf die ganze etwas schwammig und seltsam formulierte Frage und zusätzlich auf deine sehr spezifische Antwort, die nicht darauf einging, dass die Frage gar nicht so eindeutig war.



  • SeppJ schrieb:

    Warum fragst du nicht, wie diese Frameworks heißen?

    wenn du frameworks hast die besser sind als Wt und wie QT erlauben c++ applikationen zu schreiben die lediglich die UI in den browser schieben, waere ich dir sehr dankbar lieber SeppJ wenn du sie mir nennen wuerdest. Wt ist nicht opimal, aber was besseres, trotz einiges an suchen, hab ich bisher nicht gefunden.

    (btw. gibt es zZ eine zeitschrift, hab den namen vergessen, die einen ueberblick ueber c++ web frameworks bietet, aber ein wenig biased da es von einem entwickler von einem der frameworks ist und entsprechend kurzatmig werden die anderen frameworks zusammengefasst. findet man sicher am kiosk.)

    edit: https://cplusplusinweb.files.wordpress.com/2014/08/cover_entwickler_5_2014_edit.png



  • Mechanics schrieb:

    rapso schrieb:

    ich weiss nicht was daran so schlimm ist dass du dich daran so hochziehst.

    Hab ich nicht, ist vielleicht falsch rübergekommen. Das 🙄 bezog sich auf die ganze etwas schwammig und seltsam formulierte Frage und zusätzlich auf deine sehr spezifische Antwort, die nicht darauf einging, dass die Frage gar nicht so eindeutig war.

    hab zuviele trolle gesehen, deswegen antworte ich moeglichst stumpf positiv und so hilfreich es geht oder garnicht. ansonsten faehrt man weniger kompetente leute unnoetig an (und es hilft niemandem) oder gibt trollen eine genugtuung (wenn man das gegenteil moechte).



  • rapso schrieb:

    deswegen antworte ich moeglichst stumpf positiv und so hilfreich es geht oder garnicht. ansonsten faehrt man weniger kompetente leute unnoetig an (und es hilft niemandem) oder gibt trollen eine genugtuung (wenn man das gegenteil moechte).

    Gute Einstellung 👍
    Vielleicht schaffe ich es mal das zu übernehmen. Wenigstens meistens 🙂



  • rapso schrieb:

    SeppJ schrieb:

    Warum fragst du nicht, wie diese Frameworks heißen?

    wenn du frameworks hast die besser sind als Wt und wie QT erlauben c++ applikationen zu schreiben die lediglich die UI in den browser schieben, waere ich dir sehr dankbar lieber SeppJ wenn du sie mir nennen wuerdest. Wt ist nicht opimal, aber was besseres, trotz einiges an suchen, hab ich bisher nicht gefunden.

    (btw. gibt es zZ eine zeitschrift, hab den namen vergessen, die einen ueberblick ueber c++ web frameworks bietet, aber ein wenig biased da es von einem entwickler von einem der frameworks ist und entsprechend kurzatmig werden die anderen frameworks zusammengefasst. findet man sicher am kiosk.)

    Die Zeitschrift heisst Entwicklermagazin (Ausgabe 5.14) und das Framework, welches so biased dargestellt wird ist Tntnet. Das ist auch eine Möglichkeit, Webapplikationen zu entwickeln. Und meines erachtens die beste 😃 . Aber meine Meinung ist natürlich extrem biased 😉 .



  • hab es auch gerade ergooglet und meinen oberen poste editiert gehabt.

    ich finde die eroerterungen zu eurem framework ja auch gut, es ist nur schade dass die meisten anderen mit einem absatz abgeklatscht werden. z.B. Wt, was doch recht gut ist und wo in dem absatz eigentlich nichts negatives zu steht wird hat nichtmal ein hello-world listing bekommen, dabei ist es (IMHO) das beste framework wenn man UI lastige dinge machen moechte. tntnet scheint performanter und sicherer zu sein, aber sowas wird mangels gegenueberstellung garnicht deutlich im artikel. als ich die zeitschrift kaufte hatte ich nur mal die erste seite angelesen und gehofft gehabt das der artikel qualitativ der gleichen spur bis zum ende folgt.



  • An tntnet hab' ich auch gedacht.
    Aber passt das auf die Frage hier? Ich kenn' das Ding nicht wirklich - kann man damit so ähnlich arbeiten wie mit klassischen Desktop GUI Frameworks?

    Wobei ... ich kenne sowieso kein Web GUI Framework mit dem man wie mit klassischen Desktop GUI Frameworks arbeiten könnte, das nicht zugleich auch ziemlich ... schlecht ist. Also speziell: langsam.



  • Mein Traum ist es auch, eine Desktop-Anwendung ins Web zu bringen, so dass man das UI nicht nachbauen muss, sondern es exakt gleich ist.

    Ich denke, die Lösung ist sowas wie RDP. Mag nach Overkill klingen, aber da kann man sicher einiges optimieren, und heutzutage könnte sowas schon ziemlich rund laufen.
    Riesen Vorteil wäre eben das Wiederverwenden des UI-Core.
    Man müsste auch nicht unbedingt für jeden Webuser eine Anwendung starten, sondern könnte in einer einzigen mehrere IO-Streams (Maus/Tastatur - Grafik) verarbeiten.



  • hustbaer schrieb:

    An tntnet hab' ich auch gedacht.
    Aber passt das auf die Frage hier? Ich kenn' das Ding nicht wirklich - kann man damit so ähnlich arbeiten wie mit klassischen Desktop GUI Frameworks?

    Nein, nicht wirklich. Man macht halt eine klassische Webapplikation. Aus der Fragestellung geht nicht wirklich hervor, was denn wirklich gewollt ist. Daraus geht auch eher hervor, dass der Fragesteller sich nicht gut auskennt, was schon fast ein K.O.-Kriterium für Tntnet und für C++ im allgemeinen gilt. Man sollte nicht C++ programmieren, wenn man nicht weiß wie es sich von PHP unterscheidet.

    Mein Kommentar zielte zum einen auf den Hinweis auf den Artikel und zum anderen wollte ich gerne mal Tntnet explizit erwähnen, da es eventuell doch als Kandidat in Frage kommt.

    Um den Bogen noch ein wenig weiter zu spannen und auf das vorige Posting zu antworten sollte noch Java mit Webstart erwähnt werden. Da kann man echte Java-GUI-Applikationen aus dem Browser starten. Nicht dass ich ein Freund von Java wäre - eher das Gegenteil - aber manchmal ist es doch die richtige Lösung.



  • OK, danke für die Info. War keine Kritik. Wollte nur nachfragen, weil ich wissen wollte ob ich das tntnet Projekt falsch eingeschätzt habe oder nicht ganz 🙂



  • Einwurf: WT sieht mir ja sehr stark nach der Ummünzung von Desktop-UI-Patterns auf das Web aus (ganz ala ASP.NET WebForms). Davon kann man nach 10 Jahren Erfahrung der Industrie nur abraten. Alle modernen Web-Frameworks gehen in Richtung MVC und größerer HTTP-Nähe.

    MfG SideWinder



  • Nach (zugegebenermaßen nur 5min reinsehen) scheint tntnet auch noch einen sehr alten Ansatz zu verfolgen der sehr stark an die Scriptlet-Zeiten erinnert. Aber vielleicht unterstützt es auch "more advanced"-Konzepte...

    MfG SideWinder



  • welches web framework schlaegst du also vor?



  • Das kommt wohl stark auf die tatsächlichen Anforderungen an. Sucht der Thread-Ersteller eher nach einem CMS? PHP-basiert oder hat er einen Application-Server zur Verfügung? Vorgegebene Technologie-Stacks? Mobile-Anforderungen?

    Eine simple Bootstrap-Seite mit ein paar PHP-Backends?
    AngularJS mit einer lightweight REST-Server-Komponente?
    ASP.NET MVC mit einer UI-Komponenten-Bilbiothek wie Kendo und Bootstrap?
    Heavy Java Spring MVC?

    Aber Templating ala "<% if(condition) %> some html <% else %>" some other html ist doch schon seit 10 Jahren veraltet?!

    MfG SideWinder


Anmelden zum Antworten