Programmation informatique
Source: Wikipédia sous licence CC-BY-SA 3.0.
La liste des auteurs de cet article est disponible ici.

Introduction

La programmation dans le domaine informatique est l'ensemble des activités qui permettent l'écriture des programmes informatiques. C'est une étape importante de la conception de logiciel (voire de matériel, cf. VHDL).

Pour écrire le résultat de cette activité (Le terme d'activité peut désigner une profession.), on utilise un langage de programmation (Un langage de programmation est un langage informatique, permettant à un être humain d'écrire un code source qui sera analysé par une...).

La programmation (La programmation dans le domaine informatique est l'ensemble des activités qui permettent l'écriture des programmes informatiques. C'est une étape importante de la...) représente usuellement le codage, c’est-à-dire la rédaction du code source (Le code source (ou les sources voire le source) est un ensemble d'instructions écrites dans un langage de programmation informatique de haut niveau, compréhensible par un être humain entraîné,...) d'un logiciel (En informatique, un logiciel est un ensemble d'informations relatives à des traitements effectués automatiquement par un appareil informatique. Y sont inclus les instructions...). On utilise plutôt le terme développement pour dénoter l'ensemble (En théorie des ensembles, un ensemble désigne intuitivement une collection d’objets (les éléments de l'ensemble), « une multitude qui peut être comprise comme un tout »,...) des activités liées à la création d'un logiciel.

Une brève histoire de la programmation

La première machine programmable (c’est-à-dire machine dont les possibilités changent quand on modifie son "programme") est probablement le métier à tisser de Jacquard, qui a été réalisé en 1801. La machine utilisait une suite de cartons perforés. Les trous indiquaient le motif que le métier suivait pour réaliser un tissage ; avec des cartes différentes le métier produisait des tissages différents. Cette innovation a été ensuite améliorée par Herman Hollerith d'IBM (International Business Machines Corporation (IBM) est une société multinationale américaine présente dans les domaines du matériel informatique, du logiciel et des services informatiques.) pour le développement de la fameuse carte perforée d'IBM.

En 1936, la publication de l'article fondateur de la science (La science (latin scientia, « connaissance ») est, d'après le dictionnaire Le Robert, « Ce que l'on sait pour l'avoir appris, ce que l'on tient pour vrai...) informatique (L´informatique - contraction d´information et automatique - est le domaine d'activité scientifique, technique et industriel en rapport avec le traitement automatique de l'information par des machines...) On Computable Numbers with an Application to the Entscheidungsproblem par Alan Mathison Turing (Alan Mathison Turing (23 juin 1912 - 7 juin 1954) était un mathématicien britannique et est considéré comme un des pères fondateurs de l'informatique moderne. Il est à l'origine de la formalisation des concepts...) allait donner le coup d'envoi à la création de l'ordinateur (Un ordinateur est une machine dotée d'une unité de traitement lui permettant d'exécuter des programmes enregistrés. C'est un ensemble de circuits...) programmable. Il y présente sa machine de Turing, le premier calculateur universel programmable, et invente les concepts et les termes de programmation et de programme.

