2010-09-11 14 views
7

Ultimamente ho lavorato molto con le app Web, principalmente con le interfacce web javascript e json-rich. Devo dire che sono sempre impressionato da ciò che posso ottenere attraverso queste tecnologie.la linea sottile tra applicazioni Web e app desktop

Sempre di più, mi chiedo se avrei preferito utilizzare una GUI classica per iniziare (se fosse C#/VB.Net + WinForms o C/C++ + GTK/QT o Java o altro) . Tuttavia, sono stato in grado di realizzare tutto ciò che volevo in termini di interfaccia utente con tecnologia web.

E anche se sento di avere tutto ciò di cui ho bisogno, sempre più cose continuano ad arrivare (e continueranno ad arrivare per sempre), come HTML5, nuove funzionalità javascript e probabilmente ancora più cose.

Così, come applicazioni web diventano ancora di più e più in grado, vi chiedo:

  1. Come sottile è il confine tra applicazioni web e applicazioni desktop come d'ora?
  2. Qual è il futuro di questa linea? Quanto saranno capaci le app web in un lontano futuro? In questo senso, c'è una definizione di cosa dovrebbero essere le web app o la miglioreranno sempre di più?

Mi piacerebbe sapere cosa W3 ha da dire in proposito, anche se non l'ho ancora esaminato.

+0

Spero non ti dispiaccia la modifica delle 'applicazioni 'reali'' ... applicazioni web sono molto applicazioni reali. La distinzione che stai facendo qui è app web vs desktop. –

+0

per niente, hai appena trovato la parola che stavo cercando :) –

risposta

0

A parte alcuni problemi dell'interfaccia utente, le app Web sono app reali.

Qual è il futuro? Vorrei avere una sfera di cristallo ...

Tuttavia, rischierei di indovinare che la tendenza andrà avanti e il web accadrà la maggior parte se non tutte le applicazioni desktop.

0

Entrambi hanno ancora il loro significato. Le applicazioni web copriranno le applicazioni globali connesse, le applicazioni esistenti perché c'è il web. Diventano davvero più importanti di giorno in giorno o il costruttore ci fa pensare che siano importanti.

GUI sarà ancora lì perché per molte persone che non hanno molte competenze informatiche è ancora più semplice da utilizzare e capire. E ci sono applicazioni GUI davvero molto complesse che forse non entreranno mai nel web (CAD per esempio). La loro complessità sarà sempre di fronte al progresso dello sviluppo web. Non puoi prenderli.

Quindi credo che questa linea sia notevole e sarà lì per molto tempo. Non tutti entreranno nel web.

+0

concordato. Le app ad alta intensità di risorse che fanno un uso intenso di specifiche hardware (ad esempio grafica 3D) non saranno sostituite da app web. Che dire di "semplici" click/hover/trascina le interfacce utente guidate dai dati? –

3

In realtà abbiamo semplicemente chiuso il cerchio nel mondo informatico. Il browser web di oggi è semplicemente il terminale a schermo verde di 30 e 40 anni fa.

Un tempo si comprava del tempo sul computer di un'università per eseguire il programma e quindi si pagava il tempo necessario per l'elaborazione e l'esecuzione del programma. Questo è stato inefficiente dal punto di vista dell'utente finale poiché è stato eseguito in un processo batch e in coda in modo che i risultati avrebbero dovuto attendere fino al giorno successivo. Dal punto di vista dell'università, sebbene avessero più potere di calcolo di quello che sapevano con che fare, per cui coltivarlo aveva senso e dare un buon flusso di entrate.

Flash in avanti di alcuni anni ei desktop hanno iniziato a essere potenti se non più potenti dei computer dell'università e i giorni di elaborazione in batch e in coda sono scomparsi. Ma le applicazioni desktop centric soffrono di un unico difetto fondamentale, le esigenze multiutente.Se più di un utente ha bisogno di utilizzare l'applicazione allo stesso tempo, è necessario un server nel mix per gestire le esigenze dei dati multi sessione.

L'applicazione client è utile per fare cose come la convalida dei dati, ma più spesso è il client, maggiore è il rischio che si corrano con versioni diverse del client che popolano i dati sul server errati.

La soluzione, il client "web". Usare il termine web è in realtà sbagliato nella mia opinione personale. Il client html/browser rimuove i problemi riscontrati con più versioni di un client desktop poiché tutti gli utenti utilizzano sempre la stessa versione. Sono finiti i tempi di distribuzione di un aggiornamento su migliaia di desktop. Il client basato su browser richiede semplicemente l'aggiornamento sul lato server e tutti gli utenti ottengono immediatamente le nuove funzionalità.

0

Avendo appena fatto la scelta di utilizzare un "web" API o Desktop API ecco i differenziatori più significativi che vedo in questo momento:

  • supporto di funzioni native
    • Ad esempio su iPhone: accesso diretto alle API di basso livello
    • Con l'attuale velocità di sviluppo del browser ci dovrebbe essere presto
  • Offline flussi di lavoro
    • Primi passi fatti qui con la modalità offline in HTML5
  • supporto API per "desktop di interfacce utente" (flessibile, configurabile, veloce)
    • Biblioteche quali ExtJS non ci sono ancora, ma chiudi
    • Con WebGL, Canvas e funzionalità CSS sempre più potenti è diventato molto più facile creare potenti interfacce utente

Tutto sommato c'è ancora un po 'di lavoro da fare, ma credo che un paio di anni da oggi non ci sarà alcuna differenza tra le applicazioni web e desktop, alcuni di loro lavorare non in linea, un po' non lo faranno.

Microsoft ha avuto questa visione con .hta molto tempo fa, in quel momento non era abbastanza potente. Google sta continuando ora con Chrome.

0

Le app Web si avvicinano alle app Desktop con il passare del tempo. La ragione di questo è i requisiti. Sempre più persone si stanno collegando a Internet e stanno dando tempo o sprecando tempo in rete. Quindi, il requisito per il browser è in aumento. Secondo, come stanno andando le cose a livello globale (globalizzazione!) È già globale ma in futuro il requisito è molto di più. Anche un piccolo negozio ha bisogno di usare internet per le tasse, ecc. I paesi in via di sviluppo usano la rete nella governance, quindi il controllo delle tasse è facile. Per tutti questi, anche se un proprietario ha 4 piccoli negozi, ha bisogno di avere un dato aggregato per la sua vendita. Quindi, tutti e 4 i negozi hanno bisogno di interconnessione e calcolano ogni cosa ogni giorno. Le persone in una singola squadra lavorano da remoto. Quindi, hanno bisogno di condividere documenti su base regolare. Quindi, Google Documenti, ecc. Google Documenti ha la capacità di modificare online da vari utenti contemporaneamente. e ancora i documenti si sincronizzano. La concorrenza aumenta di giorno in giorno. Pertanto, tutti i dati aziendali devono trovarsi in un'unica posizione per l'analisi. Chi raccoglierà tutti i dati dall'applicazione desktop ogni giorno e si sincronizzerà ogni giorno. Quindi, anche se la società utilizzerà l'app Desktop per velocità e affidabilità, avrà anche bisogno di una sorta di connessione e software di sincronizzazione per quelle applicazioni desktop. In questo modo vedi che l'app desktop si avvicina all'app web!

Quindi, se si visualizza tutti questi scenari, allora troverete molto difficile da evitare applicazioni web. L'app Web ha un futuro. Per efficienza e velocità, l'app Web avrà una sorta di software che fungerà da app desktop e verrà scaricata quando lo si utilizza.