How do we break down a large JVM monolith without incurring runtime costs? How do we scale dependency injection in such an application running in a constrained environment like mobile? Does it play well with a modularized Android app? How do you visualize and navigate the graph as complexity grows?
In this session we will describe the mechanisms that we use at Twitter to facilitate modularization and decoupling utilizing dependency injection. We will also cover why Dagger is our tool of choice along with the shortcomings we encountered, and share some practical advice on how to address them. Finally, we’ll offer a sneak peek of the extensions that we built on top of Dagger to facilitate dependency injection that we plan to open source in 2020.