Головна » Мобільний телефон » Легше розробка 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 розширює Activity // views TextView ім'я; Мініатюра ImageView; // послуги LocationManager loc; // ресурси малювання іконки; Рядок myName; public void onCreate (Bundle savedInstanceState) super.onCreate (savedInstanceState); setContentView (R.layout.activity_main); // встановлює ім'я макета = (TextView) findViewById (R.id.name); // мініатюра ініціалізації шаблону = (ImageView) findViewById (R.id.thumbnail); // ініціалізація шаблону loc = (LocationManager) getSystemService (Activity.LOCATION_SERVICE); // значок шаблону ініціалізації = getResources (). getDrawable (R.drawable.icon); // ініціалізація шаблону myName = getString (R.string.app_name); // ініціалізація name.setText ("Hello," + myName); // фактичний код 

    Ось як це виглядає з RoboGuice:

    @ContentView (R.layout.activity_main) // встановлює клас макета RoboGuice розширює RoboActivity // views @InjectView (R.id.name) ім'я TextView; @InjectView (R.id.thumbnail) Мініатюра ImageView; // ресурси @InjectResource (R.drawable.icon) Піктограма малювання; @InjectResource (R.string.app_name) Рядок myName; // послуги @Inject LocationManager loc; public void onCreate (Bundle savedInstanceState) super.onCreate (savedInstanceState); name.setText ("Привіт," + myName); // фактичний код 

    RoboGuice не тільки зменшує код, але й допомагає поліпшити читабельність і зрозумілість вихідного коду. Він приймає догадки з розробки програм і код вашої програми більше не засмічений з механікою платформи Android.

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