C'è un'opinione che durante la creazione di applicazioni browser avanzate (JS-pesanti) dovrebbe essere trattato come applicazione separata non come parte dell'app "back-end". Mi chiedo come viene realizzata la build e la distribuzione in questo setup?Applicazione di frontend separata - strategie di compilazione e implementazione
Suppongo di avere un file WAR java che espone l'API basata su JSON (sia JAX-RS o qualsiasi altra cosa) - nessuna vista. Poi ho il contenuto statico per la mia app di frontend: js script html views, css styles, images ecc. Potrei usare lo strumento dedicato di build, ad es. GruntJS per quel progetto di minify/preprocess ecc.
Ma ora sono un po 'bloccato. Quale dovrebbe essere il risultato di tale build? WAR separato con solo file statici creati da Grunt? Che dire della distribuzione? Dovrei mescolare questi WAR insieme in un'unica app in piena regola o distribuire due separati ad es. example.com
serve statico e quelle statiche usano api.example.com
per ottenere i dati.
Un'altra domanda riguarda lo sviluppo. Di conseguenza mi piacerebbe avere i miei js e css concatenati e minimizzati, ma non è così buono per lo sviluppo (il debug è difficile ecc.). C'è qualche trucco per avere file sorgente separati in modalità dev e concatenati solo su prod build?