나는 Jeff와 jpaver의 의견에 모두 동의합니다. 또한 아키텍처에 구성 요소 모델을 채택하면 테스트 가능성이 크게 증가한다고 덧붙였습니다. 구성 요소 모델을 사용하면 각 구성 요소는 단일 작업 단위를 수행해야하며 격리 된 상태에서 (또는 제한된 모의 객체로) 테스트 할 수 있어야합니다.
마찬가지로, 개체에 의존하는 게임의 다른 부분은 작동하기 위해 구성 요소의 하위 집합에만 의존해야합니다. 실제로 이것은 일반적으로 이러한 영역을 쉽게 테스트하기 위해 몇 가지 가짜 구성 요소를 조롱하거나 테스트 목적으로 부분 엔티티를 구성 할 수 있음을 의미합니다. 예를 들어, 렌더링 및 입력 컴포넌트는 물리 테스트에 필요하지 않기 때문에 생략합니다.
마지막으로, 인터페이스에 관해 게임 커뮤니티의 일부 사람들이 얻는 성능에 관한 조언을 무시하겠습니다. 인터페이스로 코드를 작성하고, 성능 문제가 발생하면 쉽게 프로파일 링, 식별 및 리팩토링하여 문제를 해결할 수 있습니다. 인터페이스의 성능 영향 또는 인터페이스의 복잡성 오버 헤드에 대한 Noel의 우려에 대해서는 설득력이 없었습니다.
즉, 모든 작은 것을 독립적으로 테스트하려고 시도하지 마십시오. 대부분의 테스트와 디자인은 올바른 균형을 유지하는 것입니다.