전체 글(33)
-
Yarn Workspaces로 모노레포 관리하기
1. Yarn Workspaces란?Yarn Workspaces는 모노레포(monorepo) 환경에서 여러 패키지를 하나의 리포지토리에서 효율적으로 관리할 수 있도록 도와주는 Yarn의 기능입니다. 2. 모노레포란?모노레포는 여러 패키지나 프로젝트를 단일 리포지토리에서 관리하는 구조입니다. 이를 통해 의존성 공유 및 재사용, 일관된 코딩 스타일 및 빌드 도구 설정, 변경 사항에 대한 통합 관리가 가능합니다. 3. Yarn Workspaces 설정하기Workspaces를 설정하려면 package.json에서 workspaces 필드를 정의해야 합니다. 아래와 같이 직접 구성해도 되지만, yarn init을 할 때 -w 옵션을 추가하면 package.json 설정과 함께 packages 폴더를 생성합니다.y..
2024.12.16 -
패키지 매니저 - pnpm
pnpm이란?pnpm은 npm, Yarn과 같은 패키지 매니저로, 의존성을 설치하고 관리하는 데 사용됩니다. 하지만 pnpm은 기존 패키지 매니저들이 가진 문제를 해결하기 위해 독특한 방식을 도입했습니다. pnpm의 등장 배경JavaScript 생태계에서 npm은 가장 오래되고 널리 사용되는 패키지 매니저입니다. 하지만 npm의 의존성 관리 방식은 프로젝트마다 동일한 의존성을 반복적으로 저장하여 디스크 공간 낭비와 설치 속도 저하를 초래했습니다. 이를 개선하기 위해 Yarn이 등장했지만, Yarn 역시 의존성 중복 문제를 완전히 해결하지 못했고, 설치 속도나 모노레포 지원 측면에서 아쉬움이 있었습니다.pnpm은 이러한 한계를 극복하기 위해 개발되었습니다. 핵심 아이디어는 하드 링크(hard link)를 ..
2024.12.15 -
패키지 매니저 - Yarn
Yarn이란?Yarn은 JavaScript 생태계에서 널리 사용되는 패키지 매니저로, Facebook에서 2016년에 처음 발표되었습니다. 패키지 매니저는 프로젝트에서 필요한 외부 라이브러리를 설치하고 관리하며, 종속성과 버전을 효율적으로 처리해주는 도구입니다. Yarn은 npm(Node Package Manager)의 한계를 보완하기 위해 등장했으며, 빠른 속도와 안정성을 목표로 개발되었습니다.Yarn의 등장 배경2016년 당시, npm은 JavaScript 개발의 표준 패키지 매니저로 자리 잡았지만, 몇 가지 단점이 지적되었습니다:속도 문제: npm은 설치 속도가 느리고, 동일한 패키지를 다시 설치할 때도 많은 시간이 소요되었습니다.종속성 관리의 불안정성: npm의 종속성 트리가 복잡해질수록 충돌과 ..
2024.12.15