Bonjour tous le monde,

Aujourd'hui je suis face à un cas de consience. Est-ce sale de casser l'heritage dans une interface dans le but de séparer le getter du setter ?

Peut etre qu'un bou de code sera plus parlant
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
public interface IPerson
{
  string Name { get; }
}
 
internal interface IPersonWriteable : IPerson
{
  new strnig Name { get; set; }
}
C'est le fait d'être obliger de reprendre get, et d'utiliser new, qui m'a intrigué.

Mon besoin réel est légèrement différent du cas ci-dessus. Mais la question reste entière, est-ce sale? Ou est-ce une faiblesse du language/compilateur qui m'oblige à mettre "new" et reprendre le getter ?

Oui je sais, c'est une question délicate pour un vendredi après midi