5 Stimmen

Unterschiede bei der Erstellung von UI zwischen Web- und Desktop-Anwendungen

Die Benutzeroberfläche für Webanwendungen ist anders aufgebaut als die Benutzeroberfläche von Desktopanwendungen. Ich bin daran interessiert zu erfahren, was die Hauptunterschiede beim Aufbau der Benutzeroberfläche zwischen den beiden Anwendungsarten in den folgenden Bereichen sind:

1. verwendete Technologie

2. verwendete Techniken

3. verwendete Steuerelemente

4. Bildschirm ändert Verhalten

0 Stimmen

Interessante Lektüre hier: Webanwendungen vs. MS Windows-Anwendungen .

7voto

epochwolf Punkte 11900

Eine wichtige Sache, die man beim Webdesign nicht ignorieren darf, ist die Zurück-Taste . Tausende von Menschen haben versucht, sie zu deaktivieren oder zu umgehen. Versuchen Sie nicht, die Zurück-Schaltfläche zu umgehen! Machen Sie stattdessen die Zurück-Schaltfläche zum Bestandteil Ihres Designs.

6voto

Groxx Punkte 2469

Ein großer Designunterschied, den viele Menschen übersehen, ist die Struktur des Fensters selbst.

  • Eine Desktop-Anwendung wird in der Regel für eine Mindestauflösung in Höhe und Breite (oft 800*600) erstellt und versucht so gut wie möglich, alle relevanten Informationen in einer kleineren Größe unterzubringen, da Bildlaufleisten für nicht tabellarische Daten oder Listen im Allgemeinen eine schlechte Praxis sind. Wird mehr Platz benötigt, werden die Informationen in der Regel entweder in neue Fenster oder Unterfenster/Registerkarten aufgeteilt.
  • Eine Webanwendung hingegen hat im Wesentlichen eine unendliche vertikale Höhe, da die meisten Menschen es gewohnt sind, in ihrem Webbrowser zu scrollen. Die Bildlaufleiste ist nicht länger eine schlechte Sache; tatsächlich ist die Verwendung einer Bildlaufleiste überall wo die Hauptform verwendet werden könnte, wird in der Regel als schlechter Stil angesehen (mit einigen Ausnahmen natürlich). Informationen werden in der Regel in einem einzigen "Fenster" dargestellt, da eine Aufteilung sowohl das Laden einzelner Seiten als auch das erneute Laden identischer Daten (Stile, Menüs usw.) erfordern würde (ja, es gibt einen Cache, aber der ist nicht so schnell wie das Laden einer einzelnen Seite). Mehrere Ladevorgänge sind immer langsamer und verursachen ein Gefühl der Diskontinuität. Manchmal sind sie unausweichlich, aber Sie sollten Ihre Anwendung fast nie auf die sichtbare Größe des Browserfensters beschränken.
  • Die meisten Menschen benutzen einen Webbrowser zum Lesen. Nachrichten, Blogs, Kommentare auf Youtube, usw. Wenn Sie eine Web-App entwickeln, sollte sie diese Gewohnheit widerspiegeln, weil Sie sonst die Gehirne der Leute durch wild unterschiedliche Layouts verwirren, wenn sie zwischen Webseiten und Ihrer App wechseln (und Sie wissen, dass einige das tun werden). Es mag den Anschein erwecken, als würden Sie nur die großen Player kopieren, aber Konsistenz ist viel wichtiger, als es auf den ersten Blick scheint.
  • Textspalten sollten nicht übermäßig breit sein, denn je breiter eine Zeile wird, desto schwieriger ist es, zur nächsten Zeile zu springen, um weiterzulesen. Halten Sie sich an etwas, das den Büchern ähnelt; sie wurden für Jahrhunderte . Dies ist einer der Gründe, warum viele Webseiten eine feste Breite haben und Spalten gegenüber Zeilen bevorzugen.
  • Weißer Raum ist wichtig . Sie hilft, Informationen zu trennen und leichter zu verarbeiten. Stellen Sie sich vor, Sie lesen diese Antwort ohne Leerzeichen, Zeilenumbrüche oder Aufzählungszeichen.

