The source code (or the source) is a whole of instructions written in a Computer programming language Informatique high level, i.e. humanly comprehensible, making it possible to obtain a program for a Ordinateur.

The Operating systems cannot directly exploit the source code; they can only launch achievable . The source code must thus be:

  • Transformed into comprehensible code by the machine by the operation of compilation;
  • Transformed into comprehensible code by a virtual Machine, therefore also compiled
  • Or being carried out such as it is by a Interpreter.

The source code can be public or private to see Free software and Logiciel owner.

However, it is technically possible, although it is complicated more, of knowing what makes a software without having the source code. The legality of the techniques used for this purpose depends on the country and the time. It can in particular be implemented to bore the Secret S of a machine like ES3B.

Analogy of the culinary receipt

The analogy of the source code and the culinary Recette is often employed in a will of Vulgarisation. The receipt is an organized list of ingredients in quantities and functions defined, of which the goal is to obtain a result aimed by the cook, according to a given Technique.

Thus the source code can be related with a culinary receipt.

For example, if a dish is eaten, it is extremely probable which one can guess the principal elements of his composition and imagine in the broad outlines how to do it. Nevertheless, for a very refined and subtle dish (like the east a program) one will not be able to know how the chief proceeded. One needs the detailed receipt (for a program the receipt can count several million lines of code!) to be able to reproduce the dish… or one is obliged to buy the prepared dishes.

Problems related to the language

The code can be made in accordance with very precise standards which are all the more important as the Computer programming language or the tools used allows drifts.

The code is written by using on the one hand a computer programming language (for example java), and on the other hand a human language (French, English, German) for the comments. Several problems relate to the language: the language used in the specifications and designs, the language used in the comments, the language used during the execution in the man-machine interface, the language used to name the concepts (Identifying S), the languages in the software libraries used. These problems are often bound, in particular with the Javadoc, and the encoding of the source code.

In France, in 2006, the two principal languages used are French and English, even if other languages are used in an anecdotic way.

  • French is used for legal reasons, but also because this language facilitates the communication, in particular when several teams/people must work on the same project, and thus makes it possible to avoid the risks of error, however, the use of French suffers sometimes from technical limitations from the languages (management of the accents), or from the presence of anglophone concepts in the libraries.
  • English is used because it is integrated naturally with the already existing languages and libraries. It is also used in many free source code projects. Some companies choose the English language, in order to be able to make sub-contract the developments in countries at low cost, where the developers can not include/understand French. He is also used for historical reasons, because old languages do not make it possible to manage the accents, and thus the languages other than English.
  • a project as OpenOffice.org contains certain German comments, which is logical since being a free and collaboratif project, everyone can bring something there and it is there a beautiful mixture of cultures and languages in the diversity of the programmers. It is also what makes the force of the great free software under license LPG and BSD,…

Other problems

One can classify the standards of drafting of the code in several subcategories:

  • Rules of naming: they define how to give a name explicit and easy to retain for the elements of the language used, by the specification of spaces of naming or conventions of naming.
  • Presentation and formatting of the sources: how to produce a formatted source code in a readable way.
  • Documentation of the source: how to document the sources (for example by comments or tools for extraction of software documentation)
  • syntactic Standards: how to avoid the complex syntactic structures which reduce the facility of comprehension of the code, and increase the risks of dysfunction.

See too

Random links:Hulled grain, known as of the Bar | Borough (the Gironde) | Animal biology | Kolding | Characters of Bandicoot Crash landing

© 2007-2008 speedlook.com; article text available under the terms of GFDL, from fr.wikipedia.org