새 프로젝트하면서 인터페이스를 좀 활용해보자!
하면서 구조를 짜서 코딩하고 있는데

예를들어 특성을 만듬 ->

특성이
대충
패시브 - 공격력증가
조건패시브 - 타격당 데미지증가
이런식이면

특성을 가질 수 있는 entity가 가지는 인터페이스로
IHoldingTrait
프로퍼티 list<ITrait> traits
void AddTrait
void RemoveTrait

ITrait
프로퍼티 so traitData
void ApplyTrait // 패시브 - 공격력증가
void UnapplyTrait //특성 무효화

이걸 상속받는
IOnAttackTrait
void ApplyAttackTrait // 패시브 - 타격당 데미지증가

해서

특성이 적용될 트리거마다
if문으로 trait is IOnAttackTrait attackTrait
attackTrait.ApplyAttackTrait

이런식으로 돌려버리는 식으로
막 인터페이스 마구 만들고 마구 써버리는데
경험이 없으니
이 인터페이스를 어디까지 만들어야 하나?의 늪에 빠져버린 것 같아

근데 아직 경험이 없으니
백문이 불여일견이라고
일단 써보고 머리 박아봐야 할거같아서 써보는중ㅋㅋ....

- dc official App