Was mich am meisten stört, sind Textlinks, die häufige Aktionen ausführen. Es sei denn, man "verlinkt" tatsächlich auf eine separate Seite, es nicht wie ein Link aussehen lassen . Machen Sie daraus ein Steuerelement, ein Bild oder eine 何か . Links sind für Umzug in Websites, Schaltflächen tun Dinge. Die meisten Menschen ignorieren aktiv blauen, unterstrichenen Text, wenn sie etwas tun wollen, weil sie an eine Schaltfläche "Formular abschicken" oder etwas Ähnliches gewöhnt sind. Links sind außerdem recht klein und bei wiederholten Aktionen vergleichsweise schwer anzuklicken, und für mich riechen unvollständiges Design/Codierung bei extensiver Nutzung.

Viele Webanwendungen, die ich gesehen habe und die in der Regel gescheitert sind, versuchen, eine Desktop-Anwendung in einem Browserfenster zu duplizieren... was bedeutet, dass man einen runden Pflock in ein eckiges Loch steckt. Es kann getan werden, aber sie sind no sind nicht dasselbe und sollten unter fast keinen Umständen als solche behandelt werden.
Eine partielle Ausnahme ist, wenn die Webanwendung die Funktion einer Desktop-Anwendung (z. B. Google Docs) dupliziert. Dann sollte das Layout in den meisten Fällen immer noch eher einer Webseite als einer App entsprechen, aber die Steuerelemente sollten wahrscheinlich eine Desktop-Anwendung imitieren, um den Benutzern den Übergang zu erleichtern.

Die meisten Menschen verwenden Programme auf ihrem Desktop, um tun etwas. Die meisten Menschen benutzen ihren Browser, um siehe etwas (lesen, sehen, etc.). Natürlich gibt es Überschneidungen, aber denken Sie an die täglichen Gewohnheiten der meisten Menschen, und denken Sie daran, dass andere Menschen werden etwas benutzen, das Sie entworfen haben; es gibt nicht nur Sie (und Ihre Klone) da draußen.

