# 리뷰: 마린과 메딕 안녕하세요! 클래스 생성시 마린클래스와 메딕클래스를 꼭 따로 만들어야 하나요? [파라미터로 객체전달] 강의 문제에서는 토르와 타노스객체를 히어로클래스 한개로 만들었는데용. 클래스를 어떤 기준으로 한개, 또는 여러개 만드는지 잘 모르겠습니다ㅠㅠ 어떤 차이가 있나용?!
마린과 메딕을 서로 다른 ~~객체~~클래스로 볼 것인지, 같은 ~~객체~~클래스로 볼 것인지에 따라 결정하면 되겠습니다.
예를들어, 강아지와 고양이를 Dog와 Cat 클래스로 설계할 수 있지만, 둘을 합하여 Animal로 표현할 수도 있겠죠? 마찬가지로 Marine과 Medic을 다른 클래스로 설계할 수 있지만, 하나의 Unit으로 설계도 가능합니다. 설계의 기준은 프로그램의 목적에 따른 개발자의 판단에 달려있는데, 이들을 나누어 얻는 이점과 하나로 통일했을 때 얻느 이점을 비교해보아야 합니다. 초기 학습의 관점에서는 되도록 나누는 것을 권장합니다.
우선, 문제 상에서 주어지는 메딕과 마린의 필드가 서로 다릅니다. 마린은 이름과 hp만 가지도록 설정되어 있지만 메딕은 mp도 가지고 있습니다. 그리고 '치유' 스킬은 메딕만의 고유 능력이라고 볼 수 있기 때문에 마린과 메딕 클래스를 따로 만들어주는 것이 맥락상 더 자연스럽습니다. (물론 이런 부분을 고려하지 않는다고 한다면.. 같은 클래스로 만들어도 문제는 없습니다.)