SOLID 썸네일형 리스트형 C# 인터페이스 분리 원칙(ISP) 적용 사례 인터페이스 분리 원칙(ISP, Interface Segregation Principle)은 클린 코드의 핵심 원칙 중 하나로, 하나의 거대한 인터페이스보다는 역할에 맞는 작고 구체적인 인터페이스를 여러 개 정의해야 한다는 원칙입니다.1. ISP 원칙 개요ISP는 클라이언트가 사용하지 않는 메서드에 의존하지 않도록 하는 것이 목적입니다. 이를 통해 코드 유지보수가 쉬워지고, 변경에 유연한 설계를 할 수 있습니다.2. ISP를 적용한 예제아래 예제는 동물 인터페이스를 하나로 묶어 과도하게 많은 기능을 포함하는 경우와, ISP를 적용해 역할별로 인터페이스를 분리한 경우를 보여줍니다.3. ISP 미적용 문제 코드public interface IAnimal{ void Eat(); void Fly(); .. 더보기 C# 인터페이스와 추상 클래스 비교 1. 개념 설명인터페이스는 타입이 수행해야 할 계약을 정의합니다. 메서드 시그니처만 제공하며 구현과 상태는 없습니다. 반면 추상 클래스는 일부 공통 구현과 상태를 갖고, virtual/abstract 멤버로 확장 지점을 노출합니다. 상속은 하나만 가능하지만 인터페이스는 여러 개를 구현할 수 있어 역할 조합에 유리합니다.2. 코드 예제아래 예제는 추상 클래스의 기본 구현과 인터페이스 계약을 함께 사용하는 방법입니다.using System;public interface ILogger{ void Log(string msg);}public abstract class Worker{ public abstract void Work(); public void Greet() => Console.Write.. 더보기 이전 1 다음