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

πŸš€ 4단계 - μž₯λ°”κ΅¬λ‹ˆ(μˆ˜λŸ‰) #118

Open
wants to merge 5 commits into
base: yangsooplus
Choose a base branch
from

Conversation

yangsooplus
Copy link

πŸš€ 4단계 - μž₯λ°”κ΅¬λ‹ˆ(μˆ˜λŸ‰)

  • 3단계 리뷰사항 반영
    • μƒνƒœκ°€ μžˆλŠ” CartScreen ver. ν…ŒμŠ€νŠΈ μ½”λ“œ μž‘μ„±
    • 넀이밍 μˆ˜μ •, 프리뷰 μΆ”κ°€ λΉ λ₯Έ λ―Έμ…˜ κ΅¬ν˜„μ„ μœ„ν•΄ λ„˜μ–΄κ°”μŠ΅λ‹ˆλ‹€!
    • κΈˆμ•‘ 포맷 ν…μŠ€νŠΈ μ»΄ν¬λ„ŒνŠΈλ‘œ 뢄리 λΉ λ₯Έ λ―Έμ…˜ κ΅¬ν˜„μ„ μœ„ν•΄ λ„˜μ–΄κ°”μŠ΅λ‹ˆλ‹€!
  • μƒν’ˆ λͺ©λ‘ μ•„μ΄ν…œ μ»΄ν¬λ„ŒνŠΈμ— μˆ˜λŸ‰ 쑰절 ui μΆ”κ°€
  • μƒν’ˆ λͺ©λ‘μ—μ„œ μˆ˜λŸ‰ 쑰절 κΈ°λŠ₯ κ΅¬ν˜„

  • μ§€λ‚œλ²ˆ 3단계 λ―Έμ…˜μ—μ„œ μƒνƒœκ°€ μ—†λŠ” CartScreenTestλ₯Ό 적고 괴리감을 λŠκ»΄ν–ˆλŠ”λ°μš”, κ·Έλž˜μ„œ 비ꡐ차 μƒνƒœκ°€ μžˆλŠ” StatefulCartScreenTest둜 볡제 ν›„ λ¦¬νŒ©ν† λ§ ν•΄λ³΄μ•˜μŠ΅λ‹ˆλ‹€. μ΄λŸ¬κ³ λ‚˜λ‹ˆ μ§€λ‚œλ²ˆμ— 질문 λ“œλ Έλ˜ 괴리감이 λ§€μ›Œμ‘ŒμŠ΅λ‹ˆλ‹€~
    • μΆ”κ°€λ‘œ κΆκΈˆν•œ 점은 ν™”λ©΄λ‹¨μœ„ ν…ŒμŠ€νŠΈλ₯Ό ν• λ•Œμ—λŠ” Statefulν•œ 화면을 ν…ŒμŠ€νŠΈ ν•˜λŠ” 것이 κΈ°λ³ΈμΈκ°€μš”? ν˜Ήμ€ 상황에 따라 λ‹€λ₯΄λ‹€κ³  보면 λ˜λŠ” κ²ƒμΌκΉŒμš”? Stateless / Stateful ν•œ CartScreen 각각에 ν…ŒμŠ€νŠΈλ₯Ό μž‘μ„±ν–ˆμ„ λ•Œ, Stateful μͺ½μ˜ ν…ŒμŠ€νŠΈκ°€ μ’€ 더 μ˜λ―Έμžˆλ‹€κ³  λŠκ»΄μ Έμ„œ μ§ˆλ¬Έλ“œλ¦½λ‹ˆλ‹€~
  • 4단계 λ―Έμ…˜μ„ ν•˜κ³  λ‚˜λ‹ˆ λ―Έμ…˜μ˜ [ν”„λ‘œκ·Έλž˜λ° μš”κ΅¬ 사항]에 3λ‹¨κ³„μ—μ„œ μž‘μ„±λœ μž₯λ°”κ΅¬λ‹ˆ ν™”λ©΄ ν…ŒμŠ€νŠΈκ°€ μ‹€νŒ¨ν•˜λ©΄ μ•ˆ λœλ‹€. λΌλŠ” 문ꡬ가 μžˆμ—ˆμŠ΅λ‹ˆλ‹€. 무언가 μ˜λ„κ°€ μžˆλŠ” 문ꡬ라고 생각은 λ“€μ§€λ§Œ 아무리 생각해도 4단계 λ―Έμ…˜μ„ μˆ˜ν–‰ν•  λ•Œ 3λ‹¨κ³„μ˜ ν™”λ©΄ ν…ŒμŠ€νŠΈκ°€ μ‹€νŒ¨ν•  일이 μžˆλ‚˜..? 잘 λͺ¨λ₯΄κ² μŠ΅λ‹ˆλ‹€. ν˜Ήμ‹œ μ œκ°€ λ†“μΉœ λ―Έμ…˜μ˜ μ˜λ„κ°€ μžˆμ„κΉŒμš”?
  • 자꾸 λ―Έμ…˜μ΄ λŠ¦μ–΄μ Έμ„œ λ””ν…ŒμΌν•œ 뢀뢄은 λΉΌκ³  μš”κ΅¬ 사항 μ±„μ›Œμ„œ PR μ˜¬λ¦½λ‹ˆλ‹€!

