IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Déplacer les membres statiques vers une autre classe


Sujet :

C#

  1. #1
    Membre régulier
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mai 2022
    Messages
    109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mai 2022
    Messages : 109
    Points : 113
    Points
    113
    Par défaut Déplacer les membres statiques vers une autre classe
    Bonjour tout le monde,

    J'ai repris un projet WinForms .Net Framework 4.8 qui détecte les nouveaux mails.

    Les contraintes ont changé, notamment la première version remettait en veille la machine en l'absence de nouveau mail, sauf objection de l'utilisateur.

    Probablement, ça mériterait d'être réécrit, mais en parcourant ça en pas à pas je m'en suis sorti pour modifier les messages et ajouter la relève d'un autre dossier sur le serveur.

    Le projet fonctionne, mais suscite ma curiosité : à certains endroits, l'intellisense me propose de "Déplacer les membres statiques vers un autre type".

    Lorsque je cherche ça sur Internet, on m'explique ici comment je pourrais faire ça :
    https://docwiki.embarcadero.com/RADS...nt_des_membres

    OK, donc je sais comment je pourrais le faire à la main, mais je trouve que ce qu'on aurait pu en profiter pour me dire, c'est quel est l'avantage de faire ça.
    Problème de mot de passe réglé pour Gluups.

  2. #2
    Expert confirmé
    Avatar de popo
    Homme Profil pro
    Analyste programmeur Delphi / C#
    Inscrit en
    Mars 2005
    Messages
    2 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste programmeur Delphi / C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 2 721
    Points : 5 366
    Points
    5 366
    Par défaut
    Plus ta classe contient de méthodes, plus il devient compliqué de comprendre comment elles interagissent entre-elles (si elle le font).
    Cela rend difficile la lecture et le remaniement du code.

    Cela peut également signifier que ta classe fait trop de chose et que la responsabilité d'un traitement pourrait être confiée à une autre classe.

    Les méthodes statiques sont, par définition, indépendantes des autres membres de la classe (sauf s'ils sont également statiques).
    Et lorsque que tu dois déclarer beaucoup de champs et/ou méthodes statiques privés pour faire fonctionner une seul méthode statique publique, cela peut être un signe que ce comportement doit être confié à une classe statique dédiée.

    Déplacer du code permet également de l'organiser.
    Par exemple, lorsqu'une classe doit implémenter plusieurs interfaces, j'ai pour habitude de la déclarer partielle et d'implémenter chaque interface dans une unité séparée.

    Edit :
    Attention, la documentation que tu site concerne Delphi (Alexandria) et non C#.

  3. #3
    Membre émérite
    Profil pro
    Développeur Web
    Inscrit en
    Février 2008
    Messages
    2 317
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Février 2008
    Messages : 2 317
    Points : 2 507
    Points
    2 507
    Par défaut
    Bonjour,

    Merci pour la réponse.

    Ah c'est pourtant vrai, quand tu l'expliques je réalise que si on veut faire de la place, ça serait une mauvaise idée de commencer par les méthodes d'instance.

    Et c'est vrai que j'ai un formulaire dont le code a tendance à s'étirer un peu en longueur.

    Apparemment la notification est passée à l'as, désolé.
    Là j'étais en train de parcourir le forum.

Discussions similaires

  1. Appel membre static dans une autre classe
    Par cyriltec dans le forum C#
    Réponses: 2
    Dernier message: 12/04/2010, 11h23
  2. Réponses: 3
    Dernier message: 02/03/2010, 08h16
  3. Transporter les tableaux oracle vers une autre SGBD
    Par LaDouib dans le forum Administration
    Réponses: 1
    Dernier message: 24/02/2010, 16h45
  4. Réponses: 5
    Dernier message: 09/03/2007, 10h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo