используют подход инвершен оф контрол
она плоха своей бессмысленостью. изначально штуки типа спринга появились, чтобы быстро клепать типовые и несложные задачи типа рестух. просто из-за того, что кровавый тырпрайз прибит гвоздями к jvm и .net (по строгим ТЗ и технологическим картам предприятия), и не может использовать под эту задачу более простые эффективные по трудозатратам инструменты - скриптовые языки, например с kiss подходом. какбе зачем тебе нест, чтобы собрать рестуху? да незачем из либ тоже спокойно соберёшь. парадокс в том, чето если у тебя будет какая-то реально сложная задача, ты не будешь использовать нест или спринг. в качестве пруфа можно посмотреть ядра сложных проектов (cassandra, hazelcast, kafka например) на jvm, где этот подход основной, и даже там для сложных проектов спринг выкидывается. там не будет никаких монструозных фреймворков, т.к. они бесполезны, а лишние уровни абстракции съедают ресурсы и запутывают без того сложный код. что имеем в итоге? - сложный и пергруженный инстурмент для простых типовых задач. нелепо же.
Обсуждают сегодня