-
Notifications
You must be signed in to change notification settings - Fork 1
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
feat: 2.0.0 준비작업 #184
feat: 2.0.0 준비작업 #184
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.
고생많으셨습니다!
shared 함수들 보면서 든 생각인데 기존의 FeatureAction을 shared로 아예 대체해도 좋을 것 같아요.
말로 설명하기 좀 복잡한 면이 많아 시간잡아서 같이 얘기해보시져!
그외 피쳐들 모듈화 분리나 background, overlay modifier는 너무 잘 작업해주셔서 좋습니다!👍👍
-
저도 컨디션에따른 overlay를 적용해볼까 하다가 커밋은 안했었는데 이유가 뷰가 재생성되버려서 특정영역만 바뀌는게아니라 전체를 다시 그리더라구요 이런 이슈는 없었는지 궁금합니다
-
런치스크린관련 수정은 어떤건지 알려주세요!
|
.overlay(alignment: .bottom) {
if store.linkPopup != nil {
PokitLinkPopup(...)
}
} 이런상황에서 쓰려고 만들었는데 자연스럽게 사라지지않고 뷰가 재생성되서 깜빡거리는 현상을 발견했었던 기억이 나네요 😂 |
#️⃣연관된 이슈
📝작업 내용
shared
함수 액션 도입 및 탬플릿을 수정하였습니다.overlay
,background
모디파이어를 작성하였습니다.contraint
를 수정하였습니다.스크린샷 (선택)
💬리뷰 요구사항(선택)
스플래시 + 인트로 기능을 모듈화 하였습니다.
tuist
로 열심히 모듈화 했었습니다.하지만, API 통신 이후 기능별 데모앱은 로그인 기능이 없어 API를 받아오지 못하는 앱이 되었고, 저희도 디버깅시 자연스럽게 데모앱을 사용하지 않았습니다.
그렇기 때문에 스플래시 + 인트로 기능을 모듈화 하여, 데모 뷰를 만들고, 데모앱에서도 로그인을 할 수 있도록 하였습니다. (사실 좀 늦은 감이..ㅎㅎ)
사용법은 다음과 같습니다.
성능 개선을 위해 도입한 내부
shared
함수 액션 도입 및 탬플릿을 수정하였습니다.저희는
Reducer
내부에서도 액선들을 필요시 재사용 하기위해InnerAction
,AsyncAction
, ScopeAction,
DelegateAction`으로 액션을을 관리하였습니다.그러면서 자연스럽게 액션 안에 액션을 호출하는 일이 빈번하였고, 이는 공식문서에서 권장하지 않는 방법으로 소개되고 있습니다.
XCTest
다루는 것은 처음이라 이렇게 하는게 맞는지 확신이 안서는데..(잘 못 된거 있으면 바로 알려주세요..)만들어주신 테스트 타겟에서 테스트를 진행해 보았습니다.
ContentFeauture
의Store
를 의존시키고 있습니다. 이는 셀 단위이기 때문에 수많은Store
를 생성하게 되고, 수많은Store
내부에서 여러 액션들을 수행하게 됩니다.그렇기 때문에
ContentFeature
를 테스트 대상으로 삼았고,테스팅 로직은 메타데이터 조회 -> 메타데이터 반영 -> 썸네일 수정 API 요청 입니다.
아래는 테스트 결과들 입니다.
Store
내부에Shared
메서드를 작성하였습니다.이런 액션을
이렇게 바꿔 주기만 하면 됩니다. 저렇게 재사용 가능한 메서드만 추가해주면, 기존에 쓰던
InnerAction
,AsyncAction
,DelegateAction
열거형들도 문제없이 사용가능하며,run
액션 내부에서 어쩔 수 없이send
호출해야 하는 상황에도 대응이 됩니다.(기존 액션 정의 코드들이 남아있기 때문)조건에 따른
overlay
,background
모디파이어를 작성하였습니다.if - else
문, 옵셔널 바인딩에 대응하였습니다.close #171