Fragmented - Android Developer Podcast

246 - Dependency Injection: Kotlin Inject with Fred Porciúncula


Listen Later

In this podcast episode, we have the pleasure to host Fred Porciúncula, a Google Developer Expert (GDE) known for his work with Kotlin Inject and his invaluable contributions to the Android development community. Fred offers his expertise on Dependency Injection (DI), Kotlin Multiplatform (KMP), and how they intersect.

We kick off the conversation by discussing Dependency Injection (DI), its importance, and the options available to developers, including Dagger, Hilt, Anvil, Koin, and Kotlin-Inject. Fred explains the use and impact of DI in the Kotlin Multiplatform (KMP) world, considering Dagger’s current lack of KMP support and debating whether one should use separate DI tools for Android apps and KMP components.

Delving further into Kotlin-Inject, we explore its features, usage, and how it differentiates itself from other DI solutions. Topics discussed include its unique handling of Scopes, its support of constructor injection, and its utility in building dependency graphs. Furthermore, we examine the timeless debate of Dependency Injection versus Service Locator.

Toward the end of the episode, Fred presents his thoughts on the advantages and disadvantages of exclusively using Kotlin-Inject throughout an application. We also tackle the concept of “Vanilla Injection” - refraining from using DI libraries at all.

For further learning, we recommend resources like Fred's insightful article on transitioning from Dagger/Hilt to Kotlin-Inject, a Dagger issue discussing KSP support, and a Kotlin-Inject discussion on Anvil-like features. Links to these resources, among others, are provided below. Don’t miss out on this engaging and informative episode with Fred Porciúncula!

Links
  • Kotlin Inject Library
  • Fred's Kotlin Inject Article
  • Testing with Kotlin Inject
  • Kotlin Inject Scope Issue
  • Pulling code out of the platform class
  • DI vs Service Locators
  • Dagger KSP Support
  • Kotlin Inject Anvil Like Features
  • Making Your Android Application Work on iOS (Touchlab mentioning interfaces over expect)
  • Moko Resources
  • Klima Engineering

Find Fred Online Here

  • Twitter - @tfcporciuncula
  • androiddev.social/@fred
  • Klima Engineering Blog
Donn's Git Course

Need to learn Git? Donn has the course for you. In this FREE course you'll learn everything you need to know in order to start working with Git everyday. Watch it here.

AndroidJobs.IO
  • Job postings are FREE on AndroidJobs.IO 🎉
  • Sign up to get notified of new jobs on a weekly basis as well.
  • AndroidJobs.IO
Software Freelancing
  • Donn's Freelance Faction Community
  • Freelance Tactics Book
  • Donn's Freelancing Content on YouTube
Contact

@fragmentedcast on Twitter or our YouTube channel

Donn

  • @donnfelker
  • donnfelker
  • Donn's YouTube
  • Donn's Website

Kaushik

  • kau.sh (has links to all my networks)
  • twitter.kau.sh
  • mastodon.kau.sh
  • youtube.kau.sh (on YouTube)

Disclaimer: Many of the links we share to products are affiliate links. They help support the production of Fragmented. Thank you for your support.

...more
View all episodesView all episodes
Download on the App Store

Fragmented - Android Developer PodcastBy Donn Felker, Kaushik Gopal

  • 5
  • 5
  • 5
  • 5
  • 5

5

67 ratings


More shows like Fragmented - Android Developer Podcast

View all
Planetary Radio: Space Exploration, Astronomy and Science by The Planetary Society

Planetary Radio: Space Exploration, Astronomy and Science

1,339 Listeners

Das Wissen | SWR by SWR

Das Wissen | SWR

121 Listeners

Motley Fool Money by The Motley Fool

Motley Fool Money

3,180 Listeners

Design Details by Brian Lovin, Marshall Bock

Design Details

361 Listeners

Developer Tea by Jonathan Cutrell

Developer Tea

402 Listeners

Does Not Compute by Sean Washington, Rockwell Schrock

Does Not Compute

53 Listeners

Toolsday by Una Kravets, Chris Dhanaraj

Toolsday

48 Listeners

Swift Unwrapped by JP Simard, Jesse Squires, Spec Network, Inc.

Swift Unwrapped

90 Listeners

Morning Brew Daily by Morning Brew

Morning Brew Daily

2,951 Listeners

Now in Android by Now in Android

Now in Android

6 Listeners

A Bit of Optimism by Simon Sinek

A Bit of Optimism

2,183 Listeners

The Pragmatic Engineer by Gergely Orosz

The Pragmatic Engineer

52 Listeners