-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
228 screen loading speed improvement #241
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
고생하셨습니다.
코멘트 확인 부탁드릴게요 :)
} | ||
} | ||
|
||
class SkeletonRecommendOotdWidget extends StatelessWidget { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
기존 RecommendOotdWidget 과 child 부분만 빼고 동일한데,
굳이 분리하지 않고 child를 nullable로 만들어서 재사용하면 더 좋을 것 같습니다.
color: Colors.white, | ||
), | ||
), | ||
viewModel.dailyLocationWeather != null |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
viewModel.dailyLocationWeather 의 null 여부를 확인하는 중복 코드들이 보이는데,
따로 한줄로 빼서 사용하면 좋을 것 같습니다.
그리고 위젯을 선언해서 값을 넣어야 할 필드에 삼항연산자로 처리하면 더욱 깔끔할 것 같네요
@@ -249,3 +239,115 @@ class _HomeScreenState extends State<HomeScreen> { | |||
); | |||
} | |||
} | |||
|
|||
class HomeScreenCityTextWidget extends StatelessWidget { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
분리한 위젯은 컴포넌트 폴더로 뺴주시면 감사하겠습니다.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM 👍
…Path 필드를 nullable 하게 하여 스켈레톤 구현
:: 최근 작업 주제 (하나 이상의 주제를 선택해주세요.)
:: 구현 목표 (해당 브랜치에서 구현하고자 하는 하나의 목표를 설정합니다.)
:: 구현 사항 설명 (작업한 내용을 상세하게 기록합니다.)
HomeScreenViewModel.initHomeScreen()
에서 Future.wait 적용하여 병렬처리로 동작하도록 변경getRecommendedFeedsUseCase
,getSearchFeedsUseCase
유스케이스에 적용CachedNetworkImageProvider
통한 캐싱 처리RecommendOotdWidget
스켈레톤 위젯인SkeletonRecommendOotdWidget
작성RecommendOotdListWidget
로딩 상태에 따른 shimmer 로딩 효과 적용:: 성장 포인트 (해당 기능을 구현하며 고민했던 사항이나 새로 알게된 부분, 어려웠던 점 등을 작성합니다.)
:: 기타 질문 및 특이 사항
HomeScreenViewModel.initHomeScreen()
의getDailyLocationWeatherUseCase
에서 GPS, 날씨 정보를 받아오는 부분에서 지연시간이 발생하여 홈화면 전체의 로딩속도에 영향을 끼침, 해당부분 로직 및 속도 개선이 필요할 듯