기본 패턴
csharp
public interface IDamageable
{
void TakeDamage(int amount);
}
public class Enemy : IDamageable
{
public void TakeDamage(int amount) { }
}설명
interface는 구현보다 규칙을 먼저 정의합니다.- 여러 클래스가 같은 방식으로 동작해야 할 때 특히 유용합니다.
- 의존성을 줄이고 테스트하기 쉬운 구조를 만드는 데 자주 사용합니다.
짧은 예제
csharp
void Hit(IDamageable target)
{
target.TakeDamage(10);
}빠른 정리
| 항목 | 설명 |
|---|---|
interface | 기능 계약 정의 |
: IDamageable | 인터페이스 구현 |
| 다형성 | 구현체가 달라도 같은 방식으로 사용 가능 |
주의할 점
인터페이스는 공통 규칙을 정의할 때 강력하지만, 너무 잘게 쪼개면 오히려 구조가 읽기 어려워질 수 있습니다.