Встречается на собеседованиях • сегодня

Что такое D в SOLID

Dependency Inversion Principle (DIP) – принцип инверсии зависимостей. Он гласит, что модули верхнего уровня не должны зависеть от модулей нижнего уровня. Оба должны зависеть от абстракций. Также абстракции не должны зависеть от деталей, а детали – от абстракций.

Пример:

java
// Абстракция (интерфейс)
interface Database {
    void saveData(String data);
}

// Деталь реализации (нижний уровень)
class MySQLDatabase implements Database {
@Override
public void saveData(String data) {
System.out.println("Saving to MySQL: " + data);
}
}

// Модуль верхнего уровня зависит от абстракции
class DataService {
private Database database;

text
public DataService(Database database) {
    this.database = database;
}

void save(String data) {
    database.saveData(data);
}

}

text
Такой подход позволяет легко менять реализацию (например, на PostgreSQL) без изменения кода `DataService`.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы