[코드 하나도 없는 티아엘]
즐거운 팀과제 시간...
- 알게된 것
- 나는 손과 머리가 느리다
그릇에 비해 너무 큰 임무가 주어져서
어려웠던 것 : 모든 것 ...
UI의 중요성을 고려하지 못했다.
주요 기능인 배틀에서 꽤나 중요한 역할을 하는데 코드가 너무 이상해져버렸다.
데이터를 받아오는 것부터 문제가 있었다
다른 기능들은 구현 중에 계획이 변경되는 일들이 있더라도 사전에 어떤 기능들과 데이터가 요구되는지 어느 정도 정리를 하고 들어갔는데, UI는 너무 얕봐버려서... 설계를 제대로 하지 않고 들어가버렸다. (시네)
아무튼 배틀 UI는 고려해야 할 부분이 너무 많았다.
데이터 불러와서 주기적으로 반영해주기, 입력 받기, 받은 입력 표시하기, 입력이 완료되었다 판단되면 입력 넘겨주기, 다 쓴 컴포넌트 지워주기 등 독립적으로 기능하기보다는 데이터에 영향을 받고, 지속적으로 변경되는 부분이었다.
데이터를 받아오고 배틀매니저로 보내는 과정에서 코드들이 아주 꼬여버린 것
+ 턴제이다 보니 타이밍이 중요한데 꼬여버린 코드 속에서 타이밍이 맞지 않는 원인을 찾기도 오래 걸림
배틀매니저와 배틀UI매니저는 좀 더 연결되어 있어도 좋았을 것 같음. 타이밍이 중요한 턴제인 만큼 데이터에 동기화가 잘 일어나야 하는데, 데이터를 가져오고 업데이트 하는 것을 각자 하고 있는 꼴
UI에서 필요한 데이터를 배틀매니저가 부분별로 묶어서 관리하고 UI가 필요할 때 내보내주는 형식으로 했어야 했는데, UI에서 필요한 데이터를 배틀매니저에서 찾지 못할 때 배틀매니저에 추가할 생각을 안 하고 전부 UI에 때려넣으니 비효율적으로 코드가 짜여졌다. 연결이 중요한 부분을 맡았는데 상호작용 해야 하는 다른 코드들을 완전히 파악하지 않고 작업을 시작해버린 것도 문제였고, 갈수록 흘러내리는 멘탈 관리 못한 것도 작업 지연에 영향을 준 것 같다.
추가적으로 잘못한 것
필요한 레퍼런스를 매니저가 잘 보관하고 있다가 필요한 곳에 촥촥 보내줘야 하는데, 중구난방으로 각자 인스펙터에서 불러오는 문제점 + 매니저 또한 필요한 레퍼런스를 폴더에 정리한 후 로드 해오는 방식으로 해야 씬 이동 및 테스트가 가능한데, 각자 만든 매니저를 다른 사람들이 필요로 할 때 많은 레퍼런스를 수동으로 연결해주려 하다 보니 문제가 자꾸 발생함
코드 정리 안 됨 + 파일 정리 안 됨의 환장의 콜라보였다고 한다.
배틀이 구현이 되어야 테스트도 하고 다른 부분들이랑 연결도 할 텐데 이게 구현이 자꾸 안 되니까 프로젝트에 제대로 분탕질 치고 있구나... 하는 실감이 나고 자괴감이 꽤나 들었다.
다른 분들 뚝딱뚝딱 코드 짤 때 시간에 엄청 쫓기면서 손 떨고 있는게...
실력도 문제인데 제대로 해보지 않았던 작업이라 얼마나 시간이 걸릴지 예측하지 못한 것도 문제였다.
할 수 있을 거라 생각했는데 시간이 너무 부족해서 코드 정리도 못 하고 일단 돌아가게 만들어야 한다는 생각에 사로잡혀서 뇌 빼고 작업해버리기...
자학 TIL 같은가요?
사실 웃고 있습니다.
진짜 정말 죄송한데... 좋은 경험이었거든ㅇ... 배우는 건 정말 많았다는...
UI 입력값 받아서 넘기는 거 다시 연습해보고 싶을 정도로...
최종 들어가기 전에 쉬어갈 수 있는 시간이 있으면 좋겠다.
시간 나면 리팩토링은 아니더라도 어떻게 설계하고 어떤 방식으로 데이터를 불러와서 반영해야 했는지 꼭 돌아보기
'👾 내일배움캠프 > 🎮 TIL & WIL' 카테고리의 다른 글
내일배움캠프 51일차 TIL - Float과 Int (0) | 2023.10.24 |
---|---|
내일배움캠프 50일차 TIL - WBS란? (협업 준비하기) (0) | 2023.10.24 |
내일배움캠프 47일차 TIL - UI 담당자의 반성 (1) | 2023.10.22 |
내일배움캠프 38일차 TIL - Tilemap 활용하기 (0) | 2023.10.22 |
내일배움캠프 WIL 8주차 - 팀 프로젝트 (1) | 2023.10.21 |