공유 라이브러리 파일로 프로그램의 자체 바이너리 코드로 컴파일 하는 대신 유틸리티를 사용하기 위해 프로그램이 호출해야하는 확장기능 수행. 자신의 코드를 변경하지 않고도 프로그램을 업데이트, 교체할 수 있음
release versioning의 경우 X.Y.Z Rule (Major, Minor, Patch)을 따르고 있음 X (Major): 이전 버전과 호환이 안되는 큰 변화가 있을 경우 Y (Minor): 이전 버전과 호환이 가능한 기능이 추가되었을 경우 Z (Patch): 이전 버전과 호환이 가능하며, Bug 수정등 작은 Patch의 경우
Versioning 기본 룰:
- Versioning에 쓰이는 숫자는 음수가 될 수 없으며, 점진적으로 증가하여야 한다. [ 1.9.0 -> 1.10.0 -> 1.11.0 (O) / 1.9.0 -> 1.12.0 (X) ]
- 새로운 버전이 Release 되었을 때, 그 버전에 해당하는 내용(Content)은 절대로 수정되어서는 안된다. 조금이라도 변경이 있을 경우 Version을 바꿔서 새로 배포가 진행되어야 한다.
- 공식 public 버전 (stable)은 1.0.0 부터 시작이며, 0.y.z는 초기 개발단계이다.
- Bug Fix의 경우 Patch(Z)에 해당하는 version이 업데이트 되어야 한다. 여기서 Bug fix란 배포된 기능 중 의도된 대로 작동하지 않는 상태를 수정하는 것을 의미한다.
- X, Y Version이 변경되었을 경우, 그 아래 단계에 해당하는 버전들은 반드시 0으로 픽스되어야 한다.
- X의 경우: [ 1.9.2 -> 2.0.0 (O) / 1.9.2 -> 2.9.2 (X)]
- Y의 경우: [ 1.1.6 -> 1.2.0 (O) / 1.1.6 -> 1.2.6 (X)]
반응형
'Chapter02 > 프로젝트01' 카테고리의 다른 글
[ error ] Port 8080 was already in use. (0) | 2024.07.03 |
---|---|
[AWS] 프리티어 과금 조심하세여,, (1) | 2024.04.04 |
[AWS] 빌드 속도가 너무 느려요! swap메모리 (0) | 2024.03.26 |
[Spring Boot] Backend Frontend 같이 빌드하기 (0) | 2024.03.14 |
[ Spring Boot] Spring Boot Initializr (0) | 2024.03.06 |