Structure d'un programme
Ecrire un programme ne relève pas de la magie, loin de là. Mais ça reste quand même très simple pour peu que l'on observe quelques règles fondamentales. |
Nous avons déjà vu combien il était important
en HTML, de faire preuve d'une rigueur au dessus de tout soupçons.
Le moindre point manquant, le moindre point virgule (surtout lui) oubliée , la moindre accolade manquante ou en trop, fera invariablement "planter" le programme que nous aurons eu tant de mal à mettre au point. Ce qui est parfaitement insupportable, bien entendu. C'est pour ça que je ne saurais trop insister lourdement sur les quelques recommandations déjà faites au long de ce cours. Rigueur, méthode, soin, attention, précision poussée à la limite du supportable. |
Comme nous l'avons déjà vu, un programme PHP se compose de plusieurs éléments (autant qu'on pourra en imaginer) que nous avons appelé des "Fonctions". Ces petits employés laborieux chargés d'accomplir les tâches pour lesquelles ils ont été programmés. La principale qualité de ces petits employés laborieux, est qu'ils sont capables de faire ce pour quoi ils sont faits, sans tenir compte de "qui" leur demande de le faire. Si bien qu'un autre petit employé laborieux, pourra faire appel à un de ses collègues pour faire une chose que lui, ne sait pas faire. Et ceci, quasiment à l'infini. Ce qui est bien pratique, mais en même temps très
dangereux, car à la fin, si tout le monde donne des ordres à
tout le monde, on ne sait plus qui commande. |
En ce qui concerne la structure même du programme,
c'est à dire ses parties et comment elles s'organisent ensembles,
là encore j'ai mes marottes. mais comme elles sont le fruit d'une
longue expérience et qu'elles m'ont toujours données entière
satifaction, je vous les livre quand même. Vous en ferez évidemment
ce que vous voudrez mais vous verrez, elles sont sages. Come nous sommes sir l'internet, que nous écrivons
des programmes qui vont gérer des tonnes de choses, nous n'avons
pas à nous préoccuper de la taille mémoir disponible,
non plus que du temps que met un programme à s'exécuter.
Si nous écrivions des programmes de pilotage automatique de missiles
ballistiques, il faudrait faire attention à la moindre micro sconde
de décalage. Là, on s'en fiche un peu. Alors, n'hésitez
pas à mettre des commentaires, écrire des instructions claires,
déclarer vos variables en global (ça ne mange pas de pain).
Evitez les "siouxeries" attirantes et valorisantes pour l'esprit,
mais déplorables dans du code source. Dans tout programme, je propose de le découper en zones bien distinctes : // Commentaires généraux Là, vous dites à quoi ça sert, qui l'a écrit, quand et la date de dernière modif et par qui. Au besoin, quelq autres programmes se servent de lui. Quand on écrit des programmes de plus de sept ou huit mille lignes, on est bien content de trouver ça quand on ne se souvient plus qui se sert de qui. // Zone des variables Ici, vous déclarez les variables et les constantes dont vous aurez besoin au cours de l'éxcution du programme, avec des noms significatifs et ds commentaires pour dire à quoi sert telle ou telle variable. // Zone des fonctions principales Ici, vous écrivez les fonctions qui en appellent d'autres. Ce que nous avons appelé les "Contre Maîtres" ou "Main Program". Ce sont des fonctions qui sont elles mêmes déclenchées par vous ou par un événement quelconque. // Zone des fonctions secondaires Ici, vous écrivez les fonctions dont toutes les autres vont se servir. Les petits ouvriers bien laborieux qui effectueront les tâches élémentaires. Souvenez-vous toujours qu'il est nécessaire d'écrire une fonction pour faire quelque chose si cette chose doit être faite plus d'une fois. En clair, lorsque par exemple il faut vérifier si un champ d'un formulaire a bien été rempli par l'utilisateur, écrivez le petit programme qui effectue cette vérification dans sune fonction secondaire. Ainsi, lorsque vous aurez à vérifier si un autre champ a bien été rempli, vous n'aurez qu'à rppeler cette fonction au lieu d'écrire deuc fois la même suite d'instructions dans le programme principal. Vous voyez ce que je veux dire ? // Zone de réserve Ici, j'ai coutume de stocker des instructions ou des
bouts de fonctions (sous forme de commentaire bien sûr) qui me servent
à faire des tests, des essais, ou vérifier le contenu d'une
variable à un moment donné. Un peu mon placard aux trésors.
Dans le style "Je ne jette rien. On ne sait jamais, ça peut
toujours servir". Vous savez, comme ces boîtes à malice
de nos grand mères dans lesquelles on jette pêle mêle
le bouton trouvé, la vis qui ne sert plus, le bout de ficelle inutile.
Puis un jour, quand on a besoin de quelque chose, on le trouve forcément
dans cette boîte à malice. Bref en définitive, votre programme devrait avoir la tête suivante : // Commentaires généraux // Zone des variables // Zone des fonctions principales } function Principale2( ) { } // Zone des fonctions secondaires } function Secondaire2( ) { } // Zone de réserve
|
Là, tout dépend de ce que fait ce code.
Si les instructions doivent être éxécutées
immédiatement au chargement de la page dans le navigateur du client,
et si elles ne sont utilisables que par cette page HTML et par aucune
autre, il est parfois intgéressant de les mettre dans la page elle
même. Par contre, si ce sont des instructions qui peuvent être réutilisées par plusieurs pages différentes, il y a tout intérêt à les mettre dans un programme séparé appelé par la page HTML au bon endroit par les fameuses instruction include() ou require(). |
Ce cours est enseigné par Philippe
Médan
dans le cadre de la formation des professionnels de l'INTERNET.
au CREFAC
, 14 rue Scandicci, 93000 Pantin. Tél. : 01 48 46 51 99
au GITA-GRETA , Lycée
Technologique Diderot 61, rue David D'Angers 75019 Paris Tél. : 01
40 40 36 27
au CESI à l'Ecole
des ingénieurs, 116 Av Aristide Briand, BP 57, 92224 Bagneux CEDEX
Tél. : 01 45 36 70 00
© Philippe Médan 1999-2003. Tous droits de reproduction réservés pour tous pays.