inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

Flutter 중급 1편 - 클린 아키텍처

11 Freezed

Freezed 질문드립니다.

829

dev+1

작성한 질문수 1

0

JsonSerializable은 상속이 가능해서

class User {
final id;
final nickname;
...
}

class UserDetail extends User {
final age;

UserDetail({super.id,... this.age})
}

이런식으로 처리가 가능한데, Freezed는 상속이 불가능하더라구요. 실무에서 위처럼 상속으로 모델을 사용하는경우가 별로없을까요?

flutter ios android

답변 1

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴이에요.

Freezed는 클래스 상속이 불가능하고, 불변성을 보장하는 값 객체를 생성하는 패키지입니다. 일반적으로 데이터 모델 간의 관계는 객체 합성을 이용하여 구성합니다. 상속은 다양한 구조와 동작을 가능하게 해주지만, 그만큼 복잡한 상속 구조가 필요하고 유지보수가 어려워질 수 있습니다.

Freezed는 값 객체를 생성하는 패키지로, 객체 합성을 이용하여 모델 간의 관계를 구성할 수 있습니다. 만약 일부 속성이 추가되었다고 해도, 수정하지 않고 합성된 객체만 수정하면 됩니다. 이렇게 구현된 모델은 코드의 안정성도 높이고, 유지보수성도 개선됩니다.

따라서 Freezed를 사용하여 상속 대신, 객체 합성을 이용하여 모델을 구성하는 것이 일반적입니다. 그러나 프로젝트나 상황에 따라 객체 상속이 필요한 경우도 있을 수 있으니, 상황에 따라 다르게 구현하시면 됩니다.

답변이 도움이 되셨기를 바랍니다. 감사합니다.

MVVM, 클린 아키텍처 관련 질문 있습니다.

0

85

2

가끔씩 ui가 깨지는? 현상이 있어서 질문드립니다.

0

91

1

freezed 3.0 대응된 코드 깃헙에도 업데이트 해주실 수 있으신가요?

0

176

3

sealed class 사용시 기능은 동작하지만 Radio위젯에 선택 표시가 안되는 부분 질문

0

117

2

sealed class 사용시 The getter 'orderType' isn't defined for the type 'NoteOrder<dynamic>' 오류

0

92

2

유즈케이스 관련하여 질문 드립니다.

0

91

1

mockito사용시 오류 해결법

1

123

2

sealed class 사용 문의2

0

75

2

sealed class 사용 문의

0

116

2

freezed3.0에서 build시 when생성되지 않습니다.

0

263

2

Try implementing the missing methods, or make the class abstract. 문제해결 공유

0

236

2

This is likely caused by a misconfigured builder definition. 오류 해결 방법

1

316

3

강의 화면이 안보여요

0

133

3

Flutter에서 추천하는 Navigator, Router

0

322

2

The following ProgressEvent object was thrown resolving an image codec: [object ProgressEvent]

0

324

3

event와 ui_event

0

211

1

코드 색깔 관련 질문

0

207

1

Photo.fleezed.dart,photo.g.dart삭제시 에러

0

203

2

sealed class 적용 시...

0

325

1

클린 아키텍처 질문

0

307

1

sealed class 데이터 접근

0

323

1

서버에서 데이터를 가져와서 사용하는 경우...

0

230

1

뷰/뷰모델 작성 질문

0

269

1

freezed JsonKey 사용 예시 공유

1

789

1