Salut, je viens de mettre en ligne mon recueil de programmes en turbo pascal alors, je voudrai avoir vos impressions sur ces programmes.
Le site est : http://darkpi.100webspace.net .
Merci.
Salut, je viens de mettre en ligne mon recueil de programmes en turbo pascal alors, je voudrai avoir vos impressions sur ces programmes.
Le site est : http://darkpi.100webspace.net .
Merci.
Jiu,
Pour voir quelque chose, il faut un login, etc.
Je vais donc voir ailleurs.
Tu n' as pas besion de login, c' etait un petit probleme avec les "\" dans le html.Mais c' est reglé.
Hio,
A titre de curiosité, j'ai chargé "calendrier", et jeté un p'tit coup d'oeil (mais pas essayé).
- Le code manque d'une présentation correcte (en particulier, il faut aérer en sautant des lignes, au minimum pour séparer les différentes procédures/fonctions.
- Quand je vois ce code:
je me dis que j'aurais défini la table de référence tbl comme ceci:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 function valide(a,m,j:integer) :boolean; const tbl: array[1..12] of integer=(31,30,31,30,31,30,31,31,30,31,30,31); var b:boolean; begin b:= false; if (a>=0) then if (m>=1) and (m<=12) then begin tbl[2]:=28; if bissextile(a) then tbl[2]:=29; if (j>=1) and (j<=tbl[m]) then b:=true; end; valide:=b; end;
De plus, dans affichage,on retrouve cette même définition, avec les mêmes problèmes de mise à jour "au vol" de la table : faire une constante globale.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 const tbl: array[boolean][1..12] of integer= ( (31,28,31,30,31,30,31,31,30,31,30,31), (31,29,31,30,31,30,31,31,30,31,30,31) );
Contrairement à l'usage de variables globales, ça ne pose aucun problème de maintien du code.
Variables globales dont je vois que tu en utilises : à éviter (sauf rarissimes cas, on peut toujours s'en passer).
dans la procédure action,
dans le grand
chaque cas se termine par
Code : Sélectionner tout - Visualiser dans une fenêtre à part case tch of
c'est donc typiquement une ligne à sortir du case
Code : Sélectionner tout - Visualiser dans une fenêtre à part affichage(year,month);
Dans ce même case, les cas repérés par des constantes comme #75 ne sont pas immédiatement compréhensibles (désolé, mais je ne connais pas par coeur les codes de tous les caractères pour tous les encodages disponibles).
Un petit commentaire serait donc nécessaire.
Et d'ailleurs, globalement, ça manque de commentaires, qu'il ne faut pas hésiter à mettre, même pour toi, et encore plus si le code est destiné à être lu/utilisé par d'autres, comme c'est le cas ici.
Enfin, je ne suis pas allé plus loin dans la lecture, mais une chose m'a sauté aux yeux : tu pourrais sans problème éclater tes grandes procédures en plusieurs morceaux, le code résultant serait plus directement lisible.
J' avoue que je n' ai pas l' habitude de commenter mes sources comme tu le dis. J' en mettrai prochainement. Je vais essayer commenter les sources que j' ai publiées.
Jie,
J'espère que tu es autodidacte, et que ce n'est pas un prof qui t'a appris à ne pas en mettre (ou ne t'a pas appris à en mettre ?).
Si un jour tu te retrouves à développer un "gros" programme, c'est à dire plus de quelques dizaines de lignes (c'est déjà "gros" pour les débutants) [à titre personnel, mon plus gros en Pascal/Delphi dépassait le million de lignes, ce qui ne s'est pas fait en 1 jour, bien entendu], tu t'apercevras rapidement que les commentaires deviennent raidement utiles, et même nécessaires (as-tu déjà essayé de reprendre un de tes codes qui aurait déjà plusieurs années ?).
Dans la même idée, faire une présentation du code claire et régulière (indentation, aérer avec des lignes vides) est même encore plus important pour la lisibilité du code, et donc pour sa maintenance, compréhension...
Je te suggère également de tenir compte également de mes remarques sur le code lui-même.
Pour ceux qui sont toujours amoureux du TP7, vous trouverez sur http://darkpi.100webspace.net/index.php?page=autres quelques programmes qui vont surement vous plaire.
Ex : mario bros / moteur 3d / jouer des son au format midi et snd / ...
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager