Quindi lo scenario è che svilupperemo un'applicazione web. Consisterà principalmente in:
- API
- Materiale di Front End (HTML / CSS / JS)
Sto prendendo in considerazione due approcci:
-
API del pacchetto separatamente in un file * .war e distribuire sul server. Scrivi cose front-end e chiama quelle API. (Questo è ciò che la mia azienda precedente ha seguito poiché avevamo l'API in ORM di sospensione su RESTeasy distribuito su JBOSS)
-
Imballa tutti i file API e dell'interfaccia utente in * .jar. Questo è ciò che sta seguendo la mia attuale compagnia. Spring Framework, JSP.
A quanto ho capito, utilizzando il primo approccio possiamo avere più modularizzazione. Possiamo indirizzare la nostra interfaccia utente a qualsiasi URL dell'API che può rivelarsi utile durante il test, la commutazione delle API e così via. Utilizzando il secondo approccio, possiamo mantenere un livello più elevato di integrità, come nel rendere il codice UI più sicuro e uniforme in quanto possiamo fare riferimento direttamente al codice API. Anche se il problema è che il codice diventa poco illeggibile e disordinato, il pensiero potrebbe essere solo un'opinione personale.
Quali sono altre ragioni dietro l'adozione di questo tipo di approcci? La mia comprensione è corretta? Quale approccio è adatto in quali scenari?