Устаревшее значение?

Когда jQuery, Microsoft или какая-либо другая компания-разработчик программного обеспечения говорит: "эта функция устарела".

Например, когда есть func1, который отлично работает в версии 1.0 и устарел в версии 2.0, который также вводит новый func2:

  • Следует ли включить func1 в версию 2.0 для обратной совместимости?
  • Предполагается ли func1 работать без ошибок в версии 2.0? (func2 отлично подходит для версий 2 и 1)
  • Возможно, функция func2 не работает корректно в версии 2.0?

Что означает истинное осуждение и означает ли это во всех организациях?

Например, живой метод в jQuery не работает в версии 1.7 в IE, но он работает в Chrome).

Ответ 1

Я думаю, что статья Википедии об устаревании отвечает на это довольно хорошо:

В процессе разработки программного обеспечения, его стандартов или документации устаревание является статусом, применяемым к функциям программного обеспечения, чтобы указать, что их следует избегать, как правило, потому что они были заменены. Хотя устаревшие функции остаются в программном обеспечении, их использование может вызывать предупреждения, рекомендующие альтернативные методы, а устаревание может указывать на то, что эта функция будет удалена в будущем. Функции устаревают, а не сразу удаляются, чтобы обеспечить обратную совместимость, и дать программистам, которые использовали это время, чтобы привести свой код в соответствие с новым стандартом.

Ответ 2

Устаревшие средства, которые они не рекомендуют использовать, и что он не претерпевает дальнейшего развития. Но он не должен работать иначе, чем в предыдущей версии, если в документации явно не указано.

  • Да, иначе он не будет называться "устаревшим"

  • Если в документах указано иначе, оно должно быть таким же, как раньше

  • Нет, но если в v1 были проблемы, они не собираются их исправлять.

Ответ 3

Если есть верные ответы на эти вопросы, это будет отличаться для каждого поставщика программного обеспечения и будет определено продавцом. Я не знаю никаких настоящих отраслевых стандартов, которые соблюдаются в этом отношении.

Исторически с Microsoft они отмечают что-то как устаревшее и заявляют, что они удалят его в будущей версии. Это может быть несколько версий, прежде чем они действительно избавятся от него, хотя.

Ответ 4

Устаревшее вообще означает "не использовать его".
Устаревшая функция может работать или не работать, но она не гарантирована.

Ответ 5

Самый простой ответ на смысл deprecated при использовании для описания программных API:

  • Прекратить использование API, отмеченных как устаревшие!
  • Они уйдут в будущем выпуске!
  • Начните использовать новые версии как можно скорее.