
非推奨とは、言語用語、固有名詞、機能、デザイン、動作、コード、慣習など、人間が作ったものの使用を推奨しないことを指します。通常、以前使用されていたものが非推奨となるのは、現在利用可能な他の選択肢と比較して劣っている、あるいは劣っていると主張または考えられているためです。したがって、非推奨は将来の改善のための仕組みと言えます。非推奨とは、コミュニティ(一般的には専門家のコミュニティ、あるいは特定の分野や業界を統括する専門機関)が、用語、名称、デバイス、デザイン、機能の将来的な使用は賢明ではないと判断したことを意味します。しかし、同時に、その代替や削除は不要、あるいは緊急ではないことも意味します。
過去または現在のアプリケーションが特定のコンテキストで依然として有用または機能的である場合でも、何かが非推奨になることがあります。ここでの目標は、非推奨になったものを完全に置き換えることではなく、むしろ、その対象物のストックの広範な指標(たとえば、安全性)を時間の経過とともに改善することです。したがって、言語/用語の一貫性と読みやすさを得るために古い用語を非推奨にする、住宅ストックの安全性と互換性を向上させるために廃止された電気部品を非推奨にする、またはオープンソースソフトウェアプロジェクトを改善するために特定の共有コードを非推奨にする、といったことが考えられます。[ 1 ]
非推奨とは通常、将来のある時点で段階的に廃止、提供停止、または使用やサポートの中止が行われることを示唆または予兆するものです。
一般的に英語では、「 deprecate 」という動詞は「(何かに対して)不承認を表明する」という意味で使われます。これはラテン語のdeponent動詞deprecariに由来し、「祈りによって(災難を)避ける」という意味です。
関連する意味での「deprecate」の初期の使用例は、1984 年のUsenet の投稿にあり、 4.2BSDとCプログラミング言語の廃止された機能について言及しています。[ 2 ]「deprecate」の拡張された定義は、 1991 年のJargon File の改訂版で引用されており、[ 3 ]同様の定義は、2014 年[ 1 ]と 2023 年[ 4 ]の商用ソフトウェアのドキュメントにも見られます。
非推奨化は、ソフトウェア開発において一般的に用いられる改善メカニズムであり、特にプロジェクトに多数のユーザーやプログラマーが関わる場合、開発履歴が長かったり複雑だったりする場合、あるいは迅速な反復開発(その結果、より多くの代替機能が生じる)が行われる場合に有効です。
非推奨となったソフトウェア機能はソフトウェア内に残っていますが、使用すると代替手段や代替方法を推奨する警告メッセージが表示される場合があります。非推奨状態は、その機能が将来削除される予定であることを示している場合もあります。機能がすぐに削除されるのではなく非推奨となるのは、後方互換性を維持するため、またプログラマーが影響を受けるコードを新しい標準に準拠させるための時間を与えるためです。
廃止の主な理由としては、以下の点が挙げられます。
建築基準法の例として、接地されていない(「2ピン」)コンセント(英国英語では「unearthed」)の使用が挙げられます。時が経つにつれ、これらの古い機器は、より安全な接地された(「3ピン」)コンセントに取って代わられ、広く廃止されました。古い接地されていないコンセントは、既存の電気配線では「既得権」として認められ、多くの場所でまだ使用が許可されていましたが、新規設置では禁止されていました。そのため、接地されていないコンセントの販売と使用は減少し、たとえ合法的に購入できたとしても、時代遅れとみなされ、一般的には既存の古い電気設備の修理にのみ使用されるようになりました。
技術規格においては、特定の条項の使用が推奨されなくなったり、新しい条項に置き換えられたりする場合があります。例えば、イーサネット規格IEEE 802.3-2012では、第5項(レイヤ管理)の一部が第30項(管理)によって廃止または置き換えられています。
文章作成や編集において、ある単語の使用は、曖昧であったり、混乱を招いたり、読者やその一部にとって不快であったりする場合、使用を避けるべきと判断されることがあります。例えば、「sanction」と「inflammable」という単語は、自己反意語的または自己矛盾的な意味を持つため、誤解を招く可能性があります。そのため、文章作成スタイルガイドでは、明確に理解され、曖昧さのない別の単語に置き換えることを推奨することがよくあります。また、 「gay」や「colored 」のように、時間の経過とともに異なる意味合いを持つようになった単語や単語の用法(意味)は、曖昧さ、時代遅れ、または不快感による問題(あるいは注意散漫)を避けるために、使用を避けるべきと判断されることがあります。
技術用語や科学用語が、変更や代替、さらなる科学的発見、あるいは新たな科学的コンセンサスの形成によって不正確または時代遅れになった場合にも、廃止されることがある。古生物学の例としては、かつてブロントサウルスという用語が廃止され、アパトサウルス属が用いられるようになったことが挙げられる(ブロントサウルスは一時期、アパトサウルス属の一部と考えられていた)。[ 11 ] [ 12 ]
医学用語で廃止された例としては、結核(consumation)、インフルエンザ(grippe)、脳卒中(apoplexy)などがあります。医学的状態や疾患の名称は、混乱、偏見、リスクに関する誤解を避けるために、しばしば廃止されます(例えば、HIV/AIDSの初期用語である「同性愛関連免疫不全症候群」は、誤りであり差別的であったため、すぐに廃止されました)。
化学命名法において、国際標準化機構であるIUPAC(国際純正・応用化学連合)は「メチルエチルケトン」という用語を廃止し、代わりに「エチルメチルケトン」という用語の使用を推奨している。[ 13 ]
非推奨関数: char * gets (char *s). ... この関数
は文字列のオーバーフローに対する保護を提供しないため、
非常に危険
です
。GNU ライブラリには互換性のためだけにこの関数が含まれています。代わりに
または を
常に
使用する必要があります
。
getssfgetsgetline