4. Архитектура ПО и принципы проектирования
Что такое принципы SOLID?
MiddleОтвет:
- S: Single Responsibility (Принцип единственной ответственности)
- O: Open/Closed (Принцип открытости/закрытости)
- L: Liskov Substitution (Принцип подстановки Барбары Лисков)
- I: Interface Segregation (Принцип разделения интерфейса)
- D: Dependency Inversion (Принцип инверсии зависимостей) Руководство по принципам SOLID
Что такое CQRS?
MiddleОтвет: Command Query Responsibility Segregation — паттерн, разделяющий операции чтения (Query) и записи/обновления (Command) данных.
В чём разница между Entity и Value Object в DDD?
MiddleОтвет:
- Entity (Сущность): Объект, обладающий уникальным идентификатором (ID). Сущность остается собой, даже если её свойства меняются со временем (например, User).
- Value Object (Объект-значение): Объект, определяемый только совокупностью своих атрибутов (без ID). Они иммутабельны (неизменяемы). Два объекта-значения с одинаковыми свойствами считаются эквивалентными (например, Money, Address).