Und obwohl sie andere wiederholt, ist die Zurück-Taste kritisch . Wenn Sie es kaputt machen, werden die Benutzer Sie kaputt machen wollen. Überschreiben der Rechtsklick-Menü oder das Verhalten ist auch in der Regel eine schlechte Idee, und meist ärgert Benutzer (und einige werden aktiv verhindern, dass Javascript, das dies tut, weil es sie so sehr ärgert (mich eingeschlossen).

3voto

Michael Borgwardt Punkte 334642

Der größte Unterschied besteht IMO darin, dass Sie bei einer Webanwendung nur sehr begrenzten Einfluss auf das Mausverhalten haben und dass das, was Sie haben, dem etablierten Desktop-Verhalten zuwiderläuft. Zum Beispiel:

  • Bei Desktop-Anwendungen führt ein Klick mit der rechten Maustaste fast immer dazu, dass ein Kontextmenü angezeigt wird. In einer Webanwendung auch, aber es ist das Kontextmenü des Browsers, das Sie nicht ändern können (und sollten).
  • In Desktop-Anwendungen wählt ein einfacher Klick etwas aus, ein Doppelklick führt etwas aus; in einer Webanwendung "führt" ein einfacher Klick bereits einen Link aus, und Doppelklicks gibt es nicht.

0 Stimmen

Sie können den Rechtsklick des Browsers außer Kraft setzen. Google Docs macht das ganz gut, erlaubt aber Shift + Rechtsklick, um das Browsermenü aufzurufen. Das macht das Überschreiben einigermaßen akzeptabel. Aber soweit ich weiß, ist Google Docs die einzige Website, die eine Möglichkeit bietet, das Kontextmenü des Browsers aufzurufen

2voto

James Anderson Punkte 26827

Desktop-Anwendungen werden in der Regel nach dem Muster "bei diesem Ereignis wird dieser Codeblock ausgeführt" geschrieben. Webanwendungen sind eher im Blockmodus geschrieben: "Server formatiert eine ganze Seite, Benutzer füllt ein Formular aus und drückt eine Schaltfläche, Server verarbeitet das gesamte Formular, Server formatiert eine weitere ganze Seite".

AJAX verwirrt das Wasser ein wenig, da der Browser einige Daten im Hintergrund anfordern und Teile der Seite aktualisieren kann. Das Grundprinzip bleibt jedoch bestehen.

Es ist einfacher, die Desktop-GUI auf bestimmte Mausbewegungen und -klicks usw. reagieren zu lassen. Bei Webanwendungen hingegen besteht die einzige Kommunikation mit dem Server in "get"- und "post"-Anfragen, so dass die Benutzeroberfläche viel komplizierter ist.

Webbasierte Anwendungen sind viel portabler, und auf dem Client ist lediglich ein kompatibler Browser erforderlich. Diese Vorteile bei der Systemverwaltung sind der Grund, warum sich die Menschen mit einer etwas schlechteren grafischen Benutzeroberfläche abfinden.

0 Stimmen

Auch wenn die Antwort aus dem Jahr 2008 stammt, ist der größte Nachteil von Desktop-Anwendungen der von Ihnen erwähnte: "Desktop-Anwendungen werden in der Regel nach dem Prinzip "bei diesem Ereignis wird dieser Codeblock ausgeführt" geschrieben. Das führt dazu, dass die Geschäftslogik auf dem Client landet.

1voto

Patrick Desjardins Punkte 130529

Der Hauptunterschied besteht darin, dass das Visual auf einem Desktop sehr schnell zu erstellen ist und keine Notwendigkeit, mit verschiedenen Browsern zu testen Ich fand es immer reizvoll, einen Desktop zu bauen, weil der visuelle Teil der Software einfach an den Controller (der das Modell enthält) gebunden wird und schon kann es losgehen!

Ein weiterer Unterschied ist die Ladegeschwindigkeit. Sie müssen kein Javascript oder CSS für die Anzeige übertragen... Sie müssen nicht zippen oder ähnliches, denn es ist immer im Quellcode auf dem Desktop verfügbar.

Außerdem können Sie den Arbeitsspeicher des Computers für schwierige Aufgaben nutzen, was den Bedarf an mehreren Computern auf der Serviceseite verringert, da Sie alle diese Computer für große Prozesse nutzen können (falls erforderlich).

Auf der anderen Seite ist die Bereitstellung schwieriger (Sie haben ClickOnce und automatische Tools, die Ihnen helfen können), aber es ist nie so transparent wie das Web. Daher müssen Sie die Veröffentlichung besser planen, da Sie keine "Hotfixes" durchführen können.

1 Stimmen

Sie müssen vielleicht nicht mit verschiedenen Browsern testen, aber Sie haben immer noch eine Reihe von Betriebssystemen, auf denen Sie Desktop-Anwendungen testen können. XP, Vista, 32 Bit, 64 Bit und alle mit unterschiedlichen Sprachen.

0 Stimmen

Das Testen von verschiedenen Browsern könnte nicht einfacher sein. Unter Windows können Sie IE, Firefox und Chrome testen und haben damit die meisten Browser abgedeckt, die es gibt. Chrome verwendet die gleiche Engine (Webkit) wie Safari.

0 Stimmen

Aus Erfahrung sage ich Ihnen, dass das Testen für Browser viel mehr Schmerz ist... Ihre Webanwendung muss noch in allen OS zu getestet werden. Und 32bits zu 64bits ist ein 99% nur 1 Einstellung in der Kompilierung zu ändern... keine große Sache.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X