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 :

Locker la structure d'une classe.


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juin 2005
    Messages
    700
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Juin 2005
    Messages : 700
    Par défaut Locker la structure d'une classe.
    Bonjour tout le monde.

    Voila, j'entamme le week-end sur une question à priori farfelue...

    J'ai fais une classe où j'ai implémenté IComparable.

    Je crains que dans 6 mois, je rajoute un champ, et oublie de mettre à jour la methode CompareTo, ce serait fatal !

    Alors oui biensur on ne peut pas rendre la structure d'une classe figée (classe mode lecture seule ).

    Mais connaitriez vous une astuce pour garantir que si l'on touche à cette classe, on n'oublie pas d'ajourner CompareTo?

  2. #2
    Membre émérite

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juin 2011
    Messages
    487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2011
    Messages : 487
    Par défaut
    Développer en TDD

    Non sinon niveau code pur à part un gros commentaire de bourrin dans la classe je ne vois pas ...
    Mon blog sur les technos .NET et Agile -> http://blog.developpez.com/maximepalmisano/

  3. #3
    Membre éclairé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juin 2005
    Messages
    700
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Juin 2005
    Messages : 700
    Par défaut
    Et justement ! baaaah tu vas me dire que je m'y prend mal...


    Mais meme avec du tdd, mes tests verront toujours que le compare fonctionne alors qu'il ne tient pas compte des nouvelles variable à intégrer

    sinon idée de fou... le #warning, on ne pourrait pas lui donner des conditions... ?

  4. #4
    Membre émérite

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juin 2011
    Messages
    487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2011
    Messages : 487
    Par défaut
    Nan mais quand tu fais du TDD, tu mets à jour les tests en fonction de ce que tu ajoutes. Rien ne t'empêche de mettre un commentaire à l'endroit où le test du nouveau paramètre doit être fait.

    Sinon tu appelles ton test de la méthode Compare -> Test_Compare_HAVE_TO_TAKE_ALL_PARAMETERS_IN_COUNT()

    Nan honnêtement, je ne vois pas vraiment de méthode magique pour faire ça :s
    Mon blog sur les technos .NET et Agile -> http://blog.developpez.com/maximepalmisano/

Discussions similaires

  1. Declarer une structure dans une classe
    Par sub-0 dans le forum Débuter
    Réponses: 5
    Dernier message: 01/11/2009, 17h03
  2. Difference entre une structure et une classe
    Par reda17 dans le forum C#
    Réponses: 5
    Dernier message: 19/03/2009, 16h22
  3. Réponses: 2
    Dernier message: 11/03/2009, 19h23
  4. erreur de compilation : probleme avec type de structure dans une classe
    Par medkarim dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 21/10/2008, 15h33
  5. Réponses: 1
    Dernier message: 29/06/2007, 15h13

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