Il framework web Pusa, che porta la logica del frontend JavaScript sul lato server.

È stato pubblicato il framework web Pusa, che implementa un concetto che trasferisce la logica del frontend, eseguita nel browser tramite JavaScript, nel backend - la gestione del browser e degli elementi DOM, così come la logica di business vengono eseguite nel backend. Il codice JavaScript eseguito nel browser viene sostituito da un layer universale che invoca gestori presenti nel backend. Non è necessaria lo sviluppo con JavaScript per il frontend. L'implementazione di riferimento di Pusa è scritta in PHP e distribuita sotto licenza GPLv3. Oltre a PHP, la tecnologia può essere implementata in qualsiasi altro linguaggio, inclusi JavaScript/Node.js, Java, Python, Go e Ruby.

Pusa definisce un protocollo di scambio basato su un insieme minimalista di comandi. Durante il caricamento della pagina, il browser carica il contenuto di base del DOM e il nucleo JavaScript di Pusa-Front. Pusa-Front, tramite richieste Ajax, invia eventi del browser (come click, blur, focus e keypress) e parametri di richiesta (l'elemento che ha attivato l'evento, i suoi attributi, URL, ecc.) al gestore del server Pusa-Back. Sulla base dei dati ricevuti, Pusa-Back determina il controller, esegue il payload e genera un set di comandi di risposta. Ricevuta la risposta della richiesta, Pusa-Front esegue i comandi, modificando il contenuto del DOM e l'ambiente del browser.

Lo stato del frontend è formato ma non controllato dal backend, il che rende lo sviluppo per Pusa simile al codice per la scheda grafica o Canvas, dove il risultato dell'esecuzione non è controllato dallo sviluppatore. Per creare applicazioni interattive basate su Canvas e onmousemove è prevista la possibilità di caricare e utilizzare script JavaScript aggiuntivi sul lato client. Tra gli svantaggi del metodo si segnala anche il trasferimento di parte del carico dal frontend al backend e l'aumento della frequenza di scambio di dati con. server.

Tra i vantaggi si evidenziano: l'esclusione della necessità di coinvolgere sviluppatori JavaScript per il frontend, un codice client stabile e compatto (11 kB), l'inaccessibilità del codice sorgente dal lato frontend, l'assenza di necessità di serializzazione REST e di strumenti come gRPC, e l'esclusione di problemi di allineamento del routing delle richieste tra frontend e backend.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster