Домашняя » мобильный » Упрощенная разработка Android с RoboGuice

    Упрощенная разработка Android с RoboGuice

    RoboGuice - это необходимая структура, которая приносит простота и легкость внедрения зависимости на Android. Guice - это облегченная структура внедрения зависимостей для платформы Java. Внедрение зависимостей - это шаблон проектирования с основным принципом отделение поведения от разрешения зависимостей.

    Это позволяет удалить “жестко” зависимости и позволяет изменять их во время компиляции или выполнения. Это делает ваш код легче писать, менять, тестировать а также повторное использование в других контекстах. Ваш код становится меньше стандартного кода и больше бизнес-логики.

    С RoboGuice вы можете перенести все это на Android. RoboGuice позволяет вам использовать свои собственные базовые классы наряду с вашими основными методами или функциями. Это делает RoboGuice совместим с большинством библиотек а также позволит вам раздеться почти все платформы платформы с помощью различных инъекций, таких как просмотр инъекций, инъекции ресурсов, инъекции SystemService и т. д..

    Проще говоря, использование RoboGuice в вашем проекте Android означает писать меньше кода, обрабатывать меньше ошибок и меньше головной боли.

    Как установить RoboGuice

    RoboGuice может быть легко установлен в ваш проект на основе Gradle, добавив следующие строки в ваш “зависимости” раздел файла сборки вашего модуля приложения:

     project.dependencies compile 'org.roboguice: roboguice: 3. +' предоставлено 'org.roboguice: roboblender: 3. +'

    Как использовать RoboGuice

    RoboGuice прост в использовании, если вы следуете этим основным правилам:

    1. Расширьте свои занятия из соответствующих базовых классов RoboGuice, таких как RoboActivity, RoboFragment, RoboService, RoboListActivity, RoboActionBarActivity и т. д..

    2. Внедрить представления, ресурсы или услуги используя различные аннотации, предоставленные RoboGuice, такие как “@InjectView“, “@InjectResource“, “@Inject“, так далее.

    Вот и все. Просто, не правда ли? Вы будете чувствовать себя как дома, если вы знакомы с Java аннотации.

    Нет RoboGuice против RoboGuice

    Давайте сравним, как RoboGuice может минимизировать вашу рабочую нагрузку и повысить производительность на этом небольшом примере. Предположим, у нас есть “activity_main.xml” файл макета, имеющий все виды, перечисленные ниже.

    Замечания: Комментарии добавлены для улучшения понимания кода.

     класс NoRoboGuice extends Activity // просмотр имени TextView; Уменьшенное изображение ImageView; // сервисы LocationManager loc; // ресурсы Drawable icon; Строка myName; public void onCreate (Bundle saveInstanceState) super.onCreate (saveInstanceState); setContentView (R.layout.activity_main); // устанавливает имя макета = (TextView) findViewById (R.id.name); // шаблонная инициализация thumbnail = (ImageView) findViewById (R.id.thumbnail); // шаблонная инициализация loc = (LocationManager) getSystemService (Activity.LOCATION_SERVICE); // шаблон инициализации icon = getResources (). getDrawable (R.drawable.icon); // шаблонная инициализация myName = getString (R.string.app_name); // шаблон инициализации name.setText ("Hello, + myName); // актуальный код 

    Вот как это выглядит с RoboGuice:

    @ContentView (R.layout.activity_main) // устанавливает класс макета RoboGuice extends RoboActivity // views @InjectView (R.id.name) TextView name; @InjectView (R.id.thumbnail) ImageView thumbnail; // resources @InjectResource (R.drawable.icon) Drawable icon; @InjectResource (R.string.app_name) String myName; // services @Inject LocationManager loc; public void onCreate (Bundle saveInstanceState) super.onCreate (saveInstanceState); name.setText («Hello» + myName); // актуальный код 

    RoboGuice не только сокращает код, но также помогает улучшить читаемость и понятность исходного кода. Это берет догадки из разработки приложений и код вашего приложения больше не засорен с механикой платформы Android.

    Это преимущество очень помогает во время отладки или же обновление приложение, так как вы можете легко прочитать и изменить исходный код. Вам больше не нужно искать фактический код между исходным кодом инициализации, потому что теперь существует только фактический код и RoboGuice автоматически выполняет инициализацию шаблона.