nl.hideout-lastation.com
Paradijs Voor Ontwerpers En Ontwikkelaars


Eenvoudigere Android-ontwikkeling met Roboguice

RoboGuice is een onmisbaar raamwerk dat de eenvoud en eenvoud van afhankelijkheidsinjectie naar Android brengt. Guice is een lichtgewicht afhankelijkheidsinjectieframework voor het Java-platform. Afhankelijkheidsinjectie is een ontwerppatroon met het kernprincipe van scheidingsgedrag en afhankelijkheidsresolutie .

Het zorgt voor de verwijdering van "hard-coded" afhankelijkheden en maakt het mogelijk om ze te veranderen tijdens compileren of runtime. Dit maakt uw code gemakkelijker te schrijven, wijzigen, unit test en hergebruik in andere contexten . Uw code wordt minder een boilerplate code en meer van bedrijfslogica.

Met RoboGuice kunt u alles naar Android brengen. Met Roboguice kunt u uw eigen basisklassen gebruiken, samen met uw eigen essentiële methoden of functionaliteiten. Dit maakt RoboGuice compatibel met de meeste bibliotheken en stelt u in staat om bijna alle platformketelplaten te strippen via verschillende injecties zoals View-injecties, Middeleninjecties, SystemService-injecties, enz.

In eenvoudige bewoordingen betekent het gebruik van RoboGuice in uw Android-project minder code schrijven, minder fouten verwerken en minder hoofdpijn hebben .

Hoe RoboGuice te installeren

RoboGuice kan eenvoudig worden geïnstalleerd in uw op Gradle gebaseerde project door de volgende regels toe te voegen aan uw "afhankelijkheden" -sectie van het graduele buildbestand van uw app-module:

 project.dependencies {compile 'org.roboguice: roboguice: 3. +' provided 'org.roboguice: roboblender: 3. +'} 

Hoe RoboGuice te gebruiken

RoboGuice is gemakkelijk te gebruiken als u deze basisregels volgt:

1. Breid uw klassen uit van de juiste basisklassen van RoboGuice zoals RoboActivity, RoboFragment, RoboService, RoboListActivity, RoboActionBarActivity, etc.

2. Injecteer weergaven, resources of services met verschillende annotaties van RoboGuice zoals " @InjectView ", "@InjectResource ", "@Inject ", etc.

Dat is het. Eenvoudig, toch? U zult zich meer thuis voelen als u bekend bent met Java-annotaties .

Geen RoboGuice vs. RoboGuice

Laten we vergelijken hoe RoboGuice uw werklast verkleint en uw productiviteit verbetert door dit kleine voorbeeld te gebruiken. Stel dat we een lay-outbestand "activity_main.xml" hebben met alle onderstaande weergaven.

Opmerking: opmerkingen worden toegevoegd om de begrijpelijkheid van de code te verbeteren.

 klasse NoRoboGuice breidt Activiteit {// weergaven TextView-naam; ImageView-miniatuur; // services LocationManager loc; // resources Tekenbaar pictogram; String myName; public void onCreate (Bundle savedInstanceState) {super.onCreate (savedInstanceState); setContentView (R.layout.activity_main); // stelt de layoutnaam in = (TextView) findViewById (R.id.name); // boilerplate initialization thumbnail = (ImageView) findViewById (R.id.thumbnail); // boilerplate initialisatie loc = (LocationManager) getSystemService (Activity.LOCATION_SERVICE); // boilerplate initialisatie icon = getResources (). getDrawable (R.drawable.icon); // boilerplate-initialisatie myName = getString (R.string.app_name); // boilerplate initialization name.setText ("Hello, " + myName); // werkelijke code}} 

Zo ziet het eruit met RoboGuice:

 @ContentView (R.layout.activity_main) // stelt de layoutklasse in RoboGuice breidt RoboActivity uit {// views @InjectView (R.id.name) TextView-naam; @InjectView (R.id.thumbnail) ImageView-miniatuur; // resources @InjectResource (R.drawable.icon) Drawable-pictogram; @InjectResource (R.string.app_name) String myName; // services @Inject LocationManager loc; public void onCreate (Bundle savedInstanceState) {super.onCreate (savedInstanceState); name.setText ("Hallo", + mijnNaam); // werkelijke code}} 

RoboGuice vermindert niet alleen de code, maar helpt ook de leesbaarheid en begrijpelijkheid van de broncode te verbeteren. Het neemt het giswerk weg uit app-ontwikkeling en uw toepassingscode is niet langer bezaaid met de mechanica van het Android-platform.

Dit voordeel helpt enorm bij het debuggen of bijwerken van de toepassing, omdat u de broncode gemakkelijk kunt lezen en wijzigen. U hoeft niet langer te zoeken naar de daadwerkelijke code tussen de initialisatiecode van de boilerplate omdat nu alleen de eigenlijke code bestaat en RoboGuice de boilerplate-initialisatie automatisch voor u uitvoert.

Hoe het internet reageerde op Apple's Airpods

Hoe het internet reageerde op Apple's Airpods

Met de komst van iPhone 7 nemen we afscheid van de oortelefoonaansluiting en hallo tot een nieuw tijdperk van ... draadloze oortelefoons. Dubbed "Airpods", de nieuwe draadloze koptelefoon - hoewel niet de eerste in zijn soort - signaleert een verandering die velen ongemakkelijk maakt. En omdat dit internet is, is de enige juiste reactie om erover te grappen

(Technische en ontwerptips)

Perfectionisten op het werk: 30 voorbeelden die u moet zien

Perfectionisten op het werk: 30 voorbeelden die u moet zien

Je hebt waarschijnlijk gelezen over de wetenschappelijke reden waarom we iets waanzinnig schattig of schattig willen knuffelen of knijpen - ter dood. De aandoening wordt leuke agressie genoemd. Het is een reactie die extreem leek, maar noodzakelijk is voor de geest om te kunnen omgaan met het zien van iets buitengewoons, zoals een schattige puppy

(Technische en ontwerptips)