2013-05-30 22 views
8

Con i nuovi servizi come Firebase e analizzare, e strumenti come angolare JS, è ora possibile scrivere una web app che viene servita semplicemente come una raccolta di file statici. Puoi scrivere il frontend in borsa HTML/CSS/Javascript e il backend è un servizio in hosting.Scrivi web app con "no backend"

Le mie domande sono:

  • È questo una buona idea?
  • Vale la pena utilizzare qualcosa come Heroku o App Engine per un'applicazione come questa? L'utente ha davvero bisogno di scaricare l'HTML/JS una volta e sono impostati
  • Come gestire gli utenti? Accesso federato? Memorizza i dati dell'utente in Firebase/Parse?

Eventuali altri suggerimenti di benvenuto!

risposta

8

È del tutto ragionevole scrivere un'app client con le attuali funzionalità del browser. Ho creato personalmente un'applicazione sofisticata utilizzando solo Firebase nel back-end e HTML/JavaScript fornito da un CDN come client. Questo è particolarmente adatto per i tipi di applicazioni che hanno intrinsecamente semplici modelli di sicurezza:

  • applicazioni singolo utente (dove i dati appartiene e viene modificato da una sola persona)
  • chat e comunicazioni widget
  • applicazioni private ad un'organizzazione, in cui le connessioni client vengono autenticate e di fiducia, almeno in misura minore (editori di collaborazione e CRM)

e 'possibile in alcuni casi, ma meno adatto a utensili con calcoli pesanti in cui anche i dati utente di basso livello deve essere c controllato da una terza parte fidata (ad es. giochi in cui i giocatori possono modificare le proprie statistiche e calcolare statistiche valide richiede complessi algoritmi)

È inoltre possibile ridurre notevolmente l'amministrazione e l'impostazione del server sostituendo le API e gli script server tradizionali con "utenti privilegiati". Questi sono anche ascoltatori di Firebase, con privilegi di accesso più elevati, che ascoltano ed elaborano i dati proprio come un client, quindi scrivono per proteggere i dati di quanto non si debba consentire agli utenti normali di accedere o manipolare.

Uno svantaggio dei modelli client-only è la maggiore complessità della sicurezza. È necessario affidare a ciascun cliente il compito di calcolare e archiviare i propri dati o che i dati devono essere attentamente protetti tramite le regole di sicurezza o una sorta di monitoraggio esterno (ad esempio un consumatore privilegiato).

si potrebbe trovare alcune idee progettuali interessanti approfondire la letteratura sulla "Fat Client" or "Thick Client" modelli di progettazione. Potresti anche voler dare un'occhiata a distributed gaming per alcuni approfondimenti.

+0

Non ti riferisci a Kato l'app di chat giusto? ;) – CMCDragonkai

Problemi correlati