객체지향의 사실과 오해라는 책을 읽고 멘토님과 책 리뷰를 하는 과정에서 스타크래프트 유닛을 객체지향적으로 설계해보자 라는 이야기가 나왔고, 객체지향을 직접 경험해보고 싶은 상태인데 아이디어가 없어 고민하는 중 너무 좋은 주제가 나와 바로 시작하게 되었다. 진행은 아래 크게 3단계로 나누었고, 점진적으로 3단계 하위에 단계를 쪼개 계획하여 진행할 예정이다.
언어는 JAVA, 이유는 단순히 객체지향 프로그래밍의 대표적인 언어라고하면 가장 많이 언급되기 때문
(확장해서 코틀린을 배우기위함이기도 함)
언어는 C#(화면 구현은 Unity로 진행할 계획)
현실의 게임 요소를 코드로 구현하기 위해 객체화 하는 설계 과정을 통해 이론이 아닌 직접적을 경험해보고, 나만의 객체지향에 대한 주관을 가질 수 있게함이 목적
- 1단계 : 설계(문서)
- 2단계 : 코드 구현(C#)
- 3단계 : 유닛이 코드대로 움직이는 게임 화면까지 구현(Unity)
- 저그(커맨더)가 유닛을 선택하고 이동시킴
- 저그(커맨더)가 해처리를 생성
- 생성된 유닛이 명령을 받아 이동한다.
- 생성된 해처리는 라바,드론 유닛 생성 가능
- 개념 모델 구성
- 개념들의 협력 구성
- 도출된 도메인 구조를 이용하여 UML 다이어그램 제작
- 인터페이스 정리, 확립
- 1,2단계를 통해 설계된 "문서 그대로" 코드 구현