Computer program

From Wiki @ Karl Jones dot com
Jump to: navigation, search

A computer program, or just a program, is a sequence of instructions, written to perform a specified task, or automate the solution to a problem, on a computer.

Description

A computer requires programs to function, typically executing the program's instructions in a central processor.

The program has an executable form that the computer can use directly to execute the instructions.

The same program in its human-readable source code form, from which executable programs are derived (e.g., compiled), enables a programmer to study and develop its algorithms.

Software

A collection of computer programs and related data is referred to as the software.

Computer programmer

Computer source code is typically written by computer programmers.

Programming languages

Many programming languages exist, for a wide range of purposes.

Programming paradigms

Programming paradigms categorize programming languages. Well-established programming paradigms include:

Source code into executable file

Source code may be converted into an executable file (sometimes called an executable program or a binary) by a compiler and later executed by a central processing unit.

Alternatively, computer programs may be executed with the aid of an interpreter, or may be embedded directly into hardware.

Functions of computer programs

Computer programs may be ranked along functional lines:

Mulitasking

Two or more computer programs may run simultaneously on one computer from the perspective of the user, this process being known as multitasking.

Business models

A computer program can be deemed an industrial or commercial product when that is useful for the concerns of a business model, which involves such aspects as labor, markets, profitability, and quality control.

This is how most proprietary software is classified, though open-source software can also be regarded as a product if a commercial entity specializes in it; e.g. Red Hat, Inc. or SUSE, as both which develop and maintain open source software products.

See also

External links