목록 보기
우리는 왜 공통 라이브러리를 만들기 시작했나
프론트엔드

우리는 왜 공통 라이브러리를 만들기 시작했나

마켓컬리
마켓컬리
2022년 1월 4일

두줄요약

반복 구현을 줄이고 기술 표준을 만들기 위해 공통 라이브러리 도입 배경과 기준을 정리했습니다. Lerna 모노레포와 npm으로 add-separator를 배포하고 문서화·리뷰·테스트 원칙을 세웠습니다.

문제 상황

  • 여러 프로젝트·조직에서 유사 기능을 개별 구현·관리하며 발생하는 반복 대응과 재발 비용
  • 파편화된 물류 도메인 및 프런트엔드 기술 스택의 규격화 필요성

선택 이유

  • 외부 라이브러리의 개발 시간 단축·동시 적용·커뮤니티 활용 이점과 무거운 의존성·수정·폐기 위험 공존
  • 작은 공통 기능은 내부 제작, 더 큰 비용이 필요한 기능은 외부 라이브러리 활용이라는 기준
  • 컨텍스트 스위칭 감소, 확장·신속 대응, 버스 팩터 개선을 위한 기술 표준 지향

구조와 흐름

  • React boilerplate를 신규 프로젝트에 적용하고, Lerna 모노레포와 npm 패키지로 공통 기능 관리·배포
  • 숫자 구분자 기능 add-separator를 첫 공통 라이브러리 대상으로 선정
  • 문서화·코드 리뷰·테스트 스위트를 코드베이스 신뢰 원칙으로 설정

성능/운영 포인트

  • TDD와 작은 기능 조합으로 숫자 검증·문자열 변환·길이 검증·분리·구분자 추가 단계 구성
  • 정규식 대신 단계적 구현을 선택해 확장·수정 용이성 고려
  • 측정 조건에 따라 달라질 수 있으나 정규식 함수 대비 평균 약 20% 높은 성능 측정치

다음 읽기

#React 주제를 이어서 읽기

우리는 왜 공통 라이브러리를 만들기 시작했나

반복 개발을 줄이기 위해 외부 라이브러리와 내부 공통 라이브러리의 선택 기준을 정리했습니다. Lerna 모노레포와 TDD로 숫자 구분자 패키지를 구현하고 신뢰 원칙을 세웠습니다.

마켓컬리
마켓컬리
프론트엔드

댓글 0개

댓글을 작성하려면 로그인이 필요합니다.

댓글을 불러오는 중...