J'ai une classe avec deux méthodes. Pendant l'exécution de l'application, j'envoie l'instance d'Operations à une autre classe en tant que paramètre.Principe de responsabilité unique violant
public class Operations
{
/// <summary>
/// calculating the available money to use in operations
/// </summary>
void CalculateAvailableAmount(int x)
{
//making some calculation
}
/// <summary>
/// sharing some values between shareholders
/// </summary>
void Distribute(decimal total)
{
//making some calculation
}
}
après avoir écrit ci-dessus, réalisé que je devrais utiliser l'interface, parce que la logique des méthodes peut être modifiée (j'utiliser l'interface comme paramètre).
public interface IOperations
{
void CalculateAvailableAmount(int x);
void Distribute(decimal total);
}
Mais je ne peux pas décider que, ces deux méthodes ne dépend pas directement entre eux cependant, les deux faisant le calcul des valeurs et de distribuer ces valeurs. Ici, j'ai pensé que la logique des 2 méthodes peut être changée après un moment. Aussi probablement, je vais écrire plus de 10 méthodes comme ci-dessus, Est-ce violer SRP? Garder des méthodes apparentées semble une meilleure idée dans une classe mais d'autre part, je pense que cela peut aller à l'encontre du principe de la SRP. Lequel est le mieux à mettre en œuvre? toutes les méthodes dans différentes classes et différentes interfaces, ou est-ce correct?
merci