Il y a une partie de notre base de code écrite dans le style suivant:
// IScheduledTask.cs
public interface IScheduledTask
{
string TaskName { get; set; }
int TaskPriority { get; set; }
List<IScheduledTask> Subtasks { get; set; }
// ... several more properties in this vein
}
// ScheduledTaskImpl.cs
public class ScheduledTaskImpl : IScheduledTask
{
public string TaskName { get; set; }
public int TaskPriority { get; set; }
public List<IScheduledTask> Subtasks { get; set; }
// ... several more properties in this vein,
// perhaps a constructor or two for convenience.
}
C'est-à-dire qu'il existe un grand nombre d'interfaces spécifiant juste un ensemble de propriétés sans comportement chacune avec une implémentation correspondante unique qui les implémente avec des auto-propriétés. Le code est écrit par une personne assez âgée (beaucoup plus que moi) et est en dehors de cette utilisation d'interfaces de code procédural raisonnable. Je me demandais si quelqu'un d'autre avait rencontré / utilisé ce style et s'il avait des avantages par rapport à l'utilisation de DTO concrets partout sans les interfaces.