Skip to content
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

[AN-CONFIG] 초기 세팅 AN_FEAT #6

Merged
merged 20 commits into from
Jul 12, 2024
Merged

Conversation

murjune
Copy link
Contributor

@murjune murjune commented Jul 11, 2024

작업 영상

그런건 없다..

작업한 내용

PR 포인트

  • util 쪽을 자세히 봐주시면 좋을 것 같네용

🚀Next Feature

style, color, image 관련된 디자인 기초세팅

@murjune murjune added the AN_FEAT ✨ 안드 새로운 기능 label Jul 11, 2024
@murjune murjune added this to the 포켓로그 1차 배포 milestone Jul 11, 2024
@murjune murjune self-assigned this Jul 11, 2024
@murjune murjune force-pushed the an/feat/init-project branch 3 times, most recently from 27b78ff to b8eb00b Compare July 11, 2024 07:57
@murjune murjune linked an issue Jul 11, 2024 that may be closed by this pull request
7 tasks
Copy link

@sh1mj1 sh1mj1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

요청대로 유틸 부분 위주로, 리뷰 남겼어요~

버전 관련 부분은 아직 많이 아는 게 없어서 일단 따로 리뷰 안남겼어요.
프로젝트 진행해가면서 조금씩 찾아보고 고칠 거 있으면 회의 통해서 이야기 하면 될 것 같아요

고생했슴둥 오둥

@murjune
Copy link
Contributor Author

murjune commented Jul 11, 2024

assertj 삭제 + room dependency 추가함

Copy link

@kkosang kkosang left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

모르는 부분이 많아서 질문 폭격을 하고 싶었지만.. 일단 참았어요 😅
프로젝트를 진행하면서 헷갈리는 부분이 있으면 질문 할게요 ㅎㅎ :)

고생했습니돠 ~~ 👍

// third party
implementation(libs.kotlin.serialization.json)
implementation(libs.timber)
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

timber 라이브러리를 사용하는 이유가

  1. 클래스명으로 자동 tag 생성
  2. apk 릴리즈 시, 로그 출력을 방지
  3. 충돌 라이브러리와 통합이 용이
    이정도 이유 때문에 사용하는 걸까요?

Copy link
Contributor Author

@murjune murjune Jul 11, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

클래스명으로 자동 tag 생성
apk 릴리즈 시, 로그 출력을 방지

맞습니다! 디버그용 로그로 사용하기 좋아용

충돌 라이브러리와 통합이 용이

이게 무슨 뜻인가요?!

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

충돌 라이브러리와 통합이 용이

이게 무슨 뜻인가요?!

잘은 모르지만.. Sentry ? 같은 에러 모니터링 툴과 같이 사용하기에 용이하다는 뜻으로 이해했어용

/**
* ViewModel을 생성하는 Factory
*
* sample
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

sample code까지 있어서 알아보기 편하네요 ! 굿 👍

import kotlinx.coroutines.launch

/**
* Lifecycle에 맞게 알아서 collect/cancel을 반복해주게 해주는 확장 함수
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lifecycle에 맞게 자동으로 관리하면 리소스 관리 측면에서 효율적이겠네요 👍

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

이 부분은 내일 오프에서 설명 드릴게욥

import com.bumptech.glide.Glide
import poke.rogue.helper.R

@BindingAdapter("imageUrl")
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Coil을 사용하는 BindingAdapter도 만들어두면 좋을 것 같아요 !

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

저희는 Glide 를 main Library로 채택한만큼 테스트할 때 따로 만드는거 어떨까요??🤔
해당 BindingAdapter 는 Common 이니까요

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

저희는 Glide 를 main Library로 채택한만큼 테스트할 때 따로 만드는거 어떨까요??🤔 해당 BindingAdapter 는 Common 이니까요

common 한단어로 바로 이해완료..!

import android.view.View
import androidx.recyclerview.widget.RecyclerView

class GridSpacingItemDecoration(
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ItemDecoration 클래스 좋아요 👍

import androidx.annotation.StyleRes
import androidx.core.text.inSpans

inline fun SpannableStringBuilder.font(
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Spannable 을 사용해서 특정 문자에 이벤트처리를 할 수 있군요...! 😮

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

맞습니다! 보통 특정 문자의 font 나 color 를 바꿀 때 Spannable 을 사용하는데 해당 util 함수가 boilerplate 코드를 줄여줄 수 있을거에요!

Snackbar.make(anchorView, messageRes, Snackbar.LENGTH_SHORT).show()
}

fun Context.stringOf(
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

stringOf 확장함수는 만들어서 편리한 점이 있는걸까요 ? getString을 사용하는 것과 큰 차이가 없는 것 같아서요 !

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

저도.. 만들까말까 고민했지만 colorOf, drawableOf 처럼 통일성을 맞추고 싶었어요!
다른분들은 어떻게 생각하시나요?

import kotlin.time.TimeMark
import kotlin.time.TimeSource

inline fun View.setOnSingleClickListener(
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

스로틀링 관련된 부분인가요..!? 한번도 처리 해본적이 없어서, 어떤 경우에 사용하면 좋은지 예시도 부탁드려요 🙇🏻‍♂️

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

setOnclickListener 대신 사용하면돼요!! 나중에 사용할 일이 분명 있을건데 그때 코멘트 드릴게요 ㅎ ㅎ

throttle vs debounce 에 대해 학습해보시면 좋을거 같아요 💪

binding.xxxButton.setOnSingleClickListener{ .. }

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

setOnclickListener 대신 사용하면돼요!! 나중에 사용할 일이 분명 있을건데 그때 코멘트 드릴게요 ㅎ ㅎ

야호~

throttle vs debounce에 대해서 학습해보고 사용해볼게용😁

- GridSpacingItemDecoration 주석 삭제
- RecyclerViewItemCountAssertion 주석 삭제
Copy link

@JoYehyun99 JoYehyun99 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

아직 모르는 부분들이 많네요 🥲
앞에서 많이 남긴 것 같아서 코멘트 남길 부분은 따로 없슴니다 ~~~ 🤓
수고했어여 오둥

sh1mj1

This comment was marked as duplicate.

Copy link

@sh1mj1 sh1mj1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

assertJ, room, glide 확인~

@murjune
Copy link
Contributor Author

murjune commented Jul 11, 2024

코드리뷰 모두 반영했어요 💪 내일 오프에서 한 번 간단한 회의하고 머지할게용

@JoYehyun99 FlexboxLayout 도 추가했어요!

@JoYehyun99 JoYehyun99 merged commit 1c03b23 into an/develop Jul 12, 2024
1 check passed
@JoYehyun99 JoYehyun99 deleted the an/feat/init-project branch July 12, 2024 06:49
@murjune murjune restored the an/feat/init-project branch July 12, 2024 08:05
murjune added a commit that referenced this pull request Jul 12, 2024
build: rest-assured 의존성 추가

chore: 중복된 gitignore 삭제

pr 템플릿

android pr builder
docs: project 단 gitignore

build: gradle 버전 관리

feat: PokeRogueHelperApp

chore: Manifest INTERNET 설정

chore: Packaging base

utils: 프로젝트 ui 에서 사용할 util 추가

utils: test util

style: ktFormat

fix: 깃 충돌 해결

fix: PR Builder 수정

delete: assertj 삭제

build: room 설정 및 glide-compiler

refactor: 코드리뷰 반영

- GridSpacingItemDecoration 주석 삭제
- RecyclerViewItemCountAssertion 주석 삭제

refactor: withItemCount, performClickHolderAt 함수 RecyclerViewUtil 로 이동

- 기존 ViewInteractonExtensions

refactor: getDeviceSize -> deviceSize로 네이밍 수정

refactor: getDescription 에 View Id 추가

refactor: matchDescendantWithText 로 네이밍 수정

refactor: CommonBindingAdapter 로 네이밍 수정

build: FlexboxLayout 추가
murjune added a commit that referenced this pull request Jul 12, 2024
build: rest-assured 의존성 추가

chore: 중복된 gitignore 삭제

pr 템플릿

android pr builder
docs: project 단 gitignore

build: gradle 버전 관리

feat: PokeRogueHelperApp

chore: Manifest INTERNET 설정

chore: Packaging base

utils: 프로젝트 ui 에서 사용할 util 추가

utils: test util

style: ktFormat

fix: 깃 충돌 해결

fix: PR Builder 수정

delete: assertj 삭제

build: room 설정 및 glide-compiler

refactor: 코드리뷰 반영

- GridSpacingItemDecoration 주석 삭제
- RecyclerViewItemCountAssertion 주석 삭제

refactor: withItemCount, performClickHolderAt 함수 RecyclerViewUtil 로 이동

- 기존 ViewInteractonExtensions

refactor: getDeviceSize -> deviceSize로 네이밍 수정

refactor: getDescription 에 View Id 추가

refactor: matchDescendantWithText 로 네이밍 수정

refactor: CommonBindingAdapter 로 네이밍 수정

build: FlexboxLayout 추가
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
AN_FEAT ✨ 안드 새로운 기능
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[AN-CONFIG] 초기 세팅
4 participants