Простая инверсия инфраструктуры управления для Java / Scala - PullRequest
5 голосов
/ 05 мая 2010

Я ищу простой в использовании контейнер IoC для приложений с графическим интерфейсом, написанный на Java / Scala.

Он должен поддерживать Соглашение над Конфигурацией, управление жизненным циклом, конфигурирование в коде (желательно без какого-либо XML-кода) и максимально возможную проверку зависимостей во время компиляции. Нечто похожее на Autofac было бы идеально.

Ответы [ 4 ]

12 голосов
/ 05 мая 2010

Похоже, вам нужно что-то вроде Google Guice .

Там было довольно много IoC-контейнеров для Java (например, PicoContainer ), но они всебыл в тени весны в течение многих лет.Впрочем, для ваших нужд весна, вероятно, немного непосильная.

Guice возобновил здоровую конкуренцию.

5 голосов
/ 15 августа 2011

Если вы идете чистым Скала, вы можете взглянуть на Синди: http://aloiscochard.github.com/sindi

Примечание: я являюсь автором проекта Синди

3 голосов
/ 05 мая 2010

Google Guice довольно хорош:

http://code.google.com/p/google-guice/

У вас также нет никакого XML-мусора, вы можете просто создать модуль программно и написать все вместе, например, связать интерфейс (TransactionLog) с классом реализации (DatabaseTransactionLog):

public class BillingModule extends AbstractModule {
  @Override 
  protected void configure() {
    bind(TransactionLog.class).to(DatabaseTransactionLog.class);
  }
}
1 голос
/ 05 мая 2010

PicoContainer - это полностью встраиваемый контейнер с полным обслуживанием и инверсией управления (IoC) для компонентов, соответствующих шаблону внедрения зависимости. Проект начался в 2003 году и впервые ввел автоматическую прокладку Constructor Injection. Это также с открытым исходным кодом и, следовательно, бесплатное использование. Лицензия BSD, поэтому вы можете безопасно использовать ее с коммерческим или другим программным обеспечением с открытым исходным кодом.

...