Is Interface inheritance a bad practice?
问题 I was wondering if the following code shows a bad practice (about interface inheritance): public interface IFoo : IDisposable { void Test(); } public class TestImpl : IFoo { public void Test() { // do something } public void Dispose() { // disposing my dependencies } } public class FooFactory { public IFoo CreateFoo() { return new TestImpl(); } } public class Client { public void Main() { FooFactory factory = new FooFactory(); using(IFoo foo = factory.CreateFoo()) { // do stuff then auto