★ CODING ★ CLASSEURS WEKA ★ Comment exploiter toutes les ressources et augmenter les performances de votre AMSTRAD CPC ★ |
4/1.5 - Cours de programmation | Coding Classeurs Weka |
4/0 - Langages du CPC4/1 - Locomotive BASIC : Définitions et rappels de base 4/1.5 - Cours de programmation Cette partie s'adresse à tous les programmeurs, débutants ou confirmés, Avant de parler de méthodologie, nous pouvons remarquer que l'évolution des langages de programmation a suivi de près l'évolution des ordinateurs. Il y a une vingtaine d'années seulement, les informaticiens ne disposaient que du « langage machine » pour réaliser des programmes de longueur aussi importante que le respect qu'on vouait à leur personne, à juste titre d'ailleurs. Mais ces temps héroïques sont bien lointains, et le programmeur « moderne » dispose d'outils qui, certes, le ramènent au rang du commun des mortels, mais également, lui facilitent grandement la tâche. Ces outils sont de deux natures différentes :
Comment vous y prenez-vous quand vous décidez d'écrire un programme ?
La première méthode peut certainement convenir si le programme à écrire est court et/ou manipule peu de concepts différents. Mais, même dans ce cas, nous vous la déconseillons. A moins que vous n'ayez une grande habitude du langage de programmation utilisé et une connaissance a priori du problème que vous voulez résoudre, vous risquez :
La deuxième méthode est de loin plus sarne. C'est celle dont nous allons parler dans la suite. Elle consiste à diviser la résolution du problème en quatre phases successives :
1) Analyse du problème Il est nécessaire de bien définir le problème que vous vous proposez de résoudre avant d'entamer la phase de programmation. C'est même le point le plus important – et souvent le plus négligé – de l'analyse. En effet, comment prétendre écrire un programme sain si l'on n'a pas, dès le départ, formalisé toutes les données, finalités et traitements ? Entrée -> Traitement -> Sortie Posez-vous les questions suivantes :
2) Recherche d'une structure La première phase définie, vous devez en être arrivé au point où vous connaissez la liste
Dans la mesure du possible, essayez de décomposer les traitements en sous-traitements plus élémentaires et indépendants. De même, décomposez les sous-traitements en tâches indépendantes et encore plus élémentaires, et ainsi de suite pour arriver à créer de petits modules qui comportent seulement quelques dizaines d'instructions. Cette manière de décomposer un problème en sous-problèmes porte le nom d'analyse descendante. Cette méthode a pour avantage d'obliger le concepteur/programmeur à se poser les bonnes questions dès le départ de l'analyse : pour arriver à décomposer le problème en tâches de quelques dizaines d'instructions, il est effectivement nécessaire de l'avoir clairement défini. Le traitement se décompose donc en une série de modules de niveaux hiérarchiques de plus en plus faibles et réalisant de moins en moins d'opérations. Remarques : a) Essayez de limiter la décomposition au niveau 3. Cette remarque se justifie pour de petits programmes qui logent dans les 64 ou 128 kilo-octets de votre ordinateur. Descendez éventuellement au niveau 4 si le programme est très complexe, mais cela risque d'être inutile et risque de nuire à la bonne compréhension du logiciel. b) Essayez de ne pas avoir plus de 5 sous-modules par module. En effet, il est difficile de mémoriser plus de 5 concepts en même temps. Quand vous êtes à un niveau hiérarchique donné, pour un module donné, vous devez être capable d'avoir en tête les n sous-modules qui vont le composer. 3) Programmation Cette phase doit être quasi immédiate si vous avez respecté les consignes données dans les deux phases précédentes. A titre indicatif, elle ne devrait pas dépasser 30 % du temps total que vous passerez à la définition, la programmation et le test du programme. L'analyse du problème nous montre que les entrées sont :
La sortie est :
Si nous poursuivons l'analyse, le traitement peut se décomposer en
Ce qui se représente par le graphe structuré suivant : Le programme qui en résulte a la structure suivante :
4) Mise au point Cette partie doit être quasi inexistante si vous avez bien suivi les conseils
|