Pages

Thursday, 1 November 2012

Computer Program


The terms computer program, software program, application program, system software, or just programs that are used to refer either an executable program or the collection of source code from which an executable program is created.
In 1975 Niklaus Wirth (who written PASCAL Programming Language) wrote the formulae Algorithms + Data Structure = Programs, which gained wide recognition and is still useful today.

Terminology :
Software programs (collections of programs and other related resources) are most frequently referred to as applications by end-users, as these people are focused on the abilities of application software (application programs) rather than system software.
Program Execution :
A modern day computer program is loaded into memory (usually by the operating system), which is interpreted or compiled and then executes instruction by instruction until "program termination", either with success or through software or hardware error. Some primitive types of computers ran instructions encoded in various ways.

Before a computer can execute any of program (including the operating system which is also a program) the computer hardware must be initialized. This is done by a piece of software stored on programmable memory chips installed by the manufacturer called the BIOS (Basic Input Output System). The BIOS will attempt to initialize the boot sequence making the computer ready for miscellaneous program execution.

Program Versus Data :
The source code of a program is often treated as being different from the data it operates on. In some cases this distinction is blured with programs creating, or modifying data, which is subsequently executed as part of the same program. Neural networks are the best example where this distinction between code and data is not clear cut.

Programming :
A program is likely to contain a variety of different algorithms. Creating a computer program is the iterative process of writing new source code in any high level language or modifying existing source code, followed by analyzing, testing and refining the code. A person who practices this skill is referred to as a computer programmer or software developer. Sometimes lengthy process of computer programming is referred to as "software development" or software engineering. This is later becoming more popular due to the increasing maturity of the discipline.
Two other forms of modern day approaches are team programming and peer programming, wherein team programming each member of the group has equal participation in the development process except for one person who guides the group through discrepancies. These groups tend to be around 10 people to keep the group manageable. The second from is referred to as peer programming or pair programming.

No comments:

Post a Comment