Self-documenting Code
   HOME
*





Self-documenting Code
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. In web development, self-documenting refers to a website that exposes the entire process of its creation through public documentation, and whose public documentation is part of the development process. 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 symb ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Computer Programming
Computer programming is the process of performing a particular computation (or more generally, accomplishing a specific computing result), usually by designing and building an executable computer program. Programming involves tasks such as analysis, generating algorithms, profiling algorithms' accuracy and resource consumption, and the implementation of algorithms (usually in a chosen programming language, commonly referred to as coding). The source code of a program is written in one or more languages that are intelligible to programmers, rather than machine code, which is directly executed by the central processing unit. The purpose of programming is to find a sequence of instructions that will automate the performance of a task (which can be as complex as an operating system) on a computer, often for solving a given problem. Proficient programming thus usually requires expertise in several different subjects, including knowledge of the application domain, specialized algori ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Jef Raskin
Jef Raskin (born Jeff Raskin; March 9, 1943 – February 26, 2005) was an American human–computer interface expert best known for conceiving and starting the Macintosh project at Apple in the late 1970s. Early life and education Jef Raskin was born in New York City to a secular Jewish family, whose surname is a matronymic from "Raske", Yiddish nickname for Rachel. He received a BA in mathematics and a BS in physics with minors in philosophy and music from Stony Brook University. In 1967, he received a master's degree in computer science from Pennsylvania State University, after having switched from mathematical logic due to differences of opinion with his advisor. Even though he had completed work for his PhD, the university was not accredited for a PhD in computer science. The first original computer application he wrote was a music application as part of his master's thesis. Raskin later enrolled in a graduate music program at the University of California, San Diego ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


