본래 윈폼이나 wpf 위주의 인하우스 툴 개발을 했기 때문에
ui간의 정적인 이벤트 연결에 엄청나게 유용하고 깔끔하다는 것은 알고 있었는데
게임쪽으로 오니까 동적으로 생성/파괴되는 경우 구독을 해제하는걸 놓치거나 변경 알림을 꼼꼼히 못하는 상황이 생길까봐 두려움
특히 캐릭터랑 ui 동기화쪽이 업데이트 함수에서 계속 체크하는 것이 성능은 더 먹긴 하지만 변경을 델리게이트로 알리려고 하니까 실수확률이 높아질 것 같아서 기피하게 되는 편..
업계의 보편적인 방식인지는 잘 모르겠음
사실 델리게이트 추가하면서 동시에 파괴하는 로직을 미리 같이 만들어두고 오브젝트 파괴 시점에 실행만 시키도록 하면 될텐데 귀찮아서 안했다가 버그 터질때마다 한줄씩 추가하는 중 ㅋㅋㅋ
hp같이 변수에 관여하는 곳이 세군데 넘어가면 나도 걍 업데이트로 ui 갱신함 이벤트로 처리하면 백퍼 실수하게 되는곳이 몇군데 있음 - dc App
델리게이트 쓸때 작업 연속성을 갖고 진행하면 편하던데 일주일 지나서 다시보면 아직 서툴러서 그런지 많이 햇갈리더라구요 저는
객체 간 수명 관리와 참조가 엄격하게 통제되는 상황에서는 참 깔끔한데, 그 외의 상황에서는 IObservable 쓰는게 좋은 거 같음. - dc App
여러곳에서 등록시켜놨는데 실행순서가 바뀔 때 버그난 적 있음 - dc App
옵저버 패턴은 신이다
구독/구취 타이밍이 깔끔하게 정리하느라 저도 고생좀 ㅎㅎ 함