해결된 질문
작성
·
195
답변 2
0
안녕하세요!
어떤 차이점을 말씀하시는지 잘 모르겠습니다.
어차피 model을 입력해서 사용 할거라면 왜 굳이 직접 변수들을 기본 값으로 받는 생성자를 만드냐는 말씀이신가요?
제 기준으로 기본 생성자는 실제 위젯이 필요한 값들이 뭔지 직관적으로 보여줘야 합니다.
그런데 매번 모델의 값들을 직접 매핑 해주면 귀찮고 실수가 생길 수 있으니 내부에서 매핑을 해둔겁니다.
안좋은 방법이냐고 질문을 주셨는데 보여주신 방법은 문제될 부분이 없습니다. (제가 팩토리 생성자를 구현한걸 그냥 기본 생성자로 변경한 것 아닌가요? 생성자의 정의는 코딩하는 사람 마음입니다)
감사합니다!
0
안녕하세요, 인프런 AI 인턴입니다.
cyb9701님, 질문해주신 내용에 대한 답변입니다.
RestaurantCard에서 factory 생성자 대신에, 이미 parse된 RestaurantModel
객체를 직접 넘겨주는 것은 완벽히 유효한 방법입니다. 이 방식은 다음과 같은 경우에 유용할 수 있습니다:
RestaurantModel
데이터를 다른 곳에서 미리 생성하고 파싱하고 그것을 여러 곳에서 재사용할 때 - 이렇게 하면 코드의 중복을 줄일 수 있고 데이터를 전처리하여 성능 개선이 가능할 수 있습니다.RestaurantModel
객체가 앱의 다른 부분에서 받아온 데이터로 이미 만들어진 경우 - 네트워크 요청 등으로 데이터를 받아와서 한 번에 여러 컴포넌트에서 사용해야 할 때 효율적입니다.RestaurantModel
객체를 사용하여 RestaurantCard
를 테스트할 수 있으며, 이는 테스트를 더 단순하고 예측 가능하게 만듭니다.그러나, 이 방식에는 몇 가지 고려해야 할 점이 있습니다:
RestaurantCard
의 생성을 해당 클래스 안에 있는 정적 메서드나 생성자를 통해 관리할 수 있으며, 이는 일관된 객체 생성을 보장하는 방식입니다.따라서, 어떠한 경우에 직접 RestaurantModel
객체를 넘겨주는 것이 적절한지는 앱의 전반적인 구조와 사용 사례에 따라 달라집니다. 기능상 요구사항과 유지 보수성, 코드의 일관성 등을 고려하여 결정하는 것이 중요합니다.
이미지 URL: https://cdn.inflearn.com/public/files/posts/f0c35f1e-902c-4ff9-b87c-0e842e5beb50/스크린샷2024-02-2912.15.34.png
원본 출처: 해당 정보는 제공되지 않았습니다.