Dato che sono abbastanza nuovo per lo sviluppo di app su larga scala in Android e Java, ho pensato di chiedere un consiglio.
Il mio team si trova di fronte allo sviluppo di un prototipo di un software medico abbastanza complesso. Anche se è solo un prototipo, penso che potrebbe essere una buona opportunità per imparare una nuova piattaforma e entrare in buone abitudini.
I nostri requisiti di progettazione sono abbastanza semplici: un insieme di file comuni: temi, stili, oggetti, metodi statici per database ecc. e poi una serie di "app" più piccole come: test digitali, giochi ecc. Ognuno è abbastanza unico .
Il nostro pensiero iniziale è quello di creare una serie di applicazioni più piccole che verranno lanciate da "la schermata principale". Ogni applicazione sarebbe un progetto separato in Eclipse e quindi dovremmo modificare il percorso di costruzione per includere i "file comuni". In questo modo: ogni sviluppatore può lavorare sui propri progetti senza disturbare gli altri.
I problemi che trovo con questo approccio:
- Distribuzione dell'applicazione (con un gruppo di applicazioni invece di una grande)
- Test dell'applicazione
- Uso di stringhe per avviare un'altra applicazione, ovvero preoccuparsi che l'applicazione sia stata installata
- Errori umani stupidi, ad es. modifica di file comuni e dimenticanza di commit delle modifiche
Un'altra soluzione sarebbe quella di creare un'unica grande applicazione / progetto con ogni sviluppatore che lavora su un pacchetto separato che rappresenterebbe ogni app. Tuttavia, questo introduce risorse comuni (ad esempio nomi di stringhe univoci) ecc.
Qual è il tuo consiglio sul modo migliore per affrontare questo problema? Quale approccio è migliore a lungo termine? Esistono altri approcci più sensati?