-
Notifications
You must be signed in to change notification settings - Fork 0
Home
Hyemin Heo edited this page Jan 10, 2025
·
4 revisions
팀노션 | Wiki | 디자인 | 프로덕트 백로그 |
---|
-
회원가입 완료 버튼을 누르고 다음 화면으로 넘어가기 까지 로딩 시간이 2-3초 소요되는 문제
→ CPU 프로파일링을 통해 하나의 쓰레드에서만 테스크를 처리하고 있는 것을 파악
-
간헐적으로 텍스트 필드가 포함된 뷰에서 텍스트 필드를 선택할 때 1초 멈춤 현상이 일어나고 키보드가 올라오는 현상
→ 아직 이유 못 찾음
-
프로필 이미지를 로드할 때마다 메모리 사용량 급증
→ 이미지 size를 제한하지 않음
→ 원본 이미지를 앱에서 그대로 사용하기 때문
-
메이트 목록에서 불러오는 데이터의 개수가 많을수록 전반적인 메모리 사용량 증가
→ 현재 DB내 모든 데이터를 한꺼번에 불러오고 있음
-
Task 블록 처리 위치가 제각각이었던 점
→ VIPER에서 해당 Task 블록을 처리 역할 통일 필요
-
local persistance에서 데이터를 불러오는 작업이 비동기 처리가 되어 있지 않음
→ 비동기적으로 처리 필요
-
단일 쓰레드에서 여러 테스크가 수행되거나 순차적으로 비동기 작업이 진행되는 부분 발견
→ 병렬 처리 필요
-
Router 관련 코드가 메인 스레드에서 동작하게 하는 코드가 중복적으로 들어감
→ Router가 MainActor에서 동작하는 클래스를 상속받도록 처리 필요
- 병렬 처리가 가능한 부분은 별도의 태스크로 분리해서 처리하기
- P2P 통신 태스크의 선후관계 판단 후 연결 설정, 데이터 통신, 연결 해제 작업이 순서에 맞게 잘 동작하도록 관리하기
- 결합도 개선
- ex. NI/MPC
- UnitTest 커버리지 비율 60퍼센트까지 높이기
- UITest 도입하기
- 에러 타입 및 핸들링 통일하기
- CI/CD 적용하기
- 다이나믹 타입 지원하기
- VoiceOver 적용하기
- 네트워크 사용량 줄이기
- 섬네일 이미지 크기가 평균적으로 프로필 이미지 크기의 10% 이하가 되도록 만들기
- 섬네일 이미지와 프로필 이미지 분리 저장
- 메모리 사용량 줄이기
- 현재 기본 메모리 사용량 170MB / 버그트리아징 위해 고용량 이미지 사용시 600MB
- 고용량 이미지를 선택하더라도 200MB를 넘지 않도록 개선하기
- 페이징 기법 적용
- 이미지 다운샘플링
마지막 수정일 2025.01.10.