Les premiers programmes d'ordinateurs étaient réalisés avec un fer à souder (Un fer à souder est un outil qui permet de réaliser des soudures ; il s'appelle fer puisque son élément principal est la pièce métallique qui confère une température...) et un grand nombre (La notion de nombre en linguistique est traitée à l’article « Nombre grammatical ».) de tubes à vide (Le vide est ordinairement défini comme l'absence de matière dans une zone spatiale.) (plus tard, des transistors). Les programmes devenant plus complexes, cela est devenu presque impossible, parce qu'une seule erreur rendait le programme entier inutilisable. Avec les progrès des supports de données (Dans les technologies de l'information (TI), une donnée est une description élémentaire, souvent codée, d'une chose, d'une transaction d'affaire, d'un événement, etc.), il devient possible de charger le programme à partir de cartes perforées, contenant la liste des instructions en code binaire spécifique à un type d'ordinateur particulier. La puissance (Le mot puissance est employé dans plusieurs domaines avec une signification particulière :) des ordinateurs augmentant, on les utilisa pour faire les programmes, les programmeurs préférant naturellement rédiger du texte plutôt que des suites de 0 et de 1, à charge (La charge utile (payload en anglais ; la charge payante) représente ce qui est effectivement transporté par un moyen de transport donné, et qui donne lieu à un paiement ou un bénéfice non pécuniaire pour être...) pour l'ordinateur d'en faire la traduction lui-même. Avec le temps (Le temps est un concept développé par l'être humain pour appréhender le changement dans le monde.), de nouveaux langages de programmation sont apparus, faisant de plus en plus abstraction ( En philosophie, l'abstraction désigne à la fois une opération qui consiste a isoler par la pensée une ou plusieurs qualités d'un objet concret pour en former une représentation...) du matériel sur lequel devaient tourner les programmes. Ceci apporte plusieurs facteurs de gains : ces langages sont plus faciles à apprendre, un programmeur (En informatique, un développeur (ou programmeur) est un informaticien qui réalise du logiciel en créant des algorithmes et en les mettant en œuvre dans un...) peut produire du code plus rapidement, et les programmes produits peuvent tourner sur différents types de machines.

La fin des programmeurs ?

De tous temps, on a prédit « la fin des programmeurs ».

Dans les années 60, les langages symboliques comme AUTO-CODE, Cobol (COBOL est un langage de programmation de troisième génération créé en 1959 (officiellement le 18 Septembre 1959). Son nom est...) et Fortran ont en effet mis fin - en grande partie - à la programmation de bas niveau tel que l'assembleur. Il semblait alors clair que n'importe qui était capable d'écrire du code du type

      multiply MONTANT-HT by TAUX-TVA giving MONTANT-TAXES.      add MONTANT-HT, MONTANT-TAXES giving MONTANT-TTC.      

ou

      RDELTA = SQRT(B**2 - 4*A*C)      X1 = (-B + RDELTA) / (2*A)      

plutôt que des dizaines de lignes cryptiques comme

      movl    %esp, %ebp      subl    $24, %esp      flds    12(%ebp)      fmuls   12(%ebp)      flds    8(%ebp)      flds    .LC0      fmulp   %st, %st(1)      fmuls   16(%ebp)      fsubrp  %st, %st(1)      fstpl   (%esp)      call    sqrt      fstps   -4(%ebp)      flds    -4(%ebp)      fsubs   12(%ebp)      flds    8(%ebp)      fadd    %st(0), %st      fdivrp  %st, %st(1)      
Nuvola apps kpager.svg
Il existe une catégorie dédiée à ce sujet : Méthode de développement logiciel.

Pourtant il a vite fallu se rendre compte que la programmation ne se limitait pas au codage, et que la conception d'applications était un vrai métier qui ne s'improvise pas.

Dans les années 80, la micro-informatique (La micro-informatique est un terme désignant les « petits » (le préfixe μιχρο, venant du grec) ordinateurs personnels; le terme même (en anglais : Personal Computer) ayant été...) a souvent conduit à une informatisation sauvage des entreprises, dont le service informatique débordé n'arrivait pas à satisfaire les demandes (qui ne correspondaient d'ailleurs pas forcément aux vrais besoins des utilisateurs finaux). Dans cette catégorie, on peut également partiellement ranger les applications développées avec des L4G par des utilisateurs non formés. Il est évident que ce type d'outil (Un outil est un objet finalisé utilisé par un être vivant dans le but d'augmenter son efficacité naturelle dans l'action. Cette augmentation se traduit par la...) (dont MS Access est un descendant) permet à un utilisateur non formé de réaliser de petites applications qu'il n'aurait pas entreprises autrement, et à un utilisateur compétent de développer très rapidement d’importantes applications, mais elles n'ont pas le pouvoir magique de faire l'analyse et la conception automatiquement dans les mains d'un utilisateur novice.

Page générée en 0.077 seconde(s) - site hébergé chez Amen
Ce site fait l'objet d'une déclaration à la CNIL sous le numéro de dossier 1037632
Ce site est édité par Techno-Science.net - A propos - Informations légales
Partenaire: HD-Numérique