Ответ 1
Вы должны попробовать Roboguice. Я начал использовать в своих проектах с Robolectric для TDD.
Все идет нормально :)
Мне нужна помощь в решении, какой контейнер IOC лучше всего подходит для разработки на мобильных устройствах (Android). Мне нужен базовый IOC без особых накладных расходов. Spring - очень хорошая инфраструктура, но она переполнена для мобильных устройств.
Вы должны попробовать Roboguice. Я начал использовать в своих проектах с Robolectric для TDD.
Все идет нормально :)
Существует также Dagger, который легче RoboGuice.
Вы также должны попробовать AndroidAnnotations:).
Он был вдохновлен RoboGuice, но привязки и инъекции выполняются во время компиляции, чтобы избежать затрат на производительность.
Он также предоставляет привязку событий (аннотировать метод для получения событий кликов) и упрощенную модель потоков (аннотируйте метод, чтобы убедиться, что он будет выполнен в потоке пользовательского интерфейса/в фоновом потоке).
И, конечно, AndroidAnnotations можно комбинировать с RoboGuice.
Существует также Spring ME, который должен быть самым легким контейнером IOC. Фактически, у него вообще нет зависимости от выполнения, но вы все равно можете использовать конфигурацию XML Spring для подключения ваших объектов. Слайды здесь.
RoboGuice теперь удален, как указано на их странице GitHub, так что это должно дать нам больше оснований для использования Dagger в качестве IOC для Android в соответствии с рекомендациями Google.