Встречается на собеседованиях • сегодня
Что значит D в SOLID
D в SOLID означает Dependency Inversion Principle (DIP) — принцип инверсии зависимостей. Он гласит:
- Модули верхнего уровня не должны зависеть от модулей нижнего уровня. Оба должны зависеть от абстракций.
- Абстракции не должны зависеть от деталей. Детали должны зависеть от абстракций.
Пример на Python:
python
from abc import ABC, abstractmethod
class Database(ABC): # Абстракция
@abstractmethod
def save(self, data):
pass
class MySQL(Database): # Деталь
def save(self, data):
print(f"Saving {data} to MySQL")
class UserService: # Модуль верхнего уровня
def __init__(self, db: Database): # Зависит от абстракции
self.db = db
def create_user(self, user):
self.db.save(user)
# Использование:
service = UserService(MySQL()) # Инверсия зависимости
service.create_user("John")
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы