기존 강의에 쓰던 방식으로 인벤토리를 추가하고, 현재 만든 부분들과 연결해서 오류없이 동작하도록 디버깅을 마쳤다. 앞으로 추가할 부분들까지 고려해서 더 다듬을 예정이다.
최종으로 사용할 캐릭터 에셋을 가져와 연결하고, 애니메이션도 작성하는 중이다.
오늘은 새로운 것을 만들었다기보다 가져온 것들 디버깅에 시간을 쏟았다. 이 뒤에도 작업은 계속 할 예정이지만 TIL에 담을 시간은 없을 것 같다.
같은 동작이지만 조건이 달라질 수도 있고, 그걸 if나 switch로 처리하기에는 가독성이 떨어진다.
인터페이스는 기본적인 추상화 방법중의 하나
추상화(Abstraction) - 여러 오브젝트에서 사용되는 공통의 속성이나 기능을 묶는 것.
추상화를 하게 되면 앞으로 어떤 행동을 할지는 모르지만, 그 행동을 위한 자리를 미리 만들게 됩니다.
추상화의 장점은 확장성
공통되는 것은 크게 2가지 - 행동 / 속성
인터페이스는 이 중 행동에 중점을 두고있다.
사용하려면 추상화 안에 실제로 들어갈 오브젝트를 만들어야한다.
인터페이스를 사용하면 의존성이 줄어들어 확장성이 좋아진다. 하지만 쉬운 일은 아니다.
단순 난이도를 떠나 작업의 스펙이 커지게 된다.
따라서 각각의 특성을 고려해 필요한 상황에 따라 전략적으로 구현하는 능력이 필요하다.