도리안의 2025년 개발기 #118 - 예상보다 길어지는 홈 화면 개발 일정
예상보다 길어지는 홈 화면 개발 일정
No. 118
2025. 07. 01 (화) | Written by @dorian-dev
오늘의 개발기
오늘은 홈화면을 수정하고 있다. 어제부터 시작했으며, 지금까지 한 일들 그리고 추가 내용을 아래와 같이 목록으로 정리한다.
어제, 오늘 한 일
- SettingsRepository 인터페이스에 D-DAY 관련 함수 추가
- 일정 이름 읽기/쓰기
- 날짜 읽기/쓰기
- D-Day 구하기
- 뷰모델 클래스 HomeViewModel 생성
- Flow 정의
- 일정 이름 및 D-Day 구독
- 데이터 처리 함수 정의
- 일정 이름, 날짜, D-Day 저장
- Flow 정의
- 테스트 코드 작성
- SettingsRepositoryTest 클래스 작성
- SettingsRepository 클래스에 추가한 함수들 테스트
- HomeViewModelTest 클래스 작성
- HomeViewModel 클래스에 추가한 flow, 함수 테스트
- SettingsRepositoryTest 클래스 작성
- 홈 화면 수정
- 강사 소개 이미지 제거하고, 그 자리에 정답률과 진도율 표시
- 랭킹 화면에서 구현한 컴포저블 함수 재활용
- 일정 이름, D-Day를 보여주는 텍스트 추가
- 일정 이름, 날짜 수정을 위한 편집 버튼 추가
- 수정 팝업은 내일 구현 예정
- 강사 소개 이미지 제거하고, 그 자리에 정답률과 진도율 표시
고민: 개발 속도에 대한 불만족
지난 프로젝트가 예상보다 길어져서 이번 프로젝트의 일정이 상대적으로 촉박하다. 최대한 빠르게 개발하고 싶으나, 마음과 달리 현재의 속도는 만족스럽지 않다. 원인이 무엇인지 이해할 수 있어야 한다.
개발 속도가 빠르지 않은 이유
- 테스트 코드 작성
- Repository, 뷰모델의 로직 검증을 위한 테스트 클래스를 만드는데 시간 소요
- 프리뷰용 Mock 클래스 작성
- Jetpack Compose 프리뷰를 사용하기 위해 mock repository, mock DAO 클래스 작성
- 예전 작성 경험이 있지만, 다시 익히는 시간이 필요했다.
- D-Day 계산 방법이 생소함
- 어려운 로직은 아니지만, 평소에 잘 사용하지 않았던 LocalDateTime, LocalDate 클래스 사용에 익숙치 않음
- 커스텀 팝업 구현 방법 복기
- 커스텀 팝업을 작년말에 만들어 봤지만, 수개월이 지나서 다시 익히는 중
오늘의 교훈
- 모르는 것이든, 익숙하지 않은 것이든 이를 빨리 인지하고 학습하자.
- 한번 배운 것은 문서화 해두자
- 나중에 다시 구현할 때, 시간 절약 가능
지난 2025년 개발기
- #117 - 프리뷰(preview)를 추가하며 개발 중
- #116 - 다음 프로젝트에 대한 소문
- #115 - 저번 프로젝트에서 Jetpack Compose로 리뉴얼 하길 잘했다고 생각한 이유
- #114 - 프로젝트를 마치고 긴장이 풀렸다
- #113 - 팝업을 닫은 후에도 쿠폰 입력 화면이 여전히 남아 있는 문제 해결
- #112 - 출시를 앞두고 쿠폰 입력 화면이 다시 뜨는 문제
- #111 - 다음 프로젝트 일정에 대한 걱정
- #110 - 이미지 추가 변경 건 그리고 다음 프로젝트 준비
- #109 - 내부 테스트 없이 Play Asset Delivery 테스트 가능 (Android)
- #108 - 다음 프로젝트 시작해야 하는데...
- #107 - 학습 알림 추가 화면에서 다시 나타난 버그
- #106 - Room 데이터 업데이트 직후 UI 작동 오류 (팝업 A, B가 연달아 뜸)
- #105 - 미래에 대한 기대와 걱정
- #104 - Room으로 데이터 읽기는 즉시 반환 함수보다 Flow 권장
- #103 - 매주 금요일 저녁에는 '한주 동안 내가 한 일'을 기록하며 회고
- #102 - Jetpack Compose로 클릭 처리시, 팝업이 잠시 보이고 다시 사라지는 문제
- #101 - 홈 화면에서 진도율이 0%만 뜨는 버그를 수정하며 배운 점
- #1 ~ #100
Layout provided by Steemit Enhancer hommage by ayogom
Posted through the ECblog app (https://blog.etain.club)
안녕하세요.
SteemitKorea팀에서 제공하는 'steemit-enhancer'를 사용해 주셔서 감사합니다. 개선 사항이 있으면 언제나 저에게 연락을 주시면 되고, 관심이 있으신 분들은 https://cafe.naver.com/steemitkorea/425 에서 받아보실 수 있습니다. 사용시 @응원해 가 포함이 되며, 악용시에는 모든 서비스에서 제외될 수 있음을 알려드립니다.
안녕하세요.
이 글은 SteemitKorea팀(@ayogom)님께서 저자이신 @dorian-dev님을 응원하는 글입니다.
소정의 보팅을 해드렸습니다 ^^ 항상 좋은글 부탁드립니다
SteemitKorea팀에서는 보다 즐거운 steemit 생활을 위해 노력하고 있습니다.
이 글은 다음날 다시 한번 포스팅을 통해 소개 될 예정입니다. 감사합니다!
Upvoted! Thank you for supporting witness @jswit.