Назад к вопросам
Senior
5
Версионирование контрактов — какие изменения требуют поднятия версии, а какие нет?
Компании, где спрашивали
Азиатско-Тихоокеанский банк
Ответ от нейросети
sobes.tech AI
Версионирование контрактов (API, интерфейсов) помогает управлять совместимостью между клиентами и сервисами. Изменения делятся на:
-
Совместимые изменения (не требуют поднятия мажорной версии):
- Добавление новых необязательных полей
- Добавление новых методов, которые не ломают существующий функционал
- Улучшения, не влияющие на существующие контракты
-
Несовместимые изменения (требуют поднятия мажорной версии):
- Удаление или переименование полей/методов
- Изменение типа данных в контракте
- Изменение семантики существующих методов
Таким образом, если изменение может сломать существующих клиентов, необходимо увеличить мажорную версию. Минорные и патч-версии используются для обратимо совместимых изменений и исправлений.