Vorteile von Nicht-Web-Applikationen?
-
Dravere schrieb:
byto schrieb:
Ihr habt Euch diese Komponenten selbst zusammengebaut. Oben genanntes Framework bietet das Out of the Box. Das ist der Unterschied. Und genau auf den wollte ich hinaus.
Was soll das für einen Unterschied sein? Es gibt überall GUI Bibliotheken, welche spezielle zusammengebaute Komponenten Out of the Box anbieten. Das ist doch keine Innovation oder was neues, sondern da hat sich einfach der Entwickler der Bibliothek ein wenig Zeit genommen, noch ein paar alltägliche zusätzliche Komponenten zusammenzusetzen.
Ich habe GWT als innovativ bezeichnet, nicht diese Lib.
Artchi schrieb:
byto schrieb:
Gegenfrage, wie realisiert ihr denn den Zugang auf Eure Host DB2? Wie sichert ihr die Zugangsdaten ohne Server?
Die Frage habe ich nicht verstanden. Kannst du das genauer formulieren?
Wir realisiert Ihr in Eurem Richclient den Zugriff auf die Datenbank? Und wie stellt ihr sicher, dass die Zugangsdaten für die DB sicher sind?
-
byto schrieb:
Wir realisiert Ihr in Eurem Richclient den Zugriff auf die Datenbank? Und wie stellt ihr sicher, dass die Zugangsdaten für die DB sicher sind?
Du weißt schon was ein Text-Terminal ist? Die Daten kommen mit der Maskenbeschreibung. Ok, wir haben in dem konkreten Fall schon die Maskenbeschreibung und Daten in mehrere XML-Responses getrennt, auch die dynamischen Listen kommen on-demand, aber es ist die selbe Session. Die Maskenbeschreibung kommt nur einmal zu Anfang, die Daten kommen getrennt immer wieder, je nach Aktion des Users.
Es wird also keine Connection vom Client direkt zur DB aufgebaut. Das macht alles der IBM-Mainframe und die COBOL-Programme die da drauf laufen. Die Connection zum Richclient ist aber verschlüsselt, obwohl alles im Intranet läuft.
Im Grunde genommen ist es wie eine WebApp mit Ajax, für Terminal/Mainframes. Aber das habe ich schon an anderer Stelle gesagt.
-
general bacardi schrieb:
hustbaer schrieb:
byto schrieb:
Irgendwie verwunderts wenig, dass in einem C++ Forum eher Skepsis ggü. modernen Webtechnologien herrscht.
Das hat mit Skepsis weniger zu tun als mit Fakten.
Es ist Fakt dass C++ Programmierer skeptisch gegenüber Webtechnologien sind? Das kann ich nicht bestätigen
Nein.
Es ist Fakt, dass Web-Applikationen für grosse, komplizierte User-Interfaces nicht zu gebrauchen sind.
Anders gesagt: ich bin was diesen Punkt angeht nicht Skeptisch, ich *weiss* dass es nicht gescheit funktioniert.
-
hustbaer schrieb:
Nein.
Es ist Fakt, dass Web-Applikationen für grosse, komplizierte User-Interfaces nicht zu gebrauchen sind.Dann sieh dich mal im Internet um. Du hast wohl noch nicht lange Internet?
Ausserdem sollten User Interfaces nie kompliziert sein. EIn kompliziertes UserInterface ist immer ein schlechtes User Interface.hustbaer schrieb:
Anders gesagt: ich bin was diesen Punkt angeht nicht Skeptisch, ich *weiss* dass es nicht gescheit funktioniert.
Weil Du es selber noch nie hingekriegt hast
-
general bacardi schrieb:
hustbaer schrieb:
Nein.
Es ist Fakt, dass Web-Applikationen für grosse, komplizierte User-Interfaces nicht zu gebrauchen sind.Dann sieh dich mal im Internet um. Du hast wohl noch nicht lange Internet?
Ausserdem sollten User Interfaces nie kompliziert sein. EIn kompliziertes UserInterface ist immer ein schlechtes User Interface.
Weil Du es selber noch nie hingekriegt hastDas finde ich nicht! Ein User-Interface ist dann schlecht, wenn es unnötig kompliziert ist. Es ist schlecht, wenn es die Intuition des Users nicht unterstützt, wenn es zu langsam ist, Standard-Features nicht unterstützt usw. Aus der Tatsache, dass ein GUI kompliziert ist, kann man erstmal gar nichts schließen.
Web-GUIs lassen oft (meistens?) Dinge vermissen, die ich normalerweise sehr schätze. Etwa die Bedienung über Shortcuts, Drag & Drop oder ein Clipboard. Letztere beiden natürlich auch zwischen mehreren Applikationen. Wenn ich sowas brauche und nicht vorfinde, dann spreche ich von einem schlechten GUI.
Stefan.
-
Mal ein paar Zusatzinformationen zum Projekt:
- Mini-ERP-Programm für Firma mit rund 30 Mitarbeitern (die allerdings weltweit verstreut arbeiten)
- Eine zentrale Produktionsstätte (dort soll Material, etc. verwaltet werden)
- Die Außenmitarbeiter müssen vor allem Finanzdaten und andere Informationen (also auch eine Art Portal) überall weltweit abfragen können. Die agieren nämlich ziemlich autonom wissen aber oft gar nicht ob die Kapazität vorhanden ist und nicht jemand anderes zur selben Zeit auch gerade alles verplant.
- Einige Außenmitarbeiter beschäftigen sich mit Controlling und Überwachung sowie Koordination.
Jeder hat mindestens Windows XP (verschiedene Sprachen allerdings), jeder hat einen halbwegs modernen Browser, jeder hat auch ein .NET-Framework.
Bei Web-Applikationen fallen mir da spontan folgende Vorteile ein:
- Updates sind leicht gemacht, generell alles kann ich zentral verwalten
- Habe keine Komaptibilitätsprobleme oder sonstigen Bugs die nur einen Mitarbeiter in Sonstwo betreffen und mich viel und teuren Support kosten
- Die Mitarbeiter benötigen nicht einmal Ihr eigenes Notebook sondern können überall darauf zugreifen
- Konfiguration & Deployment sind natürlich auch ein Klacks gegenüber FatclientServer + DB ist sowieso zentral, die Kommunikation zwischen Browser und WebServer ist sicher auch billiger als zwischen Fatclient und Server
Nachteile:
- GUI
- Die ganze Rechenlast liegt ausnahmslos am Server
- Sicherheitsprobleme (sind bei Fatclients natürlich auch nicht ausgeschlossen, aber wenn erstmal jemand Zugriff auf den WebServer hat ists übel...)Mehr Vorschläge von euch in diese Richtung? Wie gut nun welches Framework im Gegensatz zu C++ ist, ist mir eigentlich egal
Die Sprache ist ohnehin C#
MfG SideWinder
-
Wenn du eh mit C# arbeitest, wieso kombinierst du nicht beides
EDIT:
Hab mal ein VideoCast von Microsoft gesehen, dass man DotNet-Anwenungen zentral deployen kann. Genauso wie Java Web Start Anwendung. Aber das ist schon etwas her. Mit Erkennung von neue Versionen und Differenzpatching.
-
Spontan sieht mir das sehr nach einer Web-Applikation aus. Allerdings:
- Könnte ich mir schon Kompatibilitätsprobleme vorstellen. Ist es nicht so, dass sich die Browser (etwa in Bezug auf JavaScript und CSS) erheblich unterscheiden? Ich bin definitiv kein Web-Entwickler, habe aber bei Kollegen schon öfter mitgekriegt, dass sie damit echte Probleme hatten.
- Kannst du Sicherheitsprobleme wirklich in den Griff kriegen? Ich denke da einerseits an Angriffe auf den Server (auch über deine Scripte). Andererseits aber auch an die Sicherheit der Daten, die an die Mitarbeiter ausgeliefert werden. Eine für's Controlling ausgelieferte Liste der Umsätze des letzten Jahres aus dem Browser rauszukrigen, stelle ich mir trivial vor.
- Ist es wirklich so erstrebenswert, dass Mitarbeiter von überall aus auf die Daten zugreifen können? Ich denke da an den Browser-Cache, die History und ähnliches. Und das in einem Internet-Cafe oder bei einem Kunden!
Dass die Kommunikation zwischen Client und Server bei Web-Applikationen billiger als bei Fat Clients ist, glaube ich nicht. Zumindest bei einer 3tier-Applikation überträgst du nur die wirklich benötigten Daten und die am besten komprimiert. Ein weiterer Vorteil einer solche Applikation könnte auch der bessere Schutz von DB-Zugriffen sein.
Dass die Rechenlast beim Server liegt, sehe ich nicht als Nachteil an. Da gehört sie doch auf jeden Fall hin.
Stefan.
-
Zeus schrieb:
EDIT:
Hab mal ein VideoCast von Microsoft gesehen, dass man DotNet-Anwenungen zentral deployen kann. Genauso wie Java Web Start Anwendung. Aber das ist schon etwas her. Mit Erkennung von neue Versionen und Differenzpatching.Das wäre ja sehr interessant, hast du den Webcsat noch?
MfG SideWinder
-
Yup habs wiedergefunden:
https://www.microsoft.com/germany/msdn/webcasts/library.aspx?id=118764814Windows Presentation Foundation (Teil 4-4) - Smart Client mit WPF gehalten von Dirk Primbs
ClickOnce Deployment
-
Also ein Fatclient ohne Server kommt imo nicht in Frage. Die DB Zugangsdaten würden auf dem Client liegen und wären somit nicht sicher.
Du solltest Dich also entscheiden zwischen Application-Server + Fatclient oder Application-Server + Webclient. Der Server bietet dabei ja durchaus noch weitere Vorteile. Du kannst z.B. Daten zentral cachen, um DB Abfragen (die ja häufig das Nadelöhr darstellen) einzusparen. Und Du kannst teure Operationen (solltest Du Dich für einen Fatclient entscheiden) auf den Server auslagern. Ausserdem kannst Du viel einfacher Jobs schedulen, also z.B. zu niedrigen Stoßzeiten irgendwelche Reports generieren usw.
Die Vor- und Nachteile hast Du ja schon gut zusammengefasst. Ich sehe bei Deinen Anforderungen allerdings keinen Grund, durch den sich ein Fatclient aufdrängen würde. Im Grunde wirds ja lediglich ne Datenschleuder werden (Daten eingeben, Daten ausgeben), die Paradedisziplin von Webclients.
-
Also ein Fatclient ohne Server kommt imo nicht in Frage. Die DB Zugangsdaten würden auf dem Client liegen und wären somit nicht sicher.
Klar, davon hat ja auch niemand gesprochen.
MfG SideWinder
-
general bacardi schrieb:
hustbaer schrieb:
Nein.
Es ist Fakt, dass Web-Applikationen für grosse, komplizierte User-Interfaces nicht zu gebrauchen sind.Dann sieh dich mal im Internet um. Du hast wohl noch nicht lange Internet?
Ausserdem sollten User Interfaces nie kompliziert sein. EIn kompliziertes UserInterface ist immer ein schlechtes User Interface.hustbaer schrieb:
Anders gesagt: ich bin was diesen Punkt angeht nicht Skeptisch, ich *weiss* dass es nicht gescheit funktioniert.
Weil Du es selber noch nie hingekriegt hast
Achherrjeh, ein Mister Schlau (tm).
Ja, natürlich, du hast Recht, und ich erst seit gestern Internet.
-
Nachtrag:
Twitter geht nach DoS-Angriff in die Knie. Dieser Beitrag war Ausloeser und keine Ahnung, ob es schon gesagt wurde. Webanwendungen sind anfaelliger gegenueber Stoerungen im allgemeinen. Das muss jetzt nicht zwingend eine boeswillige Attacke sein. Die Verteilung einzelner Daten ist wesentlich einfacher als eine Userinterfacekommunikation uber das Netzwerk. Wer oefters mit Linux arbeitet und remote GUI-Anwendungen ueber "ssh -X ..." kennt das vielleicht, dass man da schon eine ordentliche Leitung haben sollte.
-
knivil schrieb:
Die Verteilung einzelner Daten ist wesentlich einfacher als eine Userinterfacekommunikation uber das Netzwerk.
Es ist wesentlich einfacher, eine Webanwendung auf einem Server zu deployen als eine Clientanwendung auf tausend Clients zu installieren und sich ggf. noch mit clientspezifischen Problemen rumärgern zu müssen.
Ist aber im Grunde auch irrelevant und offtopic. Denn es wurde schon gesagt, dass hier Daten von einem zentralen Server bereit gestellt werden müssen. Es stellt sich also gar nicht die Frage, ob Webanwendung oder Offline-Client.
-
Und der Browser ist kein Client und muß nicht auf tausende PCs installiert/aktualisiert werden? Der bleibt statisch für 20 Jahre.
-
Willkommen im 21. Jahrhundert, wo ein Browser faktisch zur Standardinstallation einer Workstation gehört.
Natürlich gibts auch Browserunterschiede beim Implementieren von Webanwendungen. Aber es gibt längst leistungsfähige Libraries, die darüber abstrahieren. Die Entwicklung von Webanwendungen ist extrem technologie-getrieben und bei den Technologien gehts rasant vorwärts, offenbar wesentlich schneller als es die Köpfe vieler Forenuser hier erreicht.
-
[quote="byto"]
knivil schrieb:
Es ist wesentlich einfacher, eine Webanwendung auf einem Server zu deployen als eine Clientanwendung auf tausend Clients zu installieren..
klar, und wenn der server ausfällt können alle 1000 clients nix dagegen tun.
Artchi schrieb:
Und der Browser ist kein Client und muß nicht auf tausende PCs installiert/aktualisiert werden? Der bleibt statisch für 20 Jahre.
browser sind meistens schon dabei, wenn das OS installiert wird. ausserdem wollen viele ins internet um pornos zu gucken und so. allein dafür brauchen sie schon 'nen browser.
-
Ich habe "installiert/aktualisiert" geschrieben. Schön und gut wenn ein Browser mit dabei ist. Aber der muß auch aktualisiert werden, oder? Und eine Aktualisierung kann die selben Schwierigkeiten bereiten, wie eine Installation. Der Installations- und Update-Vorgang selbst ist doch nicht das Problem, es sind doch Inkompatibilttäten oder allgemein Bugs die im Browser auftreten können. Ich weiß jetzt nicht, wo ein Update unkritischer sein soll, als eine Installation?
Wo ist mit einem Browser Software "verschwunden"? Der Browser selbst ist ein Richclient.
-
Artchi schrieb:
Ich habe "installiert/aktualisiert" geschrieben. Schön und gut wenn ein Browser mit dabei ist. Aber der muß auch aktualisiert werden, oder?
Nö, wozu? Der Webanwendung ists grundsätzlich wurscht, solange die aktuellen Web Standards unterstützt werden.