TIL - 2024.04.01 월요일 (개인프로젝트 29일차)

· 성취/개선/학습한 내용 🏆

  • Operator
    • debounce
    • distinctUntilChanged
    • withLastestFrom
    • zip
    • orEmpty
  • DesposeBag
    • Cell DesposeBag
    • prepareForReuse
  • GameKit
    • GKLocalPlayer.local.authenticateHandler
    • GKLocalPlayer.local
    • isAuthenticated
    • 게임센터의 유저 인증

 오늘은 RxSwift에 대해서 학습을 했다. 기존에 딜리게이트나 다른 방법들로 구현하던 것들이 RxSwift를 사용하면 너무나도 쉽게 구현된다는 게 신기하기도 하고, 막상 혼자 다시 해보려니 어려움이 많았다. 당분간 RxSwift 학습에 좀 더 시간을 투자해서 익숙해지게 공부해야겠다. 그리고 데이터 공유를 위해서 게임센터를 구현하며 공부를 진행했다. 약간의 공부가 더 필요하지만 아는 분의 도움으로 쉽게 이해하며 구현할 수 있을 것 같다.

· 모르는 부분???? 🥺

  • 사실 GameKit을 사용해 본 적이 없어서 어떻게 로그인 화면이 뜨는지, 언제 인증을 해줘야 하는지, 또 어떤 방법을 통해 데이터 통신을 할 수 있는지 하나도 몰랐다. 그래서 어느 시점에 사용자 인증을 해줘야 하고, 또 어떻게 매칭을 시켜줘야 하는지 고민이 많았다. 다만 사용자 인증을 하는 시점은 앱에 접속할 때 한 번이면 충분하다는 조언을 통해 구현은 완료했지만, 매칭 방법은 아직 고민이 많다.

· 기술적으로 어려웠던 부분 😵😵‍💫

  • Operator 중 withLastestFrom이 정확하게 어떤 형식으로 실행되는지 아직 헷갈린다. 바로 이해할 수 있도록 학습이 필요하다.

· 고민되는 지점 ⁉️🤔

  • 데이터를 공유할 때 어떤 방법으로 해야 할지 고민이 된다. 예를 들자면 공유 버튼을 누르면 4자리 번호가 나타나서 공유받는 사람이 그 번호를 입력하면 데이터가 공유하게 되는 방법이 있을 수 있다. 또 더 효율적이거나 좋은 방법은 없는지 고민해 봐야겠다.

· 생각보다 덜/더 걸리는 작업과 그 이유  😱/🥴

  • 지인의 도움을 통해 GameKit을 활용해 데이터를 공유하는 부분은 생각보다 빠르게 진행을 하고 있다. 다만 구현과 동시에 모르는 부분을 알아보고 기록도 하기에 원래 생각했던 시간보다 약간 더 걸리는 것 같다.