ACM Queue
''ACM Queue'' is a bimonthly computer magazine founded and published by the Association for Computing Machinery The Association for Computing Machinery (ACM) is a US-based international learned society for computing. It was founded in 1947 and is the world's largest scientific and educational computing society. The ACM is a non-profit professional member ... (ACM). The magazine was established in 2003. Steve Bourne helped found the magazine when he was president of the ACM and is chair of the editorial board. The magazine is produced by computing professionals and is intended for computing professionals. It is available only in electronic form and is available on the Internet on subscription basis. Some of the articles published in ''Queue'' are also included in ACM's monthly magazine, ''Communications of the ACM'', in the Practitioner section. References External links Official website {{compu-mag-stub Computer magazines published in the United States Bimonthly magazin ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


McGraw-Hill Professional
McGraw Hill is an American educational publishing company and one of the "big three" educational publishers that publishes educational content, software, and services for pre-K through postgraduate education. The company also publishes reference and trade publications for the medical, business, and engineering professions. McGraw Hill operates in 28 countries, has about 4,000 employees globally, and offers products and services to about 140 countries in about 60 languages. Formerly a division of The McGraw Hill Companies (later renamed McGraw Hill Financial, now S&P Global), McGraw Hill Education was divested and acquired by Apollo Global Management in March 2013 for $2.4 billion in cash. McGraw Hill was sold in 2021 to Platinum Equity for $4.5 billion. Corporate History McGraw Hill was founded in 1888 when James H. McGraw, co-founder of the company, purchased the ''American Journal of Railway Appliances''. He continued to add further publications, eventually establishing The ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  




Natural Language Programming
Natural-language programming (NLP) is an ontology-assisted way of programming in terms of natural-language sentences, e.g. English. A structured document with Content, sections and subsections for explanations of sentences forms a NLP document, which is actually a computer program. Natural language programming is not to be mixed up with natural language interfacing or voice control where a program is first written and then communicated with through natural language using an interface added on. In NLP the functionality of a program is organised only for the definition of the meaning of sentences. For instance, NLP can be used to represent all the knowledge of an autonomous robot. Having done so, its tasks can be scripted by its users so that the robot can execute them autonomously while keeping to prescribed rules of behaviour as determined by the robot's user. Such robots are called ''transparent robots'' as their reasoning is transparent to users and this develops trust in r ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Literate Programming
Literate programming is a programming paradigm introduced in 1984 by Donald Knuth in which a computer program is given as an explanation of its logic in a natural language, such as English, interspersed (embedded) with snippets of macros and traditional source code, from which compilable source code can be generated. The approach is used in scientific computing and in data science routinely for reproducible research and open access purposes. Literate programming tools are used by millions of programmers today. The literate programming paradigm, as conceived by Donald Knuth, represents a move away from writing computer programs in the manner and order imposed by the computer, and instead gives programmers macros to develop programs in the order demanded by the logic and flow of their thoughts. Literate programs are written as an exposition of logic in more natural language in which macros are used to hide abstractions and traditional source code, more like the text of an essa ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Controlled Natural Language
Controlled natural languages (CNLs) are subsets of natural languages that are obtained by restricting the grammar and vocabulary in order to reduce or eliminate ambiguity and complexity. Traditionally, controlled languages fall into two major types: those that improve readability for human readers (e.g. non-native speakers), and those that enable reliable automatic semantic analysis of the language. The first type of languages (often called "simplified" or "technical" languages), for example ASD Simplified Technical English, Caterpillar Technical English, IBM's Easy English, are used in the industry to increase the quality of technical documentation, and possibly simplify the semi-automatic translation of the documentation. These languages restrict the writer by general rules such as "Keep sentences short", "Avoid the use of pronouns", "Only use dictionary-approved words", and "Use only the active voice". The second type of languages have a formal syntax and semantics, and can ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Code Readability
Computer programming is the process of performing a particular computation (or more generally, accomplishing a specific computing result), usually by designing and building an executable computer program. Programming involves tasks such as analysis, generating algorithms, profiling algorithms' accuracy and resource consumption, and the implementation of algorithms (usually in a chosen programming language, commonly referred to as coding). The source code of a program is written in one or more languages that are intelligible to programmers, rather than machine code, which is directly executed by the central processing unit. The purpose of programming is to find a sequence of instructions that will automate the performance of a task (which can be as complex as an operating system) on a computer, often for solving a given problem. Proficient programming thus usually requires expertise in several different subjects, including knowledge of the application domain, specialized algo ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Autological Word
An autological word (also called homological word) is a word that expresses a property that it also possesses (e.g., "word" is a word, "noun" is a noun, "English" is an English word, " pentasyllabic" has five syllables, and "writable" is writable.) The opposite is a heterological word, one that does not apply to itself (e.g. the word "long" is not long, "monosyllabic" has more than one syllable, "dactyl" is not a dactyl, and "misspelled" is not misspelled.) Unlike more general concepts of autology and self-reference, this particular distinction and opposition of "autological" and "heterological words" is uncommon in linguistics Linguistics is the scientific study of human language. It is called a scientific study because it entails a comprehensive, systematic, objective, and precise analysis of all aspects of language, particularly its nature and structure. Linguis ... for describing linguistic phenomena or classes of words, but is current in logic and philosophy where i ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  




System Requirements
To be used efficiently, all computer software needs certain hardware components or other software resources to be present on a computer. These prerequisites are known as (computer) system requirements and are often used as a guideline as opposed to an absolute rule. Most software defines two sets of system requirements: minimum and recommended. With increasing demand for higher processing power and resources in newer versions of software, system requirements tend to increase over time. Industry analysts suggest that this trend plays a bigger part in driving upgrades to existing computer systems than technological advancements. A second meaning of the term of system requirements, is a generalisation of this first definition, giving the requirements to be met in the design of a system or sub-system. Recommended system requirements Often manufacturers of games will provide the consumer with a set of requirements that are different from those that are needed to run a software. The ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Source Code
In computing, source code, or simply code, is any collection of code, with or without comments, written using a human-readable programming language, usually as plain text. The source code of a program is specially designed to facilitate the work of computer programmers, who specify the actions to be performed by a computer mostly by writing source code. The source code is often transformed by an assembler or compiler into binary machine code that can be executed by the computer. The machine code is then available for execution at a later time. Most application software is distributed in a form that includes only executable files. If the source code were included it would be useful to a user, programmer or a system administrator, any of whom might wish to study or modify the program. Alternatively, depending on the technology being used, source code may be interpreted and executed directly. Definitions Richard Stallman's definition, formulated in his 1989 seminal li ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]