Copy link
Member

@malibinYun malibinYun left a comment

Choose a reason for hiding this comment

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

4단계 λ―Έμ…˜ 고생 λ§ŽμœΌμ…¨μ–΄μš”!
μš”κ΅¬μ‚¬ν•­μ„ 잘 κ΅¬ν˜„ν•΄μ£Όμ…¨λ„€μš” πŸ‘
μ—¬λŸ¬ μ½”λ©˜νŠΈ λ‚¨κ²¨λ‘μ—ˆμœΌλ‹ˆ ν™•μΈν•΄μ£Όμ„Έμš”!
λ―Έμ…˜μ„ 이만 마무리 짓고 μ‹ΆμœΌμ‹œλ‹€λ©΄ λ©”μ‹œμ§€λ‚˜ μ½”λ©˜νŠΈλ₯Ό, 더 λ°˜μ˜ν•˜κ³  μ‹ΆμœΌμ‹  게 μžˆμœΌμ‹œλ‹€λ©΄ 반영 ν›„ λ‹€μ‹œ 리뷰 μš”μ²­ λΆ€νƒλ“œλ €μš”!

Copy link
Member

Choose a reason for hiding this comment

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

μΆ”κ°€λ‘œ κΆκΈˆν•œ 점은 ν™”λ©΄λ‹¨μœ„ ν…ŒμŠ€νŠΈλ₯Ό ν• λ•Œμ—λŠ” Statefulν•œ 화면을 ν…ŒμŠ€νŠΈ ν•˜λŠ” 것이 κΈ°λ³ΈμΈκ°€μš”? ν˜Ήμ€ 상황에 따라 λ‹€λ₯΄λ‹€κ³  보면 λ˜λŠ” κ²ƒμΌκΉŒμš”? Stateless / Stateful ν•œ CartScreen 각각에 ν…ŒμŠ€νŠΈλ₯Ό μž‘μ„±ν–ˆμ„ λ•Œ, Stateful μͺ½μ˜ ν…ŒμŠ€νŠΈκ°€ μ’€ 더 μ˜λ―Έμžˆλ‹€κ³  λŠκ»΄μ Έμ„œ μ§ˆλ¬Έλ“œλ¦½λ‹ˆλ‹€~

μ•„λ¬΄λž˜λ„ Screen 을 ν…ŒμŠ€νŠΈν•˜κ³ μž ν•˜λŠ” 것은, μ»΄ν¬λ„ŒνŠΈκ°„μ˜ 역할이 μ„œλ‘œ μ§œμ—¬μ ΈμžˆλŠ” 둜직이라 μƒκ°ν•΄μš”.
κ·ΈλŸ¬λ‹€λ³΄λ‹ˆ μžμ—°μŠ€λŸ½κ²Œ μƒνƒœκ°€ μ—†λŠ” Screen은 ν…ŒμŠ€νŠΈν•  게 많이 μ—†μ–΄μ§€λŠ”κ²Œ μžμ—°μŠ€λŸ½λ‹€κ³  μƒκ°ν•΄μš”. 값을 μ£Όλ©΄ λ Œλ”λ§ν•˜λŠ” 것이 거의 λŒ€λΆ€λΆ„μ΄ μ΄λ‹ˆκΉŒμš”.

κ²Œλ‹€κ°€, νšŒμ›κ°€μž… λ―Έμ…˜μ„ 예λ₯Ό λ“€μ–΄μ„œ,
각 μž…λ ₯ μ»΄ν¬λ„ŒνŠΈλ§ˆλ‹€ μ–΄λ–€ 값이 듀어왔을 λ•Œ μ–΄λ–»κ²Œ λ Œλ”λ§λ˜λŠ”μ§€ μ»΄ν¬λ„ŒνŠΈ λ‹¨μœ„λ‘œ ν…ŒμŠ€νŠΈ ν–ˆκΈ°μ—, 이것을 또 Screen ν…ŒμŠ€νŠΈλ‘œ 가지고 μ™€μ„œ 쀑볡 ν…ŒμŠ€νŠΈλ₯Ό ν•  ν•„μš”λŠ” μ—†κ² μ§€μš”.
λ¬Όλ‘  λͺ¨λ“  값을 μ •μƒμ μœΌλ‘œ 채웠을 λ•Œ, ν•˜λ‹¨ λ²„νŠΌμ΄ ν™œμ„±ν™” λ˜λŠ” 것은 μ˜λ―ΈμžˆλŠ” ν…ŒμŠ€νŠΈκ² μ§€μš”!

말씀해주신 λŒ€λ‘œ 상황에 따라 μ•Œλ§žλŠ” ν…ŒμŠ€νŠΈλ₯Ό μž‘μ„±ν•˜λŠ” 것이 κ°€μž₯ μ€‘μš”ν•˜λ‹€λŠ” 생각이 μ»€μš”.
μƒνƒœκ°€ μžˆκ±°λ‚˜ μ—†λŠ” μ»΄ν¬λ„ŒνŠΈμ— λŒ€ν•œ ν…ŒμŠ€νŠΈ 쀑 μ–΄λŠ ν•œμͺ½λ§Œμ„ μ„ νƒν•΄μ„œ μ™„λ²½ν•œ ν…ŒμŠ€νŠΈλ₯Ό μž‘μ„±ν•  μˆ˜λŠ” μ—†λ‹€ μƒκ°ν•΄μš”!

Comment on lines +41 to +44
val formatedTotalPrice = String.format("%,d", Cart.totalPrice)
composeTestRule
.onNodeWithText("μ£Όλ¬Έν•˜κΈ°(${formatedTotalPrice}원)")
.assertExists()
Copy link
Member

Choose a reason for hiding this comment

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

ν…ŒμŠ€νŠΈ κ²€μ¦λΆ€λŠ” ν•˜λ“œμ½”λ”©ν•΄λ³΄λŠ” 건 μ–΄λ–¨κΉŒμš”?
κ΄€λ ¨ 쒋은 글을 κ³΅μœ λ“œλ €μš” :)

Copy link
Member

Choose a reason for hiding this comment

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

μ•„λž˜μ˜ λ‹€λ₯Έ ν…ŒμŠ€νŠΈλ“€λ„ μ μš©ν•΄λ³Ό 수 μžˆκ² μ–΄μš”!

Copy link
Member

Choose a reason for hiding this comment

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

κ³΅ν†΅μœΌλ‘œ μ‚¬μš©ν•˜λŠ” μ»΄ν¬λ„ŒνŠΈλ₯Ό λΆ„λ¦¬ν•΄μ„œ μž¬ν™œμš©ν•΄μ£Όμ…¨λ„€μš” πŸ‘

Copy link
Member

Choose a reason for hiding this comment

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

가격을 ν‘œμ‹œν•˜λŠ” ν…μŠ€νŠΈλ„ μ»΄ν¬λ„ŒνŠΈ λΆ„λ¦¬ν•΄λ³΄λŠ” 건 μ–΄λ–¨κΉŒμš”?

Comment on lines 34 to +36
fun ProductItem(
product: Product,
count: Int = 0,
Copy link
Member

Choose a reason for hiding this comment

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

μƒν’ˆμ˜ κ°œμˆ˜λŠ” Product λͺ¨λΈκ³Ό λ°€μ ‘ν•œ 연관이 μžˆλ‹€ μƒκ°ν•΄μš”. μ•ˆμœΌλ‘œ λ„£μ–΄λ³΄λŠ” 건 μ–΄λ–¨κΉŒμš”?

Comment on lines +104 to +107
private class ProductCountProvider : PreviewParameterProvider<Int> {
override val values: Sequence<Int>
get() = sequenceOf(0, 1, 2)
}
Copy link
Member

Choose a reason for hiding this comment

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

PreviewParameterλ₯Ό ν™œμš©ν•΄μ£Όμ…¨λ„€μš” πŸ‘

Copy link
Member

Choose a reason for hiding this comment

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

ProductItemμ—μ„œ μƒν’ˆ κ°œμˆ˜μ— 따라 μ–΄λ–€ λ²„νŠΌμ΄ μ˜€λ²„λ ˆμ΄ λ˜λŠ”μ§€ ν…ŒμŠ€νŠΈν•΄λ³΄μ…”λ„ μ’‹κ² μ–΄μš”!

@malibinYun
Copy link
Member

4단계 λ―Έμ…˜μ„ ν•˜κ³  λ‚˜λ‹ˆ λ―Έμ…˜μ˜ [ν”„λ‘œκ·Έλž˜λ° μš”κ΅¬ 사항]에 3λ‹¨κ³„μ—μ„œ μž‘μ„±λœ μž₯λ°”κ΅¬λ‹ˆ ν™”λ©΄ ν…ŒμŠ€νŠΈκ°€ μ‹€νŒ¨ν•˜λ©΄ μ•ˆ λœλ‹€. λΌλŠ” 문ꡬ가 μžˆμ—ˆμŠ΅λ‹ˆλ‹€. 무언가 μ˜λ„κ°€ μžˆλŠ” 문ꡬ라고 생각은 λ“€μ§€λ§Œ 아무리 생각해도 4단계 λ―Έμ…˜μ„ μˆ˜ν–‰ν•  λ•Œ 3λ‹¨κ³„μ˜ ν™”λ©΄ ν…ŒμŠ€νŠΈκ°€ μ‹€νŒ¨ν•  일이 μžˆλ‚˜..? 잘 λͺ¨λ₯΄κ² μŠ΅λ‹ˆλ‹€. ν˜Ήμ‹œ μ œκ°€ λ†“μΉœ λ―Έμ…˜μ˜ μ˜λ„κ°€ μžˆμ„κΉŒμš”?

이건 κ·Έμ € μˆ˜μ§„λ‹˜μ΄ λ―Έμ…˜μ„ λ„ˆλ¬΄ 잘 κ΅¬ν˜„ν•΄μ£Όμ…”μ„œ λ‹Ήμ—°ν•˜λ‹€κ³  생각이 λ“œμ‹œλŠ” 것 κ°™μ•„μš”.
ν˜Ήμ€ 이전 ν…ŒμŠ€νŠΈκ°€ κΉ¨μ§€λŠ” 데, λŒλ €λ³΄μ§€ μ•Šκ³  ν‘Έμ‹œν•΄μ„œ ν…ŒμŠ€νŠΈκ°€ μ‹€νŒ¨ν•˜λŠ” 경우λ₯Ό λˆˆμΉ˜μ±„μ§€ λͺ»ν•˜λŠ” 경우λ₯Ό λ¦¬λ§ˆμΈλ“œ ν•˜μ…¨λ‹€κ³ λ„ μƒκ°ν•΄μš”.

사싀 ν…ŒμŠ€νŠΈλΌλŠ”κ²Œ κΈ°λŠ₯을 μΆ”κ°€ν•˜λ”λΌλ„ 이전 ν…ŒμŠ€νŠΈκ°€ 정상 λ™μž‘ν•΄μ•Όν•˜λŠ”λ°, 그런 것을 κ³ λ €ν•˜μ§€ μ•Šκ³  κΈ°λŠ₯ μž‘μ„±μ„ λ¬΄λΆ„λ³„ν•˜κ²Œ ν•΄μ„œ, 정상 λ™μž‘ ν•˜μ§€ μ•Šμ€ κ²½μš°κ°€ μ’…μ’… λ°œμƒν•œλ‹€κ³  μƒκ°ν•΄μš”. λ‚˜ν•œν…Œ λ‹Ήμ—°ν•œ 게 λˆ„κ΅°κ°€μ—λŠ” 아닐 μˆ˜λ„ μžˆμœΌλ‹ˆκΉŒμš” πŸ₯²

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants