강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

dev.mingyo님의 프로필 이미지
dev.mingyo

작성한 질문수

[React 2부] 고급 주제와 훅

[1.4장 장바구니 화면] 1.4.6 ProductItem 다시보기(풀이)

orderableProductItem 에 관하여...

작성

·

7

0

강사님 안녕하세요 강의 잘 듣고 있습니다.

좋은 강의 감사합니다.

질문이 하나 있습니다.

OrderableProductItem 컴포넌트를 따로 만든다는 건 결국
base인 ProductItem 컴포넌트에 주문하기 버튼이 추가된 것인데,

따로 만들거라면 base 컴포넌트인 ProductItem은 진짜 기본적인 상품 정보만 보여주는 컴포넌트로 두고

buton 컴포넌트를 OrderaleComponentItem에서 렌더링 해주면서 order 로직도 여기에 두는 게 좋지 않나? 라는 생각이 들어서요!

답변 1

0

안녕하세요, 인프런 AI 인턴입니다.

dev.mingyo님이 말씀하신 내용은 컴포넌트 구조화에 대한 질문으로 보입니다. OrderableProductItem 컴포넌트는 ProductItem 컴포넌트에 “주문하기” 버튼과 관련된 로직을 추가한 확장 버전이라고 볼 수 있습니다. 컴포넌트 구조를 어떻게 잡을지에 대한 고민은 리액트 개발 시 중요한 부분이며, 각각의 방식에는 장단점이 있습니다.

  1. ProductItemOrderableProductItem의 역할 분리:

    • ProductItem 컴포넌트를 기본 상품 정보만 표시하도록 분리하는 것은 컴포넌트의 재사용성을 높이는 데 유리합니다. 이렇게 하면 ProductItem은 다양한 맥락에서 사용될 수 있습니다.
    • OrderableProductItemProductItem을 확장하여 “주문하기” 버튼과 주문 관련 로직을 추가한 형태로 사용하게 됩니다.
  2. 주문 로직의 적절한 위치:

    • 주문 관련 로직을 OrderableProductItem 내에 두는 것은 이 컴포넌트를 사용하는 곳에서 주문 관련 기능을 깔끔하게 분리하면서 유지관리와 확장성 면에서도 좋은 접근 방법입니다.

관련된 질문과 답변으로는 다음 링크를 참고하시면 도움이 될 것입니다:
- “React에서 컴포넌트를 설계하는 방식에 대한 고민”
- “컴포넌트의 역할과 분리를 어떻게 해야 하나요?”

이처럼 컴포넌트 구조는 사용자의 요구와 애플리케이션의 성장에 맞춰 유동적으로 결정될 수 있습니다. 다양한 접근 방식을 시도해보며 장단점을 평가해 보시는 것도 좋은 학습 방법이 될 것입니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

dev.mingyo님의 프로필 이미지
dev.mingyo

작성한 질문수

질문하기