Recent Posts
Recent Comments
반응형
«   2025/08   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
Archives
Today
Total
관리 메뉴

오늘도 공부

시리즈 1편 - 개발자 필수 기호 시리즈 1편 본문

개발상식

시리즈 1편 - 개발자 필수 기호 시리즈 1편

행복한 수지아빠 2025. 8. 19. 11:47
반응형

📝 개발자 필수 기호 시리즈 1편

버전 관리에서 자주 보는 ^와 ~, 그리고 그 친구들

코드를 짜다 보면 package.json 같은 파일에서 이런 걸 많이 보셨을 겁니다:

"dependencies": {
  "react": "^18.2.0",
  "next": "~14.2.3"
}

👀 “어? 숫자 앞에 붙은 캐럿(^) 이랑 틸드(~) 이게 뭐지?”
처음 보면 이 기호들이 무슨 비밀 암호처럼 보이죠. 사실 이건 패키지 버전을 관리하는 약속입니다. 오늘은 바로 이 친구들을 제대로 알아봅시다.


1. 캐럿 (Caret) ^

  • 의미: 메이저 버전은 고정, 마이너·패치는 자유롭게 업데이트
  • 예시:→ >=1.2.3 이면서 <2.0.0 까지 허용
  • ^1.2.3
  • 즉, 1.2.4, 1.3.0, 1.9.9 같은 건 OK
  • 하지만 2.0.0 은 ❌ (메이저 버전은 안 올려줌)

👉 npm 기본값이기도 합니다. 그래서 그냥 npm install react 하면 자동으로 ^버전 붙습니다.


2. 틸드 (Tilde) ~

  • 의미: 마이너 버전까지 고정, 패치만 자유롭게 업데이트
  • 예시:→ >=1.2.3 이면서 <1.3.0 까지 허용
  • ~1.2.3
  • 즉, 1.2.4, 1.2.9 는 OK
  • 하지만 1.3.0 부터는 ❌ (마이너 버전 넘으면 안 됨)

👉 조금 더 보수적인 선택을 하고 싶을 때 쓰입니다.


3. 비교: ^1.2.3 vs ~1.2.3

표기 허용 범위 예시 허용 예시 불가

^1.2.3 1.x.x 까지 1.9.9 2.0.0
~1.2.3 1.2.x 까지 1.2.9 1.3.0

👉 한마디로 정리하면:

  • ^ = 널널한 친구 (마이너 업데이트 허용)
  • ~ = 신중한 친구 (패치 업데이트만 허용)

4. 그 밖에 자주 쓰는 기호들

  • 정확히 버전 고정:→ 무조건 1.2.3 만 설치 (안정성은 높지만 업데이트 놓치기 쉬움)
  • 1.2.3
  • 비교 연산자:
    • >=1.2.3 → 1.2.3 이상
    • <=2.0.0 → 2.0.0 이하
    • >1.0.0 <2.0.0 → 1 버전대만 허용
  • Latest 태그:→ 최신 안정 버전을 바로 설치
  • npm install react@latest

5. 실전 꿀팁

  • 팀 프로젝트에서는 보통 ^를 쓰지만,
    라이브러리처럼 안정성이 중요한 패키지는 ~ 또는 고정 버전을 씁니다.
  • CI/CD 환경에서는 package-lock.json / yarn.lock 이 버전을 딱 고정해주니, 실제 배포는 안전하게 돌아갑니다.

📌 기억 팁

  • ^ : ^ (하늘 위로 뾰족)마이너까지는 올려도 된다!
  • ~ : 물결(파도)살짝만 허용, 패치만 괜찮아!

✨ 마무리

오늘은 개발자라면 매일 마주치는 ^와 ~의 정체를 풀어봤습니다.
다음 편에서는 언더바(_), 달러($), 백틱(`) 같은 코드 작성에서 자주 만나는 기호들을 파헤쳐 보겠습니다.


 

반응형