Не означает ли «инъекция зависимостей» только с использованием параметризованных конструкторов и публичных сеттеров?
В статье Джеймса Шор приведены следующие примеры сравнения .
Конструктор без инъекции зависимости:
public class Example {
private DatabaseThingie myDatabase;
public Example() {
myDatabase = new DatabaseThingie();
}
public void doStuff() {
...
myDatabase.getData();
...
}
}
Конструктор с инъекцией зависимостей:
public class Example {
private DatabaseThingie myDatabase;
public Example(DatabaseThingie useThisDatabaseInstead) {
myDatabase = useThisDatabaseInstead;
}
public void doStuff() {
...
myDatabase.getData();
...
}
}