Suivez-nous sur X
|
|
|
0,
A,
B,
C,
D,
E,
F,
G,
H,
I,
J,
K,
L,
M,
N,
O,
P,
Q,
R,
S,
T,
U,
V,
W,
X,
Y,
Z,
ALL
|
|
0,
A,
B,
C,
D,
E,
F,
G,
H,
I,
J,
K,
L,
M,
N,
O,
P,
Q,
R,
S,
T,
U,
V,
W,
X,
Y,
Z
|
|
0,
A,
B,
C,
D,
E,
F,
G,
H,
I,
J,
K,
L,
M,
N,
O,
P,
Q,
R,
S,
T,
U,
V,
W,
X,
Y,
Z
|
|
A propos d'Obligement
|
|
David Brunet
|
|
|
|
Programmation : GFA Basic - calendrier
(Article écrit par Pierre-Philippe Launay et extrait d'Amiga News - octobre 1991)
|
|
C'est l'instant le plus émouvant et de plus en plus célèbre dont on ne se lasse jamais malgré la difficulté intrinsèque
du mouvement : vous prenez délicatement, entre la phalangine du premier métacarpien droit et les phalangettes des quatrièmes
et cinquièmes métacarpiens homolatéraux, les bords latéraux-externes de votre souris, puis vous laissez reposer les
extrémités distales des deuxièmes et troisièmes phalangettes grâce à un mouvement modéré (ne nous leurrons point) de
prosupination. Ils ne vous reste plus qu'à rétablir un contact, à faible dualité temporelle récursive, de la pulpe distale
de votre index avec le bouton gauche de la souris. En résumé, je vais lancer l'interpréteur GFA : clic-clic.
Vous êtes encore là ? C'est donc que la vraie programmation vous intéresse. Le premier ou la première qui me fait un
codage compliqué dans le style du paragraphe ci-dessus, alors que cela peut se faire simplement, sera privé de Danone.
Pour écrire très proprement en GFA (qui existe maintenant aussi sur PC), il faut :
- Écrire en français.
- Mettre un maximum de commentaires synthétiques.
- Éviter toutes les abréviations.
- Faire des copies très régulières de notre travail sur plusieurs disquettes.
- Utiliser le plus du GFA (et du Basic C dans une moindre mesure), la programmation modulaire.
- Utiliser les farfadets WORD&, pour un codage destiné à la compilation et optimisation sous Devpac,
mais utiliser les farfadets BYTE|, pour un codage destiné à être diffusé non compilé avec GFABASR0.
Le cahier des charges demande de préparer une fenêtre représentant une grille de saisie pour la date.
Cette fenêtre devra comporter une zone de saisie pour le clavier et six autres zones seulement accessibles par la
souris :
- Les 31 jours du mois.
- Les 12 mois de l'année.
- 20 années en commençant avec l'année précédant la date actuelle (donc par exemple de 1990 à 2009).
- Une zone d'annulation des dernières saisies.
- Une zone de validation des saisies.
- Une zone de remise à la date initiale existant lors de la mise sous tension.
La date actuelle devra être mise en évidence.
Première remarque : faut-il faire afficher 31 jours ou seulement les jours du mois actuel ?
(par exemple, 30 jours pour septembre). Deuxième remarque : il n'y a d'indiqué ni les dimensions à respecter
pour chacune des sept zones ni leurs agencements particuliers sur l'écran. Le codage est donc indiqué à la suite
de cet article. Vous connaissez la règle du jeu : il y a encore et toujours trois erreurs à retrouver. Ce ne
sont pas des erreurs portant sur les DATA.
La première est comme d'habitude une simple faute de syntaxe que vous indiquera aussitôt GFA.
La deuxième est assez facile. Ce n'est qu'une inversion de fonctions qui produit alors un clignotement de l'écran.
D'ailleurs, à tout réfléchir, on pourrait se demander si la fonction utilisée ici est vraiment utile. La troisième
est assez classique et ne pardonne pas sous assembleur. C'est un récapitulatif des précédents chapitres.
Bien. Maintenant que vous avez trouvé, j'attire votre attention sur l'intérêt de ce codage. Il n'y a qu'une seule
commande : calendrier. Les procédures sont ensuite classées par ordre alphabétique. Cela permet de les retrouver beaucoup
plus rapidement quand le programme commencera à devenir important. S'il devient vraiment très long, on réalisera d'abord
un premier classement thématique (les procédures de saisie, d'affichage...) puis chaque procédure sera classée
alphabétiquement dans son thème spécifique. Enfin, la première procédure indiquera toujours le plan général suivi par
le codage.
Il me semble nécessaire de montrer le pourquoi d'une commande. Enlevez donc la commande "COLOR"
qui précède "DEFILE" ou ce qu'il en reste (gasp, j'ai révélé la première erreur). Relancez. La présentation
devient beaucoup plus terne car "COLOR" a pour fonction d'indiquer l'utilisation d'une nouvelle couleur (du
numéro 0 à 7, 15, 31 ou 63, selon le type d'écran) des lettres, fonds et bordures.
|