Sto lavorando a un'importante nuova versione di un'applicazione basata su browser e sto cercando commenti / suggerimenti sull'architettura / design.
Si tratta di un'applicazione a pagina singola che utilizza AJAX e un modello lato client per ottenere nuove "pagine". Sto già usando la libreria di Sammy Javascript per gestire i segnalibri e i pulsanti avanti / indietro. Sto usando JQuery, parti di JQueryUI, SlickGrid e un piccolo Dojo (principalmente dojox / rpc / jsonrpc e le sue dipendenze) fino ad ora.
Sto comunicando con il server utilizzando le chiamate JSON RPC attraverso un livello di server Web molto sottile che inoltra le stringhe JSON al server aziendale, che ha un'API accessibile in vari modi, ma il browser utilizza solo JSON RPC. Il monitoraggio dello stato della sessione avviene nel livello aziendale come parte dell'implementazione di tale API, anche se ovviamente il meccanismo RPC deve fornire informazioni sufficienti per identificare quale sessione lo sta chiamando.
Tutto ciò era contesto; la domanda che ho è: qualcuno sa di risorse che supportano questo tipo di design? In particolare, vorrei cercare librerie Javascript open source oltre a Sammy che supportano applicazioni web a pagina singola. Sammy si aspetta che tu usi il template del lato client, e abbia qualche supporto per questo oltre a diversi plugin per librerie di template particolari, ma non supporta funzionalità simili per usare AJAX per applicare fogli di stile CSS (e rimuovere o disattivare altri) quando cambi schermo e avrebbe cambiato pagina in un'applicazione web più tradizionale.
Mi piacerebbe anche sentire qualcuno che ha provato qualcosa di simile. Stavi bene con un foglio di stile per l'intera applicazione? Hai avuto problemi con problemi di perdita di memoria da rimanere su una pagina per così tanto tempo?
Inoltre, qualche suggerimento per una progettazione lato client? MVP suona ragionevole, con un modello implementato in Javascript, classi di presentatori per implementare gli eventi in modo astratto, più facile da testare e la vista per gestire le reali cose del DOM? Una sorta di gestore di applicazioni per tenere traccia di quali pagine sono in su e questo pulisce le risorse quando si chiude uno schermo?
Non ho visto molti riferimenti o librerie complete per il design di una singola pagina, quindi qualsiasi cosa che la gente può dirmi o riferirmi sarebbe apprezzato.
Nota che ho letto Dev approcci alle interfacce utente JavaScript complesse , che è una grande domanda ma non specifica per le interfacce utente JavaScript complesse a singola pagina.