원문정보
Design and Implementation of the Survival Game API Using Dependency Injection
초록
영어
Game object inheritance and multiple components allow for visualization of system architecture, good code reuse, and fast prototyping. On the other hand, objects are more likely to rely on high latency between game objects and components, static casts, and lots of references to things like null pointers. Therefore, It is important to design a game in such a way so that the dependency of objects on multiple classes could be reduced and existing codes could be reused. Therefore, we designed the game to make the classes more modular by applying Dependency Injection and the design patterns proposed by the Gang of Four. Since these dependencies are attributes of the game object and the injection occurs only in the initialization pass, there is little performance degradation or performance penalty in the game loop. Therefore, this paper proposed an efficient design method to effectively reuse APIs in the design and implementation of survival games.
한국어
게임 오브젝트의 상속 및 여러 가지의 컴포넌트를 이용하여 시스템 아키텍처의 시각화, 우수한 코드 재사용 및 빠른 프로토타이핑이 가능하다. 반면에 객체는 게임 오브젝트와 컴포넌트 간의 높은 대기 시간, 정적 형변환과 널 포인터 등의 많은 참조에 의존하기 마련이다. 게임 제작시에 여러 클래스에 대한 객체의 의존도를 낮추고 코드의 재사용이 가능 하도록 설계하는 것은 중요한 일이다. 따라서 의존성 주입(Dependency Injection)과 GoF(Gang of Four)가 제안한 디자인 패턴들을 적용하여 클래스의 모듈성을 더욱 높일 수 있도록 게임을 설계하였다. 이러한 의존성은 게임 오브젝트 의 속성이고 주입은 초기화 패스에서만 발생하므로 게임 루프에서 성능 저하나 성능 페널티는 미세하다. 따라서 본 논문 에서는 서바이벌 게임의 설계와 구현에 있어서 API(Application Programming Interface)를 효과적으로 재사용하는 효율적인 설계방법을 제안하였다.
목차
Abstract
Ⅰ. 서론
Ⅱ. 의존성 주입 및 설계패턴 관련연구
1. Unity3D의 참조와 싱글톤(Singleton) 패턴
2. 의존성 주입
3. 의존성 주입 프레임워크
Ⅲ. API 설계 및 구현
1. 게임 초기화
2. Facade 및 Adapter 패턴
3. State Pattern
4. Observer Pattern
5. User Interface
Ⅳ. 서바이벌 게임의 구현
Ⅴ. 결론
References