title: When should we use default interface method in C#?
body: <p>In <strong>C# 8</strong> and later, we have <a href="https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/proposals/csharp-8.0/default-interface-methods" rel="noreferrer"><strong>default interface methods</strong></a>, so:</p>
  <p>Doesn't it ruin the principle of <strong>interface</strong>?</p>
  <p>When should we use <strong>default interface methods</strong> instead of <strong>base (abstract) class</strong>?</p>