아카이브사이트맵
© 2026 Rayon. All rights reserved.
DevDay
아티클랭킹스페이스채용
컬리 favicon컬리

컬리, 공통 라이브러리 구축으로 개발 효율 UP!

by DD
2022-01-04
4년 전
조회수 6

컬리의 급성장에 따라 코드 중복 및 유지보수의 어려움 발생

공통 라이브러리 구축을 통해 코드 재사용성 및 개발 생산성 향상

Lerna를 활용한 모노레포 구성 및 TDD 기반의 개발 방법론 도입

공통 라이브러리 구축의 기술적 배경

컬리는 급증하는 요구사항에 대응하기 위해 공통 라이브러리 구축을 결정했다. 코드 중복을 줄이고, 유지보수성을 높이기 위함이다. 따라서, 모노레포를 구성하여 여러 패키지를 효율적으로 관리하고, Lerna를 통해 패키지 배포 및 버저닝을 간소화했다.

외부 vs 내부 라이브러리 선택의 딜레마

외부 라이브러리는 개발 시간 단축과 다수 애플리케이션 적용의 장점이 있다. Day.js와 같은 널리 사용되는 라이브러리를 예시로 들 수 있다. 반면, 신뢰성 문제, 수정의 어려움, 유료화 가능성 등의 위험이 존재한다. 따라서, 내부 라이브러리 구축을 통해 신뢰도를 높이고 유연한 대응을 가능하게 했다.

TDD 기반의 공통 라이브러리 개발

컬리는 TDD(Test-Driven Development)를 통해 공통 라이브러리를 개발했다. 정규식 대신, 구분자 추가 기능을 구현하여 성능을 개선했다. 구체적으로, TDD를 통해 코드 품질을 높이고, 유지보수성을 확보했다. 결과적으로, 20% 성능 향상을 달성했다.

우리는 왜 공통 라이브러리를 만들기 시작했나
중급
아키텍처
React
Lerna
npm
JavaScript
Frontend
원문 읽기
원문 읽기

댓글 0

첫 번째 댓글을 남겨보세요!

관련 추천 글

Cloudflare 장애, npm 공격, React Router 소식까지!

레딧 로고

2025년 프론트엔드, React 인프라화, Next.js 보안, Rust 툴체인 부상

NHN클라우드 로고

AI 스타트업 UI의 과잉을 정면으로 풍자한 React 라이브러리

해커뉴스 로고

`npm run dev`의 마법, 그 숨겨진 비밀을 파헤치다!

데브투 로고

클릭하면 윙크하는 React 커서 컴포넌트

프로덕트 헌트 로고

JavaScript vs TypeScript, 당신의 선택은?

데브투 로고
컬리 favicon컬리
중급
아키텍처
React
Lerna
npm
JavaScript
Frontend

관련 추천 글

Cloudflare 장애, npm 공격, React Router 소식까지!

레딧 로고

2025년 프론트엔드, React 인프라화, Next.js 보안, Rust 툴체인 부상

NHN클라우드 로고

AI 스타트업 UI의 과잉을 정면으로 풍자한 React 라이브러리

해커뉴스 로고