가벼운 코드 리뷰 및 Unity 로 리펙토링시 고려해야할점

게임 시연 및 코드를 보여드린다.

Q) 게임 맵 구성은 어떻게 되나요?

0101이 2D맵 구성할 때 기본적인 방법 중 하나이다.

특수한 타일들은 a, b, c 등으로 표시 → 42과제랑 똑같다.

3D → 복사본을 미리 준비하고 미리 세팅해서 그려놓고 랜더링을 한다. 수동으로 하기 힘들다면 for문으로

Q) 찾아보니까 script 언어로 lua 를 쓴다고 들었는데 실제 현업에서도 많이 쓰이는 스크립트인지 궁금하다

최근에 입사한 분들의 얘기를 들어보면 lua를 쓴다고 한다. 게임을 개발하는 용도는 아니고 커스텀하는 용도로 사용한다.

이미 만들어진 게임에 커스텀 기능을 넣을때 쓴다. → Unity 에서는 안써보셨다

Q) 지금 코드는 싱글턴을 사용하고 있는데, 실제 개발할때도 싱글턴을 자주 사용하는지 + 객체 지향언어에서는 싱글턴 사용을 지양한다고 하는데, 어떻게 생각하시는지

조금 복합적이다...

싱글턴을 좋아하지 않는다! 디버깅이 어렵다!

→ 흐름으로 디버깅을 하는데 싱글턴은 급발진 느낌이다.. 아무때나 가져올 수 있어서 맥락이 없다. 작은 사이즈 게임에서는 괜찮을 수 있지만, 프로젝트가 커지면 커질수록 흐름을 따라가는 처리에서 어려움이 있다.

싱글톤이 유용한 경우는 객체들끼리의 의존성이 없이 단독적으로 활용되는 경우에는 유용하다! 하지만 이정도는 static 메서드로 처리할 수 있지 않다

결론 : 남용하지 말자

Q) 싱글턴 패턴을 사용하지 않는다면, 어떤식으로 객체들이 서로를 접근하는게 좋은것인지 추천하는 디자인 패턴이 있는지