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