World Library  
Flag as Inappropriate
Email this Article

Deprecated

Article Id: WHEBN0001203496
Reproduction Date:

Title: Deprecated  
Author: World Heritage Encyclopedia
Language: English
Subject: Filesystem Hierarchy Standard, Windows Mobile, Windows Defender, YouOS
Collection:
Publisher: World Heritage Encyclopedia
Publication
Date:
 

Deprecated

Not to be confused with Depreciation.

Deprecation is a status applied to a computer software feature, characteristic, or practice indicating it should be avoided, typically because of it being superseded. The term is also sometimes used for a feature, design, or practice that is permitted but no longer recommended in other areas, such as hardware design or compliance to building codes.

While a deprecated software feature remains in the software its use may raise warning messages recommending alternative practices; deprecated status may also indicate that feature will be removed in the future. Features are deprecated rather than immediately removed to provide backward compatibility and give programmers time to bring affected code into compliance with the new standard.

Etymology

In mainstream English, the infinitive "to deprecate" means, simply, "to strongly disapprove of (something)". It derives from the Latin verb deprecare, meaning "to ward off (a disaster) by prayer". Thus, for a standard document to state that a feature is deprecated is merely a recommendation against using it. It is still possible to produce a program or product without heeding the deprecation; but to the extent that conformance with latest standards is a requirement of the buyer (that is, a condition of payment), it may not be acceptable in that it may fail to conform.

Reasons for deprecation

Among the most common reasons for deprecation are:

  • The feature has been replaced by a more powerful alternative feature. For instance, the Linux kernel contains two modules to communicate with Windows networks — smbfs and cifs. The latter provides better security, supports more protocol features and integrates better with the rest of the kernel. Since the inclusion of cifs, smbfs has been deprecated.
  • The feature contains a design flaw—frequently a security flaw—and so should be avoided, but existing code depends upon it. The C standard function gets() is an example of this, because using this function can introduce a buffer overflow into the program that uses it.[1] The Java API methods Thread.stop, .suspend and .resume are further examples.[2]
  • The feature is considered extraneous, and will be removed in the future in order to simplify the system as a whole. Early versions of the Web markup language HTML included a FONT element, to allow page designers to specify the font in which text should be displayed. With the release of Cascading Style Sheets and HTML 4.0, the FONT element became extraneous, and detracted from the benefits of noting structural markup in HTML and graphical formatting in CSS. Thus, the FONT element was deprecated in the Transitional HTML 4.0 standard, and eliminated in the Strict variant.
  • A future version of the software is planned to make major structural changes, which make it impossible (or impractical) to support older features. For instance, when Apple Inc. planned the transition from Mac OS 9 to Mac OS X, it created a subset of the older system's API which would support most programs with minor changes. This became the Carbon library, available in both Mac OS 9 and Mac OS X. Programmers who were, at the time, chiefly using Mac OS 9, could ensure that their programs would run natively on Mac OS X by using only the API functions in Carbon. Other Mac OS 9 functions were deprecated, and were never supported natively in Mac OS X.
  • Standardization or increased consistency in naming. Projects that are developed over long periods of time, or by multiple individuals or groups, can contain inconsistencies in the naming of various items. These can be the result of a lack of foresight, changes in nomenclature over time, or personal, regional or educational differences in terminology. Since merely renaming an item would break backwards compatibility, the existing name must be left in place. The original name will likely remain indefinitely, but will be deprecated to encourage use of the newer, more consistent naming convention. An example would be an API that alternately used the spelling "color" and "colour". Standardization would result in the use of only one of the regional spellings throughout, and all occurrences of the other spelling would be deprecated.
  • A feature that once was only available independently is now combined with its co-feature. An example being VLC Media Player, VLC used to stand for 'VideoLan Client' and a 'VideoLan Server' was available as its co-feature. Both the client and server became available in the same package, and as such, getting one independently would be impractical.

Other usage

The term deprecated may also be used when a non-computer term becomes obsolete, either through change or supersession.

An example in paleontology would be Brontosaurus, the former popular name for the genus Apatosaurus.[3]

See also

References

External links

  • How and When To Deprecate APIs from the JDK 5.0 Documentation
  • Detect deprecated functions A tool that discovers deprecated functions in any Windows native application or library.

This article was sourced from Creative Commons Attribution-ShareAlike License; additional terms may apply. World Heritage Encyclopedia content is assembled from numerous content providers, Open Access Publishing, and in compliance with The Fair Access to Science and Technology Research Act (FASTR), Wikimedia Foundation, Inc., Public Library of Science, The Encyclopedia of Life, Open Book Publishers (OBP), PubMed, U.S. National Library of Medicine, National Center for Biotechnology Information, U.S. National Library of Medicine, National Institutes of Health (NIH), U.S. Department of Health & Human Services, and USA.gov, which sources content from all federal, state, local, tribal, and territorial government publication portals (.gov, .mil, .edu). Funding for USA.gov and content contributors is made possible from the U.S. Congress, E-Government Act of 2002.
 
Crowd sourced content that is contributed to World Heritage Encyclopedia is peer reviewed and edited by our editorial staff to ensure quality scholarly research articles.
 
By using this site, you agree to the Terms of Use and Privacy Policy. World Heritage Encyclopedia™ is a registered trademark of the World Public Library Association, a non-profit organization.
 


Copyright © World Library Foundation. All rights reserved. eBooks from Project Gutenberg are sponsored by the World Library Foundation,
a 501c(4) Member's Support Non-Profit Organization, and is NOT affiliated with any governmental agency or department.