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.

19 Universele sneltoetsen voor de meeste webbrowsers

19 Universele sneltoetsen voor de meeste webbrowsers

Alle grote internetbrowsers hebben hun eigen set sneltoetsen. Hoewel de meeste van hen van de ene naar de andere browser verschillen, zijn sommige van deze snelkoppelingen universeel omdat een specifieke opdracht hetzelfde doet op alle internetbrowsers.In dit bericht geef ik een overzicht van al deze universele sneltoetsen die kunnen worden toegepast op Google Chrome, Mozilla Firefox, Opera, Internet Explorer, Microsoft Edge en Safari

(Technische en ontwerptips)

Hoe gesynchroniseerd testen met Ghostlab uit te voeren

Hoe gesynchroniseerd testen met Ghostlab uit te voeren

In het vorige bericht hebben we u laten zien hoe u gesynchroniseerde tests uitvoert met Browser Sync. Als u het bericht hebt gevolgd, ziet u dat "gesynchroniseerd testen" uw ontwikkelingswerkstroom zal stimuleren in termen van het testen van voor mobiel geoptimaliseerde websites over meerdere browsers en apparaten tegelijkertijd

(Technische en ontwerptips)