
프론트엔드
우리는 왜 공통 라이브러리를 만들기 시작했나
두줄요약
반복 구현을 줄이고 기술 표준을 만들기 위해 공통 라이브러리 도입 배경과 기준을 정리했습니다. Lerna 모노레포와 npm으로 add-separator를 배포하고 문서화·리뷰·테스트 원칙을 세웠습니다.
문제 상황
- 여러 프로젝트·조직에서 유사 기능을 개별 구현·관리하며 발생하는 반복 대응과 재발 비용
- 파편화된 물류 도메인 및 프런트엔드 기술 스택의 규격화 필요성
선택 이유
- 외부 라이브러리의 개발 시간 단축·동시 적용·커뮤니티 활용 이점과 무거운 의존성·수정·폐기 위험 공존
- 작은 공통 기능은 내부 제작, 더 큰 비용이 필요한 기능은 외부 라이브러리 활용이라는 기준
- 컨텍스트 스위칭 감소, 확장·신속 대응, 버스 팩터 개선을 위한 기술 표준 지향
구조와 흐름
- React boilerplate를 신규 프로젝트에 적용하고, Lerna 모노레포와 npm 패키지로 공통 기능 관리·배포
- 숫자 구분자 기능
add-separator를 첫 공통 라이브러리 대상으로 선정 - 문서화·코드 리뷰·테스트 스위트를 코드베이스 신뢰 원칙으로 설정
성능/운영 포인트
- TDD와 작은 기능 조합으로 숫자 검증·문자열 변환·길이 검증·분리·구분자 추가 단계 구성
- 정규식 대신 단계적 구현을 선택해 확장·수정 용이성 고려
- 측정 조건에 따라 달라질 수 있으나 정규식 함수 대비 평균 약 20% 높은 성능 측정치


