카
카카오엔터테인먼트FE
July 31, 20221회
합성 컴포넌트로 재사용성 극대화하기
간단 소개
합성 컴포넌트 패턴을 사용하여 재사용성과 유연성을 극대화한 Dialog Modal 구현 사례를 소개하고, prop 기반 방식과의 비교를 통해 장단점을 분석합니다.
AI Summary
- 서론: 프론트엔드 개발에서 컴포넌트 분리 기준과 재사용성의 중요성을 강조하며, Atomic Design Pattern 적용 사례를 소개.
- Atomic Design Pattern은 컴포넌트별 역할 분리 및 높은 재사용성을 제공.
- Dialog Modal 구현 시 재사용성을 높이기 위한 고민에서 시작.
- 문제점: prop 기반 컴포넌트의 한계와 합성 컴포넌트 도입 배경.
- 최초 구현은 prop 기반으로 간단하게 구현했지만, 추가 요구사항 발생 시 prop이 과도하게 늘어나는 문제 발생.
- prop 기반 방식은 컴포넌트 위치가 고정되어 유연성이 떨어지고, 사이드 이펙트 발생 및 유지보수 어려움 증가.
- 해결책: 합성 컴포넌트 패턴 적용 및 효과.
- 합성 컴포넌트 패턴은 컴포넌트를 여러 집합체로 분리하여 조합해 사용, 높은 재사용성과 유연성을 제공.
- 서브 컴포넌트(DialogTitle, DialogLabelButton 등)와 메인 컴포넌트(DialogMain)를 분리하여 구현.
- 메인 컴포넌트에서 서브 컴포넌트의 위치를 제어하고, 최종적으로 렌더링.
- 합성 컴포넌트 방식은 prop 방식보다 직관적이고 유연하게 요구사항에 대응 가능.
- 결론: 합성 컴포넌트의 장점과 한계, 그리고 적용 권장.
- 합성 컴포넌트는 재사용성과 유연성이 뛰어나 복잡한 요구사항에 적합.
- 일반적인 상황에서는 prop 방식이 더 용이할 수 있으며, 상황에 따라 적절한 패턴 선택이 중요.
Next Feeds
GPS 정보로 교통정보 생성하는 방법 - 13편 – 특정 시간대에 특정 도로의 교통정보를 계산해보자
GPS 정보를 활용하여 특정 시간대, 특정 도로의 교통정보를 생성하는 방법에 대한 설명.
GPS교통정보링크버텍스속도 계산
2022. 7. 28.
티맵모빌리티
자바스크립트의 새로운 기능들
ES2022의 새로운 자바스크립트 기능과 향후 추가될 기능들을 살펴보고, 활용 방안을 제시합니다.
ES2022JavaScriptTop-level awaitClass FieldsError Cause
2022. 7. 28.
카카오엔터테인먼트FE
자바스크립트의 새로운 기능들
ES2022의 주요 자바스크립트 기능(Top-level await, Array.at(), Object.hasOwn(), Error Cause 등)과 클래스 필드, 추가 예정 기능 소개.
ES2022JavaScriptTop-level awaitArray.at()Object.hasOwn()
2022. 7. 28.
카카오엔터테인먼트FE
Player Unknown’s Bug: 원인 모를 문제를 기록하면 성장할 수 있나요?
원인 불명의 문제 기록과 공유를 통해 조직의 심리적 안정감을 높이고, 문제 해결 능력을 향상시키는 과정을 공유합니다.
프론트엔드디버깅회고지식 공유문제 해결
2022. 7. 26.
AB180
카카오페이 주니어 서버 개발자의 이모저모
카카오페이 주니어 서버 개발자들의 입사 경험, 개발 문화, 성장 과정 및 회사 생활에 대한 인터뷰.
카카오페이주니어 개발자서버 개발개발 문화성장
2022. 7. 26.
카카오페이

폼 데이터를 우아하게 관리하는 방법
fp-ts 라이브러리와 함수형 프로그래밍을 사용하여 React 폼 데이터 상태 관리를 우아하게 처리하는 방법을 소개합니다.
fp-tsReact함수형 프로그래밍폼 상태 관리커스텀 훅
2022. 7. 26.
데브시스터즈