Open eunyeong-so opened 3 years ago
저번 모각코때 말씀 드렸는데, 참견형 방법으로 진행해 보려고 합니다.
은영님의 디자인과 일부 설계 내용을 바탕으로 저도 같은 걸 만들어 보면서 서로 리뷰가 가능하도록 해보는 게 목표입니다.
곧 시작을 해볼 예정이에요.
설계하신 부분은 일단 생각하신 대로 진행해 보시면 좋을 것 같습니다. 플레이어와 몬스터의 공통요소를 뽑아내고 그걸 interface까지 생각하신 거면 곧 테스트 코드와 구현 코드를 작성해 봐도 될 거 같다는 생각입니다.
플레이어와 몬스터의 공통요소
플레이어와 몬스터는 기본 능력치로 (HP, ATK)를 가진다. 서로에게 Damage를(Attack, SpecialAttack) 두 종류로 입힐 수 있다.
//Stat Health Point Striking Power(ATK)
//Damage Attack Special Attack
Interface Design
IDamageable void Damage(int strikingPower, DamageType damageType);
IStat int HealthPoint { get; set; } int StrikingPower { get; set; }
Enum
public enum DamageType {attack, speicalAttack}
구현 예시
참고사항
Player의 Attack은 Hit(마우스클릭) 마다 실행될 것이고 Monster의 Attack, Special Attack은 라운드에 정해진 특정 초마다 자동 실행시키려 합니다!
인터페이스 단계부터 설계하는건 처음이라 많이 어색한 것 같습니다. 처음에는 다양한 인터페이스를 설계했었는데, 너무 오버된 느낌이들었습니다. 최대한 많은 공통점을 찾아내야할지, 최소한의 공통점을 추려서 설계해주는 것인지 하하😂