똑같은 삽질은 2번 하지 말자
peerDependencies와 dependencies 본문
개요
밑의 두가지 요소의 차이점은 무엇일까?
- dependencies
- peerDependencies
어떤 기사에서 예를든 총과 탄창 그리고 탄의 관계를 보면 조금더 이해하기 쉬운데

예를 들면
총은 탄창이 없으면 쏠 수 없다. 즉, 탄창이 없으면 총은 제 기능을 못하는 것이다.
그에 비해 탄창은 총이 없어도 탄을 넣는게 가능하다. 즉, 탄창은 총이 없어도 자기의 기능을 완수하고 있는것이다.
단지 탄창은 원래의 역할인 총에 장착되어 총을 쏠 수 있게 하는것이기 때문에 탄창은 총을 위해 존재한다고도 말할 수 있다.
즉,
- 총은 탄창이 없으면 쓸 수 없다.
- 탄창은 총이 없어도 쓸 수 있지만, 총에 쓰여짐으로써 그 존재 의미가 있다.
이 관계가
- dependencies (총의 입장에서 탄창은 dependencies)
- peerDependencies(탄창의 입장에서 총은 peerDependencies)
총의 package.json
"dependencies": {
"탄창": "^1.0.0"
}
탄창의 package.json
"peerDependencies": {
"총": "^1.0.0"
}
Comments