Come mai il processo di progettazione è così diverso per Web Design e GUI Design?

6

Ho avuto l'opportunità di sviluppare applicazioni in diverse nicchie:
server back-end, client desktop e recentemente un sito Web di piccole dimensioni.

Una volta assecondato nel design del sito Web che sto chiedendo a me stesso e a te come mai il processo di progettazione dell'interfaccia utente è così diverso? Puoi indicare le differenze e perché hanno avuto origine?

Una volta, l'HTML era per marcare il testo e la GUI del desktop era il front-end per fare il vero lavoro, ma oggi, perché il processo di sviluppo della GUI è ancora così diverso?

Ecco alcuni per iniziare:

Desktop: Uso del layout esplicito . (es: StackPanel in WPF, BorderLayout in Swing)
Web: Layout è un set di proprietà CSS (ad esempio: height / width, margin / padding, float, display ..) che vengono assegnate a ciascun elemento del tipo di contenitore.

Desktop: Isolamento dei componenti della GUI alle classi OO, riutilizzo facile.
Web: I componenti non vengono riutilizzati in html level , possono essere riutilizzati nella generazione dinamica html lato server. Solo gli stili CSS possono essere riutilizzati.

Puoi nominarne altri? e perché? Perché non possono essere simili?

Nota a margine: ho una certa esperienza con GWT, crea un'applicazione client che gira nel browser, ma perché non posso creare una pagina web (come una pagina di blog) con i metodi e gli strumenti di progettazione dell'interfaccia utente desktop?

    
posta Paul 10.12.2011 - 21:07
fonte

2 risposte

6

Sfondo storico diverso che ora sta unificando

Devo dire che la ragione è il background storico. Le pagine Web erano semplici documenti di testo all'inizio, con moduli. Poi sempre più funzionalità sono state aggiunte con lo scripting (JavaScript) e la separazione di semantica (HTML) e design (CSS).

Le applicazioni GUI sono sempre state le applicazioni con "funzionalità" come priorità più alta rispetto alle pagine con informazioni. Quindi i programmi della GUI hanno ottenuto colori e più elementi di design per migliorare l'usabilità e ora le applicazioni web.

Le applicazioni di progettazione Web e GUI avevano diversi punti di forza che ora si stanno unificando in applicazioni web .

Web design:

  1. Pagine con informazioni (mancanza di funzionalità programmatica)
  2. Aggiunta di script e separazione di elementi semantici (HTML) e design (CSS)
  3. Applicazioni Web (HTML5 con più elementi del modulo, elementi canvas e socket Web) (affiancati a pagine con informazioni)

Progettazione della GUI:

  1. Applicazioni in bianco e nero
  2. Colori e altri elementi di design aggiunti
  3. Applicazioni Web (HTML5) con implementazione più semplice (nessuna installazione) in un mondo in rete.

Quadri dell'interfaccia utente di oggi

Oggi con WPF, Android, JavaFX il layout è simile a quello dei file HTML con un documento XML. File CSS o simili possono essere usati per lo styling. Click-Once e Java Webstart possono essere utilizzati per la distribuzione.

Allo stesso tempo, le applicazioni web utilizzano JavaScript non intrusivo per mantenere il documento HTML pulito dal codice di programmazione. E altre funzionalità disponibili solo nel mondo della GUI sono state introdotte sul Web con HTML5.

Quindi il processo di progettazione una volta era molto diverso, ma ora sta diventando sempre più simile. Microsoft ha provato con ASP.NET per creare siti Web nello stesso modo in cui le applicazioni GUI sono state eseguite storicamente. E con WPF e Silverlight hanno provato di nuovo, a fare applicazioni Web e applicazioni GUI allo stesso modo e hanno utilizzato lo stesso programma (Expression Blend) per entrambi i design proces .

Adobe Air, Adobe Flex ha anche provato ad avere lo stesso processo di progettazione. E ora alcuni framework per smartphone cercano di fare app per smartphone allo stesso modo delle applicazioni web, vedi Titanium e PhoneGap.

Alla fine, la ragione per cui penso che le applicazioni web vinceranno, è che quasi tutte le applicazioni interessanti sono applicazioni di rete (client-server) e Il codice mobile è il modo più semplice per eseguire e distribuire applicazioni di rete e allo stesso tempo essere Cross-platform .

    
risposta data 10.12.2011 - 21:43
fonte
2

L'HTML è iniziato come un modo per presentare i documenti. La prima rete non era altro che un grande schedario con una tonnellata di riferimenti (collegamenti ipertestuali). Sono stati aggiunti dati graduali e interattività, ma la filosofia di base rimane quella del documento. OTTIENI un documento o un elenco di documenti in una cartella, il POST si modifica ad esso, lo ELIMI se non ne hai bisogno e Metti un nuovo documento in una cartella. Ecco di cosa parlano le API RESTful: il documento È l'app. Il modello è uno di incapsulamento di dati in documenti.

Le piattaforme desktop, al contrario, hanno una filosofia incentrata sull'applicazione. Al cuore non è il documento, ma il comportamento. L'app carica i documenti, li elabora e li respinge. L'app non è il documento. L'attenzione si concentra sul comportamento che opera sul documento. I fornitori di sistemi operativi hanno fornito API che ti incoraggiano a creare app con widget standardizzati. Poiché il modello riguarda app e widget, la filosofia è diventata incapsulamento del comportamento.

La differenza di filosofia a questo punto è un artefatto della storia, trincerato dall'inerzia. Né la filosofia è più giusta in generale, la verità è da qualche parte nel mezzo. Penso che il web abbia ancora molto da imparare dalle app desktop e viceversa. Le app Web hanno ancora una pessima interattività, mentre le app desktop non ti consentono di pensare prima ai documenti.

    
risposta data 10.12.2011 - 23:42
fonte

Leggi altre domande sui tag