<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>AndroidDev on Ash Davies</title>
    <link>https://ashdavies.dev/tags/androiddev/</link>
    <description>Recent content in AndroidDev on Ash Davies</description>
    <generator>Hugo -- 0.150.1</generator>
    <language>en</language>
    <lastBuildDate>Mon, 19 Jun 2017 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://ashdavies.dev/tags/androiddev/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Dagger 2: Module Parameters</title>
      <link>https://ashdavies.dev/posts/dagger-2-module-parameters/</link>
      <pubDate>Mon, 19 Jun 2017 00:00:00 +0000</pubDate>
      <guid>https://ashdavies.dev/posts/dagger-2-module-parameters/</guid>
      <description>&lt;p&gt;Last month, I went into detail about &lt;a href=&#34;https://ashdavies.dev/posts/dagger-2-android-modules/&#34;&gt;how to use the recently released Dagger 2 Android modules&lt;/a&gt;, and how you can make your injection code much more concise.&lt;/p&gt;
&lt;p&gt;Google have gone through a lot of effort to enable developers to use Dagger with very little integration and more importantly on how to use a common injection paradigm without the injection target being concerned with how it is being provided with it’s necessary dependencies.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Dagger 2: Android Modules</title>
      <link>https://ashdavies.dev/posts/dagger-2-android-modules/</link>
      <pubDate>Mon, 01 May 2017 00:00:00 +0000</pubDate>
      <guid>https://ashdavies.dev/posts/dagger-2-android-modules/</guid>
      <description>&lt;p&gt;Many of the articles I write tend to involve application structure or architectural design patterns; and one of the most recurring topics I tend to visit is that of dependency injection.&lt;/p&gt;
&lt;p&gt;Dependency injection is probably one of the most important topics of modern application development, whilst often overlooked as a necessity, it allows us to build highly scalable, powerful applications and platforms.&lt;/p&gt;
&lt;p&gt;Dependency inversion works seamlessly with many other design principles and in many ways facilitates them, most specifically single responsibility. Effective dependency injection is achieved by providing dependencies through the constructor, usually as interface types, thereby allowing the class in focus to not worry about the instantiation of these types. I’ve gone into further detail about this in my previous article &lt;a href=&#34;https://ashdavies.dev/posts/effective-dependency-injection-scoping/&#34;&gt;Effective Dependency Injection&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Effective Dependency Injection Scoping</title>
      <link>https://ashdavies.dev/posts/effective-dependency-injection-scoping/</link>
      <pubDate>Mon, 10 Apr 2017 00:00:00 +0000</pubDate>
      <guid>https://ashdavies.dev/posts/effective-dependency-injection-scoping/</guid>
      <description>&lt;p&gt;The concept of dependency injection is a relatively simple one, and can usually be adhered to with a small set of rules when writing your code.&lt;/p&gt;
&lt;p&gt;Specifically, avoid creating new instances of objects within your classes, and opt to have the instance provided through the class constructor. This allows your class to focus on the key operations without having to worry about the state or creation of it’s dependencies.&lt;/p&gt;
&lt;p&gt;This means that your class will be small, concise, readable, and most importantly, easily maintainable since it only contains the logic required to perform the necessary operation.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
