Gambas France BETA


Pas de compte ? Incription

Savoir quel sont les variables déclarées inutilisées

Ce sujet est résolu.

1
AuteurMessages
Jappy49#1 Posté le 22/8/2012 à 16:45:25
Bonjour les Gambasiens!
Etant passé de Gambas 2.24 à Gambas 3.2.1 sur OpenSuse 11.4, j'aimerais pouvoir supprimer les variables déclarées inutilisées.
Car à force de modifications certaines variables ne servent à rien.
Si quelqu'un a une idée, j'en serais preneur. Car le programme est très volumineux et demanderait beaucoup de temps pour tout contrôler.
Je remercie tous ceux par qui ce merveilleux logiciel existe et à ceux qui donnent des réponses dans ce forum.
A bientôt et merci d'avance pour les réponses qui vont êtres données.
Jappy49
linuxos#2 Posté le 23/8/2012 à 01:26:35
Un peu de sel, de poivre et la crevette sera... Le plus simple mais pas forcement le plus rapide serait de mettre en commentaire successivement la déclaration de chaque variable, et si une variable est utilisée dans le code alors Gambas remontera un erreur a l'execution. Cela indiquera que la variable est utilisée sinon il n'y aura pas d'erreur.

Je vois pas d'autre façon de faire.

Olivier
Lorsqu'on s'occupe d'informatique, il faut faire comme les canards... Paraître calme en surface et pédaler comme un forcené par en dessous.
Foromus#3 Posté le 25/8/2012 à 16:05:58
Bonjour,

Effectivement, et j'ai eu aussi le problème.
Je n'ai pas non plus de solution miracle. Cela dit, quand on fait un programme, on a une bonne idée des variables employées. L'idéal serait encore de se faire un fichier pour les noter, et les effacer quand elles ne servent plus : méthode conseillée, mais que peu de gens suivent, je suppose...
Donc, il m'est arrivé de devoir vérifier ça, et partant du principe que tout est déclaré, on a donc la liste en début de chaque formulaire. En lisant / listant, on a déjà une idée, et l'on sait grosso modo celles qui sont indispensables. Pour les autres, je fais comme linuxos, j'ajoute un "_" devant, ce qui en modifie le nom, je le fais pour deux ou trois à la fois, pas plus, et je lance le programme. Si tout tourne normalement, c'est qu'elles ne sont pas utilisées. Je continue ainsi sur les autres suspectes. Si j'ai une erreur, j'enlève le _ et je cherche plus loin. Une fois arrivé au bout des listes, je conserve un certain temps, et si après nombres de rotations (quelques mois ?..), rien ne s'est passé, j'efface mes "_variables". Il est d'ailleurs facile de les retrouver avec l'outil Recherche.
Autre possibilité aussi avec Recherche justement : en sélectionnant la variable suspecte, et en lançant sur l'ensemble du projet, on sait très rapidement si elle est utilisée et où. Si elle n'est pas trouvée, c'est qu'elle ne sert pas, naturellement ! Je pense que cette méthode est plus efficace que la précédente, car rien ne peut passer à la trappe...
Pour les variables locales dans les procédures, c'est moins grave, puisque limité...

Bon courage au gambassien angevin !
spheris#4 Posté le 26/8/2012 à 12:49:07
Un idée comme ça au passage :

Pour les variables globales (en début de fonction), je les passe en commentaire. si j'ai un message d'erreur, alors c'est qu'elles sont utilisées. Sinon bingo !
Pour les variables locales (dans une methode) alors là rien de plus simple, un oeil (ou les 2) sur le code et hop.

Bonne journée

;)

ps : Désolé Olivier ,je viens de voir que tu utilises la même méthode que moi. :D
gambix#5 Posté le 26/8/2012 à 16:07:56
Faire simple !Ça c'est prevut...

Déjà on a l'auto déclaration des variable locales
Moins de texte dans une signature c'est agrandir son espace.
Jappy49#6 Posté le 27/8/2012 à 09:14:42
Bonjour,

Merci pour les réponses, entretemps j'ai fais la même chose que spheris, c'est une bonne méthode.
Je vous souhaite une bonne semaine.
gambix#7 Posté le 4/9/2012 à 17:04:02
Faire simple !Depuis la révision 5122, Il suffit de compiler le projet (attention pas l'exécuter) pour voir apparaître en bas un nouvel onglet "Avertissements".

C'est les message d'avertissement du compilateur, et il indique principalement les variables non utilisées, ainsi que les fonctions. Un bon outil pour faire du ménage.


Moins de texte dans une signature c'est agrandir son espace.
1