Устаревание — это препятствование использованию чего-либо, созданного человеком, например, термина , функции, дизайна или практики. Обычно что-то устаревает, потому что утверждается, что оно хуже по сравнению с другими доступными вариантами.
Что-то может быть объявлено устаревшим, когда это невозможно контролировать, [ необходимо разъяснение ] , например, термин. Даже когда это можно контролировать, что-то может быть объявлено устаревшим, даже если это может быть полезным — например, для обеспечения совместимости — и может быть удалено или прекращено в какой-то момент после объявления устаревшим. [1]
В общем английском языке глагол "to deprecate" означает "выражать неодобрение (чего-либо)". Он происходит от латинского отложительного глагола deprecari , что означает "отвратить ( катастрофу ) молитвой".
Раннее задокументированное использование слова «deprecate» в этом смысле встречается в сообщениях Usenet в 1984 году, где упоминаются устаревшие функции в 4.2BSD и языке программирования C. [2] Расширенное определение слова «deprecate» было приведено в Jargon File в редакции 1991 года, [3] а похожие определения можно найти в документации к коммерческому программному обеспечению от 2014 [1] и 2023 годов. [4]
Пока устаревшая функция программного обеспечения остается в программном обеспечении, ее использование может вызывать предупреждающие сообщения, рекомендующие альтернативные методы. Статус «Устаревший» может также указывать на то, что функция будет удалена в будущем. Функции устарели, а не удалены немедленно, чтобы обеспечить обратную совместимость и дать программистам время привести затронутый код в соответствие с новым стандартом.
Известные причины прекращения поддержки включают в себя:
Примером строительного кодекса является использование незаземленных («2-контактных») электрических розеток (британский английский: «unearthed»). Со временем эти старые устройства были повсеместно вытеснены в пользу более безопасных заземленных («3-контактных») розеток. Старые, незаземленные розетки все еще были разрешены во многих местах, « дедовскими » для существующей электропроводки , в то же время запрещая их для новых установок. Таким образом, хотя незаземленные розетки все еще могут быть доступны для законной покупки в месте, где они устарели, они, как правило, предназначены только для ремонта существующих старых электроустановок.
В написании и редактировании использование слова может быть запрещено, поскольку оно является двусмысленным, запутанным или оскорбительным для некоторых читателей. Например, слова санкция и воспламеняющийся могут быть неверно истолкованы, поскольку имеют автоантонимичные или противоречивые значения; руководства по стилю письма часто рекомендуют заменять их другими словами, которые понятны и недвусмысленны. Некоторые словоупотребления, которые со временем приобрели другие коннотации, такие как гей или цветной , могут быть запрещены как устаревшие в официальном письме.
В технических стандартах использование определенного пункта может быть нежелательно или заменено новыми пунктами. Например, в стандарте Ethernet IEEE 802.3-2012 пункт 5 (Управление уровнями) «устаревал» пунктом 30 (Управление), за исключением 5.2.4.
Устаревание также может произойти, когда технический термин становится устаревшим , либо через изменение, либо через замену. [ необходимо разъяснение ] Примером из палеонтологии является ранее устаревший термин Brontosaurus : до того, как его снова признали уникальным родом, [11] он считался популярным, но устаревшим, названием для рода Apatosaurus . [12] Некоторые устаревшие термины в медицине - это чахотка ( туберкулез ), грипп ( грипп ) и апоплексия ( инсульт ). В химической номенклатуре международная организация по стандартизации IUPAC (Международный союз теоретической и прикладной химии) устарела термин «метилэтилкетон» и теперь рекомендует использовать вместо него термин « этилметилкетон ». [13]
Устаревшая функция: char * gets (char *s). ... Функция
очень
опасна
, поскольку не обеспечивает защиты от переполнения строки
. Библиотека GNU включает ее только для совместимости. Вместо нее
всегда
следует использовать
или
.
gets
s
fgets
getline
{{cite book}}
: CS1 maint: DOI неактивен по состоянию на июнь 2024 г. ( ссылка )