Упоминается, что класс данных Kotlin предназначен для хранения данных.Это эквивалентно структуре данных.Как таковой, он не должен иметь никакого метода поведения.В чистом коде реализация метода поведения в классе данных нарушила бы многие принципы, а именно, SRP, OCP, ...
Мне было интересно, рассматриваются ли методы fromJson
и toJson
как метод поведения.Если это так, то где я должен реализовать эти методы в своем коде?
Я использую класс данных Kotlin для хранения User, Product и т. Д. В своей якобы чистой архитектуре и чистом коде, который я изучаю, яограничил эти классы данных углом для хранения только данных домена.
Я пытался найти информацию об этом, но я не могу найти никого, кто бы говорил о классе данных и этих методах.
Воткод, который я представил.Должно быть что-то вроде этого.
data class User(val id: String, val name: String) {
fun toJson(): Json {}
fun fromJson(json: Json): User {}
}
Или я должен иметь другой класс, отвечающий за реализацию toJson и fromJson?