-
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
앱 버전 관리 기능 구현 #72
앱 버전 관리 기능 구현 #72
Conversation
This comment has been minimized.
This comment has been minimized.
Analysis Details0 IssuesCoverage and DuplicationsProject ID: co-niverse_dangjang-backend_AYj2jZJELehUZAlqDvRk |
* @author TEO | ||
* @since 1.3.0 | ||
*/ | ||
public record VersionResponse<T>(String minVersion, String latestVersion, @JsonInclude(JsonInclude.Include.NON_NULL) List<T> loadData) { |
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.
loadData가 어디서 쓰이는지 궁금해요 !
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.
intro 때 클라이언트에서 미리 로드할 데이터들을 넘기기 위한 필드에요 1.0.0 버전 때부터 존재했던거 였는데 앞으로도 계속 쓰이지 않을 경우 삭제하도록 하겠습니당
수고하셨습니다 ~ |
Changes 📝
Details 🌼
버전 정보
설계에 있어 두 가지의 고민이 있었습니다
created_at
으로 설정하여 버전 정보를 조회할 때 O(1) 소요 (PK는 정렬되어 있고, 조회할 때 가장 최근에 저장된 row를 조회)두 상황 간의 트레이드 오프는 크게 없다고 판단했고 버전 히스토리를 추적할 필요가 있을 수 있다고 생각해서 두 번째를 선택했습니다
버전 추가는 쿼카의 요청사항을 반영해서 로그인없이 api 호출, body의 key와 server에서 정의한 key를 비교해서 일치할 경우 저장합니다.
schema.sql
main/resource/schema-dev.sql
을 수정하면test/resource/schema.sql
도 똑같이 수정해야 했습니다따라서 symbolic link를 설정해서
main/resource/schema-dev.sql
을 수정할 경우 자동으로test/resource/schema.sql
에 반영되도록 변경했습니다Check List ☑️