EFFACER LES RÉPERTOIRES TEMP ET CUSTOM

cs_merlin2000
Messages postés
2
Date d'inscription
mardi 26 août 2003
Statut
Membre
Dernière intervention
17 janvier 2011
- 17 janv. 2011 à 15:40
fredatcs
Messages postés
14
Date d'inscription
mercredi 2 mars 2005
Statut
Membre
Dernière intervention
20 juillet 2010
- 27 janv. 2011 à 21:36
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/52734-effacer-les-repertoires-temp-et-custom

fredatcs
Messages postés
14
Date d'inscription
mercredi 2 mars 2005
Statut
Membre
Dernière intervention
20 juillet 2010

27 janv. 2011 à 21:36
Bonjour,
Je suis développeur C Sharp depuis peu donc je suis sur d'avoir des bad practices
merci pour les conseils
billou_13
Messages postés
860
Date d'inscription
jeudi 4 mars 2004
Statut
Membre
Dernière intervention
19 août 2014
29
27 janv. 2011 à 11:43
Bonjour,

En plus des commentaires de merlin2000 et shenron666, j'ajouterai les remarques suivantes:
1. Pourquoi supprimer les fichiers du répertoire avant de supprimer le répertoire alors que la méthode Directory.Delete(string, bool) peut s'en charger: http://msdn.microsoft.com/fr-fr/library/fxeahc5f%28v=VS.80%29.aspx .

2. L'utilisation de la ligne:
if (e.ToString() == "System.UnauthorizedAccessException")
est plus que déconseillée. On pourrait même dire que c'est un "bad-practice".
Il faut préférer le code suivant:
catch(UnauthorizedAccessException ex)
{
// Ici pour unauthorized...
}
catch (Exception ex)
{
// Ici pour les autres types d'exception...
}

3. Ne pas nommer une fonction qui ne fait pas ce qu'elle dit. ie:
- "delete_repertoire" ne supprime pas le répertoire car elle le re-créé à la fin...
- "check_directory" créé le répertoire alors que ce n'est pas la traduction de check...
- etc...

4. Le mélange de français/anglais n'est pas des plus séduisant. Choisis une ligne de conduite et tiens là.

5. Pas mal de choses seraient aussi à revoir au niveau de la gestion des exceptions, de la sortie console des infos, etc...

Tout ceci empêche complétement la ré-utilisabilité de ce code.
fredatcs
Messages postés
14
Date d'inscription
mercredi 2 mars 2005
Statut
Membre
Dernière intervention
20 juillet 2010

18 janv. 2011 à 13:44
En effet un del c:\temp\*.* dans un fichier bat aurait suffit mais j'apprends le C sharp et cela ma donné une excuse.
Les experts en C sharp trouveront ma source inutile mais je pense que certains débutants apprécieront.
shenron666
Messages postés
229
Date d'inscription
dimanche 14 septembre 2003
Statut
Membre
Dernière intervention
20 août 2014

18 janv. 2011 à 10:03
tout ça pour ça, ou comment utiliser un bazooka pour tuer une mouche
un simple fichier batch étant largement suffisant pour vider ces répertoires
fredatcs
Messages postés
14
Date d'inscription
mercredi 2 mars 2005
Statut
Membre
Dernière intervention
20 juillet 2010

17 janv. 2011 à 23:39
Bonjour Merlin,
merci pour ces remarques
1. moi je préfère hardcoder C:\temp
merci pour System.IO.Path.GetTempPath(), je ne connaissais pas

2. EtSousRépertoire c'est juste pour que ce soit plus lisible
en effet True est suffisant.

3. je crée le répertoire c:\temp car je ne sais pas comment tous les sous-répertoires de c:\temp sans effacer ce dernier.
si tu as une solution, je suis preneur.
Afficher les 6 commentaires