프로젝트 회고
[리팩토링] OCP(개방 폐쇄 원칙) 기반 설계: 상속에서 인터페이스로 전환
🤔 초기 설계: "공통점이 많으니 Base로 관리하자."프로젝트 초기, ASoulCharacterBase를 설계할 때 저는 확신에 차 있었습니다.Player와 Enemy는 공격, 피격, 사망 등 공통 로직이 80% 이상이었기 때문입니다.공통 시스템: 공격, 피격, 방어, 사망공통 컴포넌트: Attribute, Combat, State공통 로직: 데미지 계산, 히트 리액션// 공통 로직은 Base에!class ASoulCharacterBase : public ACharacter, public ISoulCombat{protected: // 공통 컴포넌트 UAttributeComponent* AttributeComponent; UCombatComponent* CombatComponent; ..
2025. 12. 3. 00:26