Устаревший смысл? - PullRequest
       4

Устаревший смысл?

56 голосов
/ 13 ноября 2011

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

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

  1. Следует ли включать func1 в версию 2.0 для обратной совместимости?
  2. Должен ли func1 работать без ошибок в версии 2.0? (func2 подходит для версий 2 и 1)
  3. Допускается ли некорректная работа func2 в версии 2.0?

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

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

Ответы [ 5 ]

89 голосов
/ 13 ноября 2011

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

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

16 голосов
/ 13 ноября 2011

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

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

  2. Если в документации не указано иное, оно должно быть таким же, как и раньше

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

7 голосов
/ 13 ноября 2011

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

5 голосов
/ 13 ноября 2011

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

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

2 голосов
/ 09 июня 2016

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

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