BonBonSlick
@BonBonSlick
Vanilla Full Stack Web Architector

Когда стоит применять DTO, а когда нет?

Не совсем ясно и понятно когда его стоит использовать и когда действительно надо это применять.
  • Вопрос задан
  • 265 просмотров
Решения вопроса 2
qonand
@qonand
Software Engineer
DTO предназначается для передачи множества данных между слоями приложения (т.е. между относительно независимыми частями)
Ответ написан
@AlexHell
в правильной архитектуре по-хорошему - надо применять при каждой (условно) передаче блока данных между слоями, но на практике зачастую можно реже

например тулза для java mapstruct.org

и там есть пример

public class Car {

private String make;
private int numberOfSeats;
private CarType type;

//constructor, getters, setters etc.
}

public class CarDto {

private String make;
private int seatCount;
private String type;

//constructor, getters, setters etc.
}

т.е. вроде бы передается почти весь Car объект (в котором могут быть и методы) с помощью промежуточного CarDto - это может быть на стыке между слоем чтения данных из БД в слой маоделей приложения, или между 2мя независимыми слоями вроде модели данных игрока в игре и всех его юнитов и передаче этого в AI метод расчитывающий поведение бота
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы