Похоже, что оригинальный постер уже эффективно, но неофициально устарел их API (все, что называется «старым API»). Однако до тех пор, пока он не будет объявлен, а пользователи не уведомлены о том, что API устарел, он официально не устарел.
Устаревший API - это промежуточный, неактивный этап кода. Это последние обряды. Это период, когда усыновители / потребители могут переконфигурировать свои приложения для более нового API и попрощаться, заключив мир с API. Некоторые API могут задерживаться дольше, чем другие, но на данный момент мы знаем, что их время не долгое.
Удаленный API - это похороны кода. Больше ничего он не может сделать, кроме как правильно расположенного и соответствующим образом увековеченного.
Многие разработчики API и сервисов выбирают похороны кода, а не выполняют последние обряды; однако, я думаю, что это несколько рискованно. Если было какое-либо обслуживание или обещание поддержки, которые были даны, когда API / сервис был первоначально принят или через продление, вы можете захотеть выполнить это обязательство в течение разумного периода времени перед выполнением похорон.
Для не сервисных библиотек, я думаю, что одна из основных версий, независимо от периода времени, вероятно, является более чем приемлемым и справедливым периодом гарантированной обратной совместимости. Кроме того, это зависит от влияния и лоббирования со стороны пользователей, чтобы продлить его жизнь за этот период. И не удивляйтесь, если время от времени возникают возражения из-за невосполнимых зависимостей третьих сторон, застрявших в подвешенном состоянии и привязанных к определенным версиям определенных платформ.
Что касается услуг, я подозреваю, что вы, возможно, захотите посмотреть либо на шестимесячный, либо на летний период, просто из-за различий в том, кто и как может потреблять услугу, и соответствующей разницы в цикле разработки от потребляющего проекта к потребляющему проекту Многие проекты, которые могут потреблять ваши услуги, могут по-прежнему иметь большой предварительный дизайн и могут планировать цикл выпуска более года. Большинство сторонних мнений разработчиков предполагают, что те, кто работает с длинными графиками, несут ответственность за соблюдение вашего цикла, а проекты с длительным циклом должны принимать более быстрый цикл выпуска, и это может быть правдой. Но в конечном итоге дата удаления - это то, что вы должны согласовать с пользователями.
Хорошая, но не пуленепробиваемая стратегия для устаревания может заключаться в том, чтобы при объявлении устаревания выделить временной интервал для намерения удалить вместе с запросом комментариев или возражений в формате опроса рассматриваемых разделов API. Если у вас нет списка контактов пользователей, потому что ваша служба работает с [полу] анонимным доступом, вы можете рассмотреть возможность просмотра журналов для частых и активных пользователей и отправить уведомление администратору хоста или домена для переадресации по своему усмотрению.