Джин использует отложенное связывание для создания всех экземпляров таким образом, как настроено приложение.Таким образом, вы можете использовать отложенное связывание для выполнения этой работы.
Но: с помощью Gin вы можете настроить, должен ли экземпляр быть одноэлементным или прототипом.Если вы хотите сделать это с помощью отложенного связывания, вы должны написать больше кода.
Аннотации DI более известны, и каждый, кто знает DI, знает о @Inject.Это делает код более читабельным.
Отложенное связывание работает только в GWT, и если вы используете Отложенное связывание для связи, то у вас возникают проблемы с непосредственным и быстрым выполнением модульных тестов в jvm.Если вы используете Gin, вы можете использовать Guice или связывать свои объекты вручную, чтобы протестировать свой код в jvm.
Я думаю, это основные преимущества Gin.