Computer >> 컴퓨터 >  >> 프로그램 작성 >> C#

인터페이스 분리 원칙이란 무엇이며 C#에서 구현하는 방법은 무엇입니까?

<시간/>

클라이언트가 사용하지 않는 인터페이스에 강제로 의존해서는 안 됩니다.

인터페이스 분리 원칙은 클라이언트가 사용하지 않는 인터페이스를 강제로 구현해서는 안 된다고 명시하고 있습니다.

하나의 팻 인터페이스 대신 여러 개의 작은 인터페이스가 메서드 그룹을 기반으로 선호되며, 각 인터페이스는 하나의 하위 모듈을 제공합니다.

인터페이스 분리 전

예시

public interface IProduct {
   int ID { get; set; }
   double Weight { get; set; }
   int Stock { get; set; }
   int Inseam { get; set; }
   int WaistSize { get; set; }
}
public class Jeans : IProduct {
   public int ID { get; set; }
   public double Weight { get; set; }
   public int Stock { get; set; }
   public int Inseam { get; set; }
   public int WaistSize { get; set; }
}
public class BaseballCap : IProduct {
   public int ID { get; set; }
   public double Weight { get; set; }
   public int Stock { get; set; }
   public int Inseam { get; set; }
   public int WaistSize { get; set; }
   public int HatSize { get; set; }
}

인터페이스 분리 후

예시

public interface IProduct {
   int ID { get; set; }
   double Weight { get; set; }
   int Stock { get; set; }
}
public interface IPants {
   int Inseam { get; set; }
   int WaistSize { get; set; }
}
public interface IHat {
   int HatSize { get; set; }
}
public class Jeans : IProduct, IPants {
   public int ID { get; set; }
   public double Weight { get; set; }
   public int Stock { get; set; }
   public int Inseam { get; set; }
   public int WaistSize { get; set; }
}
public class BaseballCap : IProduct, IHat {
   public int ID { get; set; }
   public double Weight { get; set; }
   public int Stock { get; set; }
   public int HatSize { get; set; }
}