Jump to content

Self-documenting code

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Bhny (talk | contribs) at 14:16, 11 February 2015 (please read- WP:REFERS, maybe we can sort this out on talk, but "is a common descriptor for" is really bad wording. I get that it is an adjective so maybe there is a title problem here). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

In computer programming, self-documenting (or self-describing) source code and user interfaces follow naming conventions and structured programming conventions that enable use of the system without prior specific knowledge.[1][2][3]

Objectives

Commonly stated objectives for self-documenting systems include:

  • Make source code easier to read and understand
  • Minimize the effort required to maintain or extend legacy systems
  • Reduce the need for users and developers of a system to consult secondary documentation sources such as code comments or software manuals
  • Facilitate automation through self-contained knowledge representation

Conventions

Self-documenting code is ostensibly written using human-readable names, typically consisting of a phrase in a human language which reflects the symbol's meaning, such as numberOfWordsInThisArticle or TryOpen. The code must also have a clear and clean structure so that a human reader can easily understand the algorithm used.

Practical considerations

There are certain practical considerations that influence whether and how well the objectives for a self-documenting system can be realized.

See also

References

  1. ^ Schach, Stephen R. (2004). Object-Oriented and Classical Software Engineering. McGraw-Hill Professional. ISBN 0-07-286551-2.
  2. ^ "The Myth of Self-Describing XML" (PDF). Retrieved 2009-06-02.
  3. ^ (See e.g., Use–mention distinction, Naming collision, Polysemy)