Homepage » Mobil » Egyszerűbb Android fejlesztés a RoboGuice programmal

    Egyszerűbb Android fejlesztés a RoboGuice programmal

    A RoboGuice egy must-have keret, amely a egyszerűség és könnyű függőség-befecskendezés Androidra. A Guice egy könnyű súlyfüggő injekciós keret a Java platform számára. A függő befecskendezés egy tervezési minta, amelynek a fő eleme a a viselkedés elválasztása a függőségi felbontástól.

    Lehetővé teszi az eltávolítást “beégetett” függőségek és lehetővé teszi, hogy azokat fordítási vagy futtatási idő alatt megváltoztassák. Ez teszi kód könnyebben írható, módosítható, egység teszt és újrahasznosítás más kontextusokban. A kódja kevésbé lesz a kazánlap és több üzleti logika.

    A RoboGuice segítségével mindezt Android-ra hozhatja. A RoboGuice lehetővé teszi használja a saját alaposztályait saját alapvető módszereivel vagy funkcióival együtt. Ez teszi RoboGuice-t kompatibilis a legtöbb könyvtárral valamint lehetővé teszi, hogy csíkozzon majdnem minden platformfülke különböző injekciók, például injekciók, erőforrás injekciók, SystemService injekciók stb.

    Egyszerű értelemben a RoboGuice használata az Android projektben kevesebb kód írása, kevesebb hiba kezelése és kevesebb fejfájás.

    A RoboGuice telepítése

    A RoboGuice könnyen telepíthető a Gradle-alapú projektbe, a következő sorok hozzáadásával “függőségek” az alkalmazásmodul gradle build fájljának része:

     project.dependencies compile 'org.roboguice: roboguice: 3. +' biztosított 'org.roboguice: roboblender: 3. +'

    A RoboGuice használata

    A RoboGuice könnyen használható, ha az alábbi alapvető szabályokat követi:

    1. Bővítse osztályait a megfelelő RoboGuice alaposztályaiból, mint a RoboActivity, RoboFragment, RoboService, RoboListActivity, RoboActionBarActivity stb..

    2. A nézeteket, erőforrásokat vagy szolgáltatásokat injektálhatja a RoboGuice által adott különböző megjegyzéseket használva, például “@InjectView“, “@InjectResource“, “@Inject“, stb..

    Ez az. Egyszerű, nem? Ha otthon ismeri, jobban érzi magát otthon Java-megjegyzések.

    Nincs RoboGuice vs RoboGuice

    Hasonlítsuk össze, hogyan tudja a RoboGuice ezt a kis példát felhasználva csökkenteni a munkaterhelését és javítani termelékenységét. Tegyük fel, hogy van egy “activity_main.xml” az alábbiakban felsorolt ​​összes nézetet tartalmazó elrendezési fájl.

    Jegyzet: Megjegyzések hozzáadásával javítható a kód érthetősége.

     NoRoboGuice osztály kiterjeszti az aktivitást // nézetek TextView nevét; ImageView bélyegkép; // szolgáltatások LocationManager loc; // erőforrások Rajzolható ikon; String myName; public void onCreate (Bundle savedInstanceState) super.onCreate (savedInstanceState); setContentView (R.layout.activity_main); // beállítja az elrendezés nevét = (TextView) findViewById (R.id.name); // boilerplate inicializálás thumbnail = (ImageView) findViewById (R.id.thumbnail); // boilerplate inicializálás loc = (LocationManager) getSystemService (Activity.LOCATION_SERVICE); // boilerplate inicializációs ikon = getResources () getDrawable (R.drawable.icon); // boilerplate inicializálás myName = getString (R.string.app_name); // boilerplate inicializálás name.setText ("Hello," + myName); // tényleges kód 

    Így néz ki a RoboGuice:

    @ContentView (R.layout.activity_main) // beállítja a RoboGuice elrendezési osztályt, amely kiterjeszti a RoboActivity // megtekintését @InjectView (R.id.name) TextView nevet; @InjectView (R.id.thumbnail) ImageView miniatűr; // erőforrások @InjectResource (R.drawable.icon) Rajzolható ikon; @InjectResource (R.string.app_name) String myName; // services @Inject LocationManager loc; public void onCreate (Bundle savedInstanceState) super.onCreate (savedInstanceState); name.setText ("Hello," + myName); // tényleges kód 

    A RoboGuice nemcsak csökkenti a kódot, hanem segít a forráskód olvashatóságának és érthetőségének javításában is. Az alkalmazás fejlesztéséből és a fejlesztésekből kitűnik a találgatás az alkalmazáskódja már nincsen szemeteltve az Android platform mechanikájával.

    Ez az előny nagyban segít hibakereséskor vagy frissítése az alkalmazás könnyen olvasható és megváltoztatható. Már nem kell a tényleges kódot keresni a boilerplate inicializációs kód között, mert most csak a tényleges kód létezik és a RoboGuice automatikusan elvégzi az Ön számára a boilerplate inicializálását.