For faster navigation, this Iframe is preloading the Wikiwand page for Deprecation.

Deprecation

Материал из Википедии — свободной энциклопедии

Эту страницу предлагается переименовать в «Депрекация».Пояснение причин и обсуждение — на странице Википедия:К переименованию/6 сентября 2017. Пожалуйста, основывайте свои аргументы на правилах именования статей. Не удаляйте шаблон до подведения итога обсуждения. Переименовать в предложенное название, снять этот шаблон.

Депрекация (англ. deprecation, букв. «неодобрение», объявление возможности нерекомендованной или устаревшей) — в программировании некоторое указание нежелательности применения какой-либо части программы, процедуры или языка программирования. Чаще всего используется какой-либо стандартный для данного языка программирования или системы документации кода способ указания, например служебная метка (тег), специальная конструкция языка и т. п. В среде разработчиков компьютерных программ и документации термин deprecation может обозначать очередную стадию в жизненном цикле программного обеспечения, замену устаревших частей на новые.

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

Основной причиной объявления части кода (функций, методов, классов) как deprecated является желание улучшать код, и, при этом, со временем избавляться от устаревших подходов. Оставление старого кода наряду с новым приводило бы к неоправданному разрастанию программного продукта, что усложняло бы его поддержку, изучение и использование. В то же время, просто удалять устаревшие части кода нежелательно, так как это нарушит обратную совместимость для пользователей данного ПО.

При пометке кода deprecated обычно указывается рекомендуемая замена, например новый компонент с другим программным интерфейсом, но, по сути, с той же функциональностью. Но иногда часть кода объявляется deprecated безо всякой замены. Обычно это бывает при обнаружении багов, которые принципиально неустранимы при сохранении использованного подхода.

Когда части программы зависят от части, помеченной как deprecated, программисту следует переписать код, чтобы избавиться от использования части, планируемой к удалению. Также рекомендуется переписать код существующих программ, особенно если они и так зависят от версии, в которой появилась функциональность, рекомендуемая в качестве замены.

В языке Java используется две нотации этого тега:

  • Аннотация @Deprecated — компилятор в обязательном порядке выдаст предупреждение об использовании нежелательного элемента.
  • Тэг Javadoc @deprecated — чтобы отметить это в документации. Компиляторы Sun также выдают предупреждение (хоть стандарт и не обязывает это делать).

В phpDocumentor используется два дескриптора, которые являются синонимами[1]:

  • @deprecated
  • @deprec

В Delphi используется ключевое слово deprecated;

В C++14 используется атрибут [[deprecated]][2].

Примечания

[править | править код]
  1. @deprecated. Дата обращения: 27 января 2017. Архивировано из оригинала 2 февраля 2017 года.
  2. deprecated (C++). Дата обращения: 27 января 2017. Архивировано 2 февраля 2017 года.
В статье есть список источников, но не хватает сносок. Без сносок сложно определить, из какого источника взято каждое отдельное утверждение. Вы можете улучшить статью, проставив сноски на источники, подтверждающие информацию. Сведения без сносок могут быть удалены. (23 января 2021)
{{bottomLinkPreText}} {{bottomLinkText}}
Deprecation
Listen to this article

This browser is not supported by Wikiwand :(
Wikiwand requires a browser with modern capabilities in order to provide you with the best reading experience.
Please download and use one of the following browsers:

This article was just edited, click to reload
This article has been deleted on Wikipedia (Why?)

Back to homepage

Please click Add in the dialog above
Please click Allow in the top-left corner,
then click Install Now in the dialog
Please click Open in the download dialog,
then click Install
Please click the "Downloads" icon in the Safari toolbar, open the first download in the list,
then click Install
{{::$root.activation.text}}

Install Wikiwand

Install on Chrome Install on Firefox
Don't forget to rate us

Tell your friends about Wikiwand!

Gmail Facebook Twitter Link

Enjoying Wikiwand?

Tell your friends and spread the love:
Share on Gmail Share on Facebook Share on Twitter Share on Buffer

Our magic isn't perfect

You can help our automatic cover photo selection by reporting an unsuitable photo.

This photo is visually disturbing This photo is not a good choice

Thank you for helping!


Your input will affect cover photo selection, along with input from other users.

X

Get ready for Wikiwand 2.0 🎉! the new version arrives on September 1st! Don't want to wait?