Index: > A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Business Industries Finance Tax

Home > Computer programming


First Prev [ 1 2 ] Next Last

Computer programming (often simply programming) is the craft of implementing one or more interrelated abstract algorithms using a particular programming language to produce a concrete computer program. Programming has elements of art, science, mathematics, and engineering.

1 Programming languages

Main article: programming language

The program written in a particular programming language is then translated into the specific machine language executable by the target computer: programs written in any programming language can be translated into machine language. In some languages, an interpretable p-code binary is generated, rather than machine language. It is also possible for the programmer to write directly in machine code, but this is hardly ever done anymore: instead, when complete low-level control of the target computer is required, programmers resort to assembly language, whose instructions are mnemonic one-to-one transriptions of the corresponding machine language instructions.

Different programming languages support different styles of programming (called programming paradigms), some of which are better suited for a particular task than others. They also require different levels of detail to be handled by the programmer when implementing algorithms, often resulting in a compromise between ease of use and performance.

2 Software development

Main article: software engineering

Software is a mass noun for computer programs and data. The accompanying documentation is also considered an essential part of the software, even though it doesn't involve any actual programming.

Creating software involves:

  1. Recognizing the need for a program to solve a problem.
  2. Planning the program and selecting the tools (including hardware platforms, languages, databases, browsers, development kits) to solve the problem.
  3. Writing the program in the programming language of choice.
  4. Translation: translating the human-readable source code into either machine-readable executableAn executable or executable file in computer science, is a file whose contents are meant to be interpreted as a program by a computer. Most often, they contain the binary representation of machine instructions of a specific processor, but can also contain code, which is done by compilerA compiler is a computer program that translates a computer program written in one computer language (called the source language into an equivalent program written in another computer language (called the output or the target language . Introduction and hs, assemblerThis article is about a computing term. See Assembler (disambiguation) for other meanings''. An assembler is a computer program for translating assembly language — essentially, a mnemonic representation of machine language — into object code. A cross asses or other tools, such as interpretersAn interpreter is a computer program that executes other programs. This is in contrast to a compiler which does not execute its input program (the source code) but translates it into executable machine code (also called object code) which is output to a f, which directly execute source languages (such as SQLStructured Query Language SQL is the most popular computer language used to create, modify and query databases. Technically, SQL is a declarative computer language for use with "quasi- relational databases". Theorists note that many of the original SQL fe, and scripting languages) at a higher level than libraries of machine code. In metaprogrammingMetaprogramming is the writing of programs that write or manipulate other programs (or themselves) as their data or that do part of the work that is otherwise done at runtime during compile time. This allows programmers to produce a larger amount of code, programs are created which can generate the source code for other programs.
  5. Testing the program to make sure it works; if not, return to step 3 (see code and fix).
  6. Documentation, deployment and delivery

These steps are collectively known as software development. The skills required to be an effective programmer include the ability to mentally translate the concepts of the first step into expressions in the target programming language(s).

A revision control system for source code is a valuable resource for a programmer. It facilitates the reversion of changes, and the comparison of different methods used in the code.





Non User