> 웹 프론트엔드 > JS 튜토리얼 > semver `.0`으로 시작

semver `.0`으로 시작

Susan Sarandon
풀어 주다: 2025-01-06 08:18:40
원래의
908명이 탐색했습니다.

Starting with semver `.0`

알겠습니다. 새 패키지를 출시합니다... 라이브러리에 변경이 필요한지 불확실합니다. 그래서 당신은 "지금 v0을 출시하고 나중에 충분히 준비되면 v1을 출시해야 할 것 같습니다"라고 말합니다. 이 글은 처음부터 v1을 출시하도록 설득하려고 합니다.

v1을 출시하는 데는 몇 가지 이유가 있습니다.

  • SemVer 0.x 버전이 다릅니다
  • 자신감을 갖고 진지하게 받아들이세요
  • 프로젝트 강점

제가 보기에 v0의 다양한 이유는 다음과 같습니다.

  • 불확실성
  • 게으름
  • 이해부족/실력 문제

...

그러나 semver 저장소(https://github.com/semver/semver/issues/221)에서 이 흥미로운 이슈를 읽은 후 내 의견이 바뀌었습니다. 버전 0.x를 사용하면 불안정하다는 뜻입니다. 사실이지만 일부 라이브러리는 불안정

합니다.

불안정하다는 것은 무엇을 의미하나요? 라이브러리가 변경되는 것은 아닙니다(왜냐하면 이러한 변경은 계획할 수 있고 주요 버전 번호로 표시할 수 있기 때문입니다). 불안정성은 버그의 확산과 관련이 있습니다.

버그는 다음과 같습니다.

  • 일반적인 소프트웨어 버그 또는
  • 마이너 또는 패치 버전에서 주요 변경 사항이 발표되었습니다.

참고: 이 둘 사이에는 약간의 차이가 있습니다. 많은 버그는 단지 API 간의 불일치 또는 비호환성입니다.

그렇다면 귀하의 도서관이 소비자를 위해 파손될 가능성은 얼마나 됩니까? 오직 라이브러리 관리자만이 이 질문에 답할 수 있으며, 이는 시간이 지나면서 소비자가 제기한 문제에 대한 경험에서 비롯되는 경우가 많습니다.

하지만 출시하기 전에 라이브러리가 얼마나 불안정할지 어떻게 알 수 있나요? 아마도 0.x의 기간이 좋은 생각일 것입니다.

하지만 라이브러리가 0.x에서 벗어날 수 있을까요? 관성은 실제이기 때문입니다. 시간이 있나요? 위원회를 통과할 것인가? 그건 위험합니다.

반면 1.0.0 출시의 위험성은 소비자가 자주 업그레이드할 경우 불안정해질 수 있다는 것입니다. 그러나 이에 대한 완화 방법이 있습니다. 첫째, 잠금 파일을 사용하면 패키지 업그레이드가 수동 작업입니다. 소비자는 업그레이드하지 않는 한 문제의 영향을 받지 않습니다. 그리고 업그레이드를 하지 않거나 나중에 업그레이드를 연기할 수도 있습니다.

새로운 소비자가 버그가 있는 릴리스를 사용할 수도 있지만 이는 사실이지만 0.x 시스템에서도 마찬가지입니다.

스토리북과 같은 라이브러리는 (내 경험상) 버전 간에 그다지 안정적이지 않지만 여전히 0.x를 사용하지 않습니다. 그만한 가치가 있습니다.

그리고 전이적 종속성 영역이 있습니다. 귀하의 패키지가 다른 패키지의 종속성인 경우 해당 다른 패키지는 사용할 semver 범위를 결정해야 합니다. 귀하의 안정성은 해당 패키지의 안정성에 영향을 미치므로 위험이 더 높습니다.

해당 패키지는 라이브러리를 고정하거나 더 넓은 범위의 semver를 사용합니다. 첫 번째 경우에는 성능에 좋지 않은 중복이 발생합니다. 두 번째 경우에는 불안정할 위험이 있습니다. 나는 첫 번째 옵션이 시작이 아니며 불안정성은 항상 위험하다고 말하고 싶습니다.

여기에는 답이 없지만 중요한 점은 귀하의 라이브러리를 다른 도서관에서 사용하는 경우 위험이 더 높으므로 라이브러리가 안정적인지 확인해야 한다는 것입니다.

따라서 안정적인 라이브러리를 작성하려고 노력해야 하지만, 불안정하다면 계속해서 안정될 때까지 0.x를 사용하세요. 하지만 가능하다면 1.x를 사용하세요.

위 내용은 semver `.0`으로 시작의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:dev.to
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