L'interfaccia utente dell'applicazione deve riflettere i dati del server o del client?

2

Supponiamo che tu disponga di un'interfaccia utente che rifletta una sorta di dati lato server e che l'interfaccia utente possa manipolare tali dati tramite richieste HTTP. Per un esempio più concreto, prendere in considerazione un database utente con un'interfaccia Web che può aggiungere, modificare ed eliminare utenti tramite HTTP. Il client stesso rimane sincronizzato con il server tramite polling periodico e ha una tabella di aggiornamento degli utenti su una pagina.

Quando il client modifica i dati, quando devono essere modificati i dati nella tabella? Se viene modificato quando il client modifica i dati, c'è una incoerenza nei dati client e server per un certo periodo di tempo e deve essere gestita se la richiesta HTTP di modificare i dati non riesce. Se l'interfaccia viene aggiornata quando la richiesta ha esito positivo o la volta successiva in cui il server esegue il polling dei dati, è possibile che l'utente ritenga che la loro azione non abbia fatto nulla.

C'è un approccio generalmente preferito a questo? Sarebbe meglio fare qualcosa come avere qualche tipo di stato di sincronizzazione che viene visualizzato come icona o colore per ogni record mentre i dati non sono sincronizzati?

    
posta danielunderwood 07.04.2017 - 19:19
fonte

1 risposta

0

È possibile implementare un metodo di handshaking. Una volta che i dati sono stati aggiornati sulla GUI del client, si oscura (o crea un'icona che attesta che il server è in attesa di modifica) e quando il server conferma la modifica, l'interfaccia utente del client verrà rilasciata e l'icona scomparirà. Fornisce inoltre un buon meccanismo di feedback all'utente che accetta le modifiche, mantenendo sincronizzati entrambi i record laterali.

    
risposta data 13.04.2017 - 13:44
fonte

Leggi altre domande sui tag