TIL

[TIL] 내일배움캠프_Unity 최종 프로젝트 3주차: 주요 메카닉 구현 8, 기술 면접 대비 14일차

Hwone 2023. 11. 7. 00:43

팀 회의 내용

- DataManager 구조

- 주요 메카닉 완성도 높이기 

- 테스트 및 버그 픽스 

 

구현한 내용 

- UI_HomeScene 데이터 연결 

 

UI_HomeScene 에 있는 데이터는 Player의 데이터로 인벤토리나 재료 주문으로 인해 Scene 이동 없이 실시간으로 업데이트 해줘야 하는 특이점이 있었다 

그래서 가격이 변하는 곳에서 Update를 일일히 해주는 것 보다는 이벤트를 사용하여 Player 데이터가 변경되면 구독한 메서드가 호출되는 방식으로 만들었다 DataManager는 UI_HomeScene을 알고 있지 않게 구현했다 

또한, 다른 씬에서도 Player 데이터가 변경되었을 때 발생하는 예외처리를 위해 OnDestroy() 함수에서 DataManager에 구독한 메서드를 구독해제 해주었다

 

그리고는 자세하게 수정할 부분들 수정하고, 테스트하고... 반복...

 

기술 면접 대비 14일차 
Q : 콜백이란 무엇인가요? 사용해봤는지?

 

A: 콜백이란 비동기적인 이벤트 처리 및 비동기 작업 완료를 처리하기 위해 사용되는 기능으로 이벤트 발생 시 특정 메서드가 호출되도록 할 때 유용합니다 C#에서 콜백은 델리게이트를 이용하면 간단하게 표현할 수 있습니다 사용해봤던 경험은

몬스터가 죽었을 때 호출되는 콜백함수를 등록하여 사망 로직에 대해 작성하거나 필드에 몬스터가 다 죽으면 보스 방으로 연결해주는 포탈을 생성하는 콜백을 등록하여 델리게이트로 콜백을 구현했던 기억이 있습니다