Почему нужно использовать DTO Data Transfer Object, термин, который для разработчиков на статических языках является чем-то самим разумеющимся, но вот остальные его могут не знать (даже если пользуются). Хотя в эпоху интеграций, фронтенд-бекенд, сервис-сервис, очереди, это крайне важная конструкция. DTO это очень промежуточный объект между моделью в вашем коде и данными, которые вы отдаете наружу или принимаете от внешней системы. ⁃ Модель => DTO => json/protobuf/sql/... ⁃ json/protobuf/sql/... => DTO => Модель Нафига? Почему не сразу преобразовывать из, допустим, json в нашу модель или наоборот? Тем более во всех экосистемах есть механизмы, которые позволяют упаковывать любые объекты, задавая правила преобразования через метаданные, аннотации или еще как-то. Пример из Java: @Entity public class User { @Id private Long id; @JsonIgnore // приходится скрывать private String passwordHash; @JsonProperty("created_at") private LocalDateTime createdAt; // getters/setters ..
Почему нужно использовать DTO
21 ноября 202521 ноя 2025
3
3 мин