1. 기능을 구현한 이유 커뮤니티 앱을 개발하면서, 게시글 조회 API를 통해 데이터를 효과적으로 처리하고 화면에 표시하는 것이 필요했습니다. 대규모 데이터를 한 번에 표시하게 되면 사용자 경험이 저하되고 성능에도 영향을 미칠 수 있습니다. 따라서, 두 기능을 도입해 네트워크 오버헤드를 줄이고 초기 데이터 로딩 시간을 단축시킬 수 있도록 구현하였습니다. 1-1. Pagination (페이지네이션) 정보를 여러 페이지로 나누어 표시하는 프로세스 사용자가 스크롤할 때, 다음 페이지의 데이터를 가져와 표시 1-2. Prefetching (프리패칭) 데이터가 실제로 필요하기 전에 사전에 데이터를 가져오고 캐시에 저장하는 프로세스 사용자가 스크롤할 때, 미리 데이터를 로드 2. Pagination 방식과 장단점 ..
iOS/Trouble Shooting
문제 상황 새로운 체크리스트가 생성된 경우, Custom Alert을 띄워주고 싶었으나 Alert이 화면에 나타나지 않는 이슈 발생!! deinit 메서드를 활용해서 디버깅 해보니 2가지 문제점을 발견했습니다. 문제점과 해결 과정 1. Post 전에 addObserver가 일어나야 한다! 왼쪽: 잘못된 순서로 사용한 예시 / 오른쪽: 올바른 순서로 사용한 예시 문제점 왼쪽 그림에 설명된 문제 상황을 보면 addObserver 해주는 뷰가 생성되기 전에 Post 해줌 ㅠ.ㅠ Observer를 올바르게 등록하고 알림을 수신할 준비를 하려면 addObserver 과정이 먼저 발생해야 합니다! 무조건 먼저 거쳐줘야 원하는 신호를 관찰 가능하고, 필요한 옵저버가 배치되기 전에 알림이 전송되는 상황을 방지하고 문제..