Je voudrais demander si cette implémentation des classes Genotypes
et Individual
viole le principe d'inversion des dépendances? Si oui, comment résoudre ce problème?Est-ce une utilisation valide de DIP (SOLID)?
Voici le code:
public interface IGenotype
{
//some code...
}
public abstract class AIndividual
{
// ... some code
public IGenotype Genotype { get; set;} // DIP likes that !
}
public class Individual : AIndividual
{
public Individual()
{
// some code ...
this.Genotype = new Genotype(); // Is this ok in case of DIP?
}
}
public class Genotype : IGenotype
{
// ... some code
}