Leçons de niveau 12

Initiation à la programmation/Généralités

Une page de Wikiversité.
Sauter à la navigation Sauter à la recherche
Début de la boite de navigation du chapitre
Généralités
Icône de la faculté
Chapitre no 1
Leçon : Initiation à la programmation
Retour auSommaire
Chap. suiv. :L'algorithme
fin de la boite de navigation du chapitre
Icon falscher Titel.svg
En raison de limitations techniques, la typographie souhaitable du titre, « Initiation à la programmation : Généralités
Initiation à la programmation/Généralités
 », n'a pu être restituée correctement ci-dessus.

Introduction[modifier | modifier le wikicode]

Un programme est le contexte (matériel et logiciel, y compris l'espace mémoire) qui englobe, et donc défini la frontière dans laquelle se situera l’application.

Il permet d'effectuer une suite d'opérations de façon automatique. Il comporte généralement des instructions de saisie destinés à démander la valeur de différentes données, puis des instructions de traitement de ces données, et enfin des instructions d'affichage des résultats obtenus.

Même s'il est possible d'écrire un programme petit à petit par touches successives,

  • le résultat est souvent décevant
  • la mise au point délicate
  • la maintenance difficile (voir impossible)

Ces trois problèmes venant surtout du manque de lisibilité d'écoulant d'une écriture faite sans vision globale.

Il est donc nécessaire d'avoir et d'appliquer un minimum de méthode et de rigueur.

La programmation structurée[modifier | modifier le wikicode]

Représentation graphique symbolique d'un programme et de ses sous fonctions.

Un programme doit être construit, du point de vue le plus générale jusqu'au point de vue le plus spécifique. C'est ce que l'on nomme une analyse descendante.

Si le rectangle (ci-dessous) le plus grand représente le programme global et que les plus petits représentent les blocs fonctionnels dont il est constitué, on a d'une part :

  1. Une structure de programme mal écrit où tous les blocs fonctionnels sont interdépendants. Avec des efforts de bord, où le programme sollicite des ressources qui n'ont pas été définis auparavant.
  2. Une structure d'un programme bien écrit, chaque fonction est décomposée en fonction plus petite et indépendante.

L'analyse descendante[modifier | modifier le wikicode]

La programmation est avant tout une méthode d’analyse et non d'apprentissage d'un langage.

Une fois la méthode assimiler et mise en place, il suffit de la traduire dans le langage approprié pour avoir son programme qui fonctionne sous divers systèmes d'exploitation (operating system, OS).

L'analyse descendante permet d'avoir :

  • une conception plus aisée ;
  • une meilleure efficacités du programme (moins d'erreurs) ;
  • une maintenance plus aisée par la suite.

Un programme est un système complexe qu'il n'est pas possible d'aborder dans son ensemble. C'est pourquoi, on décompose les programmes en blocs fonctionnels indépendants. Ces blocs fonctionnels indépendants sont plus simples à étudier et misent bout à bout, ils résolvent le problème global.

Ce programme sera constituer du programme principal qui ordonnera de façon général les opérations a mener en faisant appel à des sous-programmes plus petits (fonctions).

Imaginons le programme qui calcul les racines d'une équation du second degré ax2 + bx + c = 0, à discriminant positif.

Début
    Instruction de déclaration des valeurs : a, b, c {entre les valeurs utiles en mémoire}
    Instruction de calcul du discriminant {D = b2 − 4ac}
    Instruction de calcul de la 1ère racine {r1 = bD1/2/2a}
    Instruction de calcul de la 2nd racine {r2 = b + D1/2/2a}
    Appel à la fonction d'affichage de : 1ère et 2nd racines {affiche le résultat sur le module de dialogue}
Fin

Programmer c'est :

  • définir précisément le problème à résoudre ;
  • décrire peu à peu la solution par un algorithme ;
  • enfin, traduire l'algorithme en un langage de programmation quelconque.