Comment by jsight

3 days ago

IDK, I've worked in projects that didn't use the magic so much and I honestly think it was worse.

Instead of a config class and a bunch of apps with @Inject Config config;, we'd have giant *Config classes. Each one would have lots of methods like:

@Bean public fooProducer(FooConfig config, BazProvider provider, BarProvider barProvider, SoapClient soapClient) {...}

Want to know how they were produced? Find usages on the class' constructor.

The magic @Inject and @Autowired annotations don't seem worse than that to me.