Semantic versioning ([ Ссылка ]) is a specific way of structuring and using version numbers for APIs and other software artifacts. In this video we look at the details of how versions are numbered using a "MAJOR.MINOR.PATCH" pattern, and what that means in practice.
Semantic versioning only makes sense when there is a well-defined model of backwards compatibility and how APIs and other software artifacts can evolve. This video is the first in a three-part series that discusses semantic versioning, how to manage API versioning, and how to design APIs for extensibility and evolvability.
We also discuss "Hyrum's Law", which is an important consideration when it comes to using semantic versioning in practice. Hyrum's law tells us to be careful with backwards compatibility, because API consumers tend to rely on all observable behavior of an API, including some that may change.
If you are interested in the four-part mini-series about API lifecycle management, here are links to all videos in that series:
1. "What is Semantic Versioning" [ Ссылка ] (this video)
2. "Managing API Versions: The API Lifecycle" [ Ссылка ]
3. "Designing APIs for Extensibility: How to create evolvable APIs" [ Ссылка ]
4. "API Lifecycle Management: Deprecation and Sunsetting" [ Ссылка ]
Ещё видео!