타입 객체 패턴 (Type Object Pattern)
1
타입을 상속으로 표현하는 대신 참조 관계로 만들어서 유연하게 타입을 표현한다. 다양한 몬스터가 등장하는 RPG를 만든다고 가정해보자. 첫 번째 마을 근처에는 다양한 슬라임들이 등장하고, 두 번째 마을에서는 고블린 등이 등장하고, 세 번째 마을에서는 오크들이 등장하고.. 장소마다 특정 테마가 있고, 같은 종족의 다양한 몬스터가 등장하는게 일반적일 것이다. 레드 슬라임, 블루 슬라임, 그린 슬라임 등이 존재하고 고블린 아처, 고블린 워리어, 고블린 매지션 등이 존재할 때, 각 종족은 공통되는 특징들이 존재할 것이다. 고블린은 속도가 빠르다거나 오크는 체력이 많다거나 말이다. 상속으로 종족만들기 일단 출발은 MonsterBase클래스를 만들 것이다. public class MonsterBase { protec..