Source code

related topics
{math, number, function}
{system, computer, user}
{law, state, case}
{work, book, publish}
{language, word, form}
{company, market, business}
{film, series, show}
{government, party, election}
{style, bgcolor, rowspan}

In computer science, source code is any collection of statements or declarations written in some human-readable computer programming language. Source code is the means most often used by programmers to specify the actions to be performed by a computer.

The source code which constitutes a program is usually held in one or more text files, sometimes stored in databases as stored procedures and may also appear as code snippets printed in books or other media. A large collection of source code files may be organized into a directory tree, in which case it may also be known as a source tree.

A computer program's source code is the collection of files needed to convert from human-readable form to some kind of computer-executable form. The source code may be converted into an executable file by a compiler, or executed on the fly from the human readable form with the aid of an interpreter.

The annual working conference Source Code Analysis and Manipulation[1] defines source code as

"For the purpose of clarity ‘source code’ is taken to mean any fully executable description of a software system. It is therefore so construed as to include machine code, very high level languages and executable graphical representations of systems.[2] "

The code base of a programming project is the larger collection of all the source code of all the computer programs which make up the project.



The source code for a particular piece of software may be contained in a single file or many files. Though the practice is uncommon, a program's source code can be written in different programming languages.[3] For example, a program written primarily in the C programming language, might have portions written in assembly language for optimization purposes. It is also possible for some components of a piece of software to be written and compiled separately, in an arbitrary programming language, and later integrated into the software using a technique called library linking. This is the case in some languages, such as Java: each class is compiled separately into a file and linked by the interpreter at runtime.

Full article ▸

related documents
Abstract Syntax Notation One
Symmetric-key algorithm
List of programming languages by category
XOR swap algorithm
Event-driven programming
Shell script
Transfer function
Compiler optimization
Emacs Lisp
Logo (programming language)
Maple (software)
Object-relational database
Priority queue
Macro (computer science)
Wikipedia:Free On-line Dictionary of Computing/E - H
XSL Transformations
Java Servlet
Unified Modeling Language
Spaghetti code
Queueing theory
Delegation pattern
.NET Framework