/explore

Click through on any links that interest you or select the planets on the right to continue exploring the Outer Web.
You are here

georgemauer.net
| | jmmv.dev
3.8 parsecs away

Travel
| | Dependency injection is one of my favorite design patterns to develop highly-testable and modular code. Unfortunately, applying this pattern by taking Rust traits as arguments to public functions has unintended consequences on the visibility of private symbols. If you are not careful, most of your crate-internal APIs might need to become public just because you needed to parameterize a function with a trait. Let's look at why this happens and what we can do about it.
| | ryanharter.com
2.5 parsecs away

Travel
| | I recently gave a presentation about how Dagger works under the hood, and I was once again struck by the elegance of the javax.inject.Provider interface. The interface is so simple it almost seems useless, but it's also incredibly flexible, and forms the basis of much of the code generated by Dagger. Like many dependency injection frameworks for JVM languages, Dagger uses and builds on the standard set of annotations for injectable classes defined in JSR-330 and provided in the javax.
| | blog.nuculabs.de
4.3 parsecs away

Travel
| | The Constructor Injection design pattern is a pattern that helps you declare all the required dependencies of a class in it's constructor. This is useful because it helps you decouple the code, you can specify an interface instead of a concrete type, remember, program to an interface. Also, in the constructor it is easier to guard against null objects. The calling code doesn't have to worry about null exceptions every time it uses a dependency.
| | qnoid.com
19.1 parsecs away

Travel
| This is a personal website, at the outskirts of the web, away from social media and publishing platforms.