Версионирование API. Единая кодовая база для всех версий PHP, стандарты, фреймворки, библиотеки, OpenSource

Доклад принят в программу конференции
Антон Золотилин
Superjob

В программировании больше 20 лет. Веб-разработчик с 2009 года. Последние годы занимаюсь инфраструктурными задачами в команде "Платформа" компании Superjob

Тезисы

Если вы задумывались о версионировании API, то наверняка вы сталкивались с целым рядом вопросов и проблем:

1. Какие варианты реализаций версионирования API известны? Какие у них достоинства и недостатки?
2. Как переиспользовать код в разных версиях?
3. Как поддерживать актуальность документации для всех версий?
4. Как тестировать разные версии API? Как справиться с ростом тестов после каждой новой версии?

В своем докладе мы расскажем, как эти задачи решила наша команда:
- какой способ версионирования реализовали мы;
- как нам удалось почти целиком избавиться от влияния версий на кодовую базу API;
- как мы документируем наши версии;
- как мы тестируем наши версии, и как мы научились определять и "схлопывать" идентичные для разных версий тесты;

Другие доклады секции PHP, стандарты, фреймворки, библиотеки, OpenSource