In Android R.java viene utilizzato per fornire l'accesso alle risorse definite nei file XML. Per accedere alla risorsa, è necessario invocare il metodo findViewById()
passando all'ID della risorsa da recuperare.Qual è il concetto alla base di R.java?
Questo è simile a Spring in cui i bean sono definiti in un contesto XML e vengono recuperati utilizzando il contesto dell'applicazione. context.getBean("beanId")
Questo fornisce un accoppiamento lento poiché i bean sono definiti esternamente e potrebbero essere modificati senza apportare modifiche al codice.
Questo mi ha confuso. Sebbene ciò che Android assomiglia alla primavera, quale vantaggio offre?
- Qual è il punto di avere un R.java intermedio comunque? Non potremmo semplicemente acquisire risorse direttamente da XML utilizzando un risorsa contesto lettore/applicazione. per esempio.
findViewById("resourceId")
- Non c'è alcun accoppiamento libero. Poiché i riferimenti in R.java vengono generati automaticamente, come è possibile eliminare una risorsa e inserirne una nuova?
- Quale modello di progettazione segue (se ce n'è uno)?
- Non sarebbe meglio disporre di risorse iniettate usando IOC (come Roboguice)? Perché Google ha deciso di darci un tale tipo di un modo strano di lavorare con le risorse?
Perdonare la mia ignoranza. Sono uno sviluppatore Java principiante che prova troppe cose contemporaneamente. :-) Grazie per tutto il feedback.
Voglio solo ripetere la tua domanda due volte, questa è una domanda molto interessante – fatiDev