Skip to content

[๐Ÿš€ ์‚ฌ์ดํด2 - ๋ฏธ์…˜ (๋ธ”๋ž™์žญ ๋ฒ ํŒ…)] ์ œ์ด์ฝฅ ๋ฏธ์…˜ ์ œ์ถœํ•ฉ๋‹ˆ๋‹ค.#1119

Merged
Gomding merged 168 commits intowoowacourse:khcho96from
khcho96:step2
Mar 23, 2026

Conversation

@khcho96
Copy link
Copy Markdown

@khcho96 khcho96 commented Mar 14, 2026

์ฒดํฌ ๋ฆฌ์ŠคํŠธ

  • ๋ฏธ์…˜์˜ ํ•„์ˆ˜ ์š”๊ตฌ์‚ฌํ•ญ์„ ๋ชจ๋‘ ๊ตฌํ˜„ํ–ˆ๋‚˜์š”?
  • Gradle test๋ฅผ ์‹คํ–‰ํ–ˆ์„ ๋•Œ, ๋ชจ๋“  ํ…Œ์ŠคํŠธ๊ฐ€ ์ •์ƒ์ ์œผ๋กœ ํ†ต๊ณผํ–ˆ๋‚˜์š”?
  • ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์ •์ƒ์ ์œผ๋กœ ์‹คํ–‰๋˜๋‚˜์š”?

์–ด๋–ค ๋ถ€๋ถ„์— ์ง‘์ค‘ํ•˜์—ฌ ๋ฆฌ๋ทฐํ•ด์•ผ ํ• ๊นŒ์š”?

์‚ฌ์ดํด1 ๋งˆ์ง€๋ง‰ ์ฝ”๋ฉ˜ํŠธ์—์„œ ๋ฐ˜์˜ํ•œ ๋‚ด์šฉ

  1. ๋ง์”€์ฃผ์‹ ๋Œ€๋กœ Participants๊ฐ€ ๋‹จ์ˆœํžˆ Dealer์™€ Players๋ฅผ ๊บผ๋‚ด๊ธฐ๋งŒ ํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ Dealer์™€ Players์—๊ฒŒ ๋ช…๋ น์„ ์ˆ˜ํ–‰ํ•˜๊ฑฐ๋‚˜ ๋‹ค๋ฃจ๋Š” ๋ฐฉํ–ฅ์œผ๋กœ ์ฑ…์ž„์„ ๋ถ€์—ฌํ•ด๋ดค์Šต๋‹ˆ๋‹ค.
  2. Result์™€ HitOrStand ํด๋ž˜์Šค๋ฅผ domain์œผ๋กœ ์˜ฎ๊ฒผ์Šต๋‹ˆ๋‹ค.
  3. Hand์— 10์ด๋ผ๋Š” ๋งค์ง๋„˜๋ฒ„๋ฅผ ์ƒ์ˆ˜ํ™”ํ–ˆ์Šต๋‹ˆ๋‹ค.
  4. Hand์— ์ ์ˆ˜๊ณ„์‚ฐ ๋กœ์ง์„ ๋ฉ”์„œ๋“œ๋กœ ์ถ”์ถœํ–ˆ์Šต๋‹ˆ๋‹ค.

์งˆ๋ฌธ

  1. ์˜๋„๋œ ์ค‘๋ณต์— ๋Œ€ํ•œ ์งˆ๋ฌธ

์ค‘๋ณต์„ ์ œ๊ฑฐํ•˜๋ผ ํ•˜์ง€๋งŒ ๋–„๋กœ๋Š” ์˜๋„๋œ ์ค‘๋ณต์„ ๋งŒ๋“ค๊ธฐ๋„ ํ•ฉ๋‹ˆ๋‹ค ๐Ÿ˜„

์˜๋„๋œ ์ค‘๋ณต์„ ๋งŒ๋“ค๊ธฐ๋„ ํ•œ๋‹ค๋Š” ์‚ฌ์‹ค์€ ์ถฉ๊ฒฉ์ ์ด๋„ค์š” ๐Ÿ˜ฎ
"์ค‘๋ณต"์— ๋Œ€ํ•ด 100% ๋ถ€์ •์ ์œผ๋กœ ๋ฐ”๋ผ๋ดค์—ˆ๋Š”๋ฐ, ๊ทธ๋ ‡์ง€ ์•Š์„ ์ˆ˜๋„ ์žˆ๋‹ค๋Š” ์‚ฌ์‹ค์„ ์ธ์ง€ํ•˜๊ณ  ์œ ์—ฐํ•˜๊ฒŒ ์ƒ๊ฐํ•ด๋ด์•ผ๊ฒ ์Šต๋‹ˆ๋‹ค!
ํ•œ ๊ฐ€์ง€ ๊ถ๊ธˆํ•œ ์ ์ด ์žˆ๋Š”๋ฐ, ์ฐฐ๋ฆฌ๋Š” constant ํŒจํ‚ค์ง€๋ฅผ ์‚ฌ์šฉํ•˜์‹œ๋Š” ํŽธ์ธ๊ฐ€์š”?
๋งŒ์•ฝ ์‚ฌ์šฉํ•˜์‹ ๋‹ค๋ฉด ์–ด๋–ค ๊ฒฝ์šฐ์—, ์–ด๋–ค ํด๋ž˜์Šค๋ฅผ ๊ณตํ†ต์œผ๋กœ ๊ด€๋ฆฌํ•˜๋Š” constant ํŒจํ‚ค์ง€๋กœ ๋ถ„๋ฆฌํ•˜์‹œ๋‚˜์š”?

  1. ์ฑ…์ž„ ๋ถ„๋ฆฌ์— ๋Œ€ํ•œ ์งˆ๋ฌธ

BlackjackGameManager ๊ฐ€ ์ŠนํŒจ์— ๋Œ€ํ•œ ํŒ๋‹จ์„ ํ•˜๋Š”๊ฒƒ์€ ์ฑ…์ž„์ด ๊ณผํ• ๊ฒƒ ๊ฐ™๋„ค์š” ๐Ÿค” ์ŠนํŒจ ํŒ๋‹จ์„ ํ•˜๋Š” ๊ฐ์ฒด๋ฅผ ๋ถ„๋ฆฌํ•ด๋ณด๋Š”๊ฒƒ๋„ ์ข‹๊ฒ ์–ด์š”~

์ œ๊ฐ€ ์ƒ๊ฐํ–ˆ์„ ๋•Œ ํ˜„์žฌ ์Šน๋ฌดํŒจ ํŒ๋‹จ์„ ํ•˜๋Š” ๋ฉ”์„œ๋“œ๋Š” BlackjackGameManager ํด๋ž˜์Šค์˜ getBlackjackStatistics ๋ฉ”์„œ๋“œ ๋กœ์ง์ธ๋ฐ, ํŠนํžˆ ํ•ด๋‹น ๋ฉ”์„œ๋“œ ๋‚ด ์•„๋ž˜ 3์ค„์˜ ๋กœ์ง์ธ ๋“ฏ ํ•ฉ๋‹ˆ๋‹ค.

Result result = judgePlayerResult(participants.dealer(), player);
int playerProfit = calculatePlayerProfit(player, result);
dealerProfit += playerProfit * -1;

์ด ๋กœ์ง์„ ๊ฐ€์ง€๋Š” ๊ฐ์ฒด(A๋ผ๊ณ  ์ง€์นญํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค)๋ฅผ ๋”ฐ๋กœ ๋งŒ๋“ ๋‹ค๋ฉด A๋Š” judgePlayerResult ๋ฉ”์„œ๋“œ์™€ calculatePlayerProfit ๋ฉ”์„œ๋“œ๋ฅผ ํด๋ž˜์Šค ๋‚ด์—์„œ ๊ฐ€์งˆํ…๋ฐ, ์ด๋•Œ ๋ณด์‹œ๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋ฉ”์„œ๋“œ์˜ ์ธ์ˆ˜๋กœ Dealer์™€ Player๊ฐ€ ๋“ค์–ด๊ฐ€๊ธฐ๋•Œ๋ฌธ์— A๊ฐ€ Dealer์™€ Player์—๊ฒŒ ์˜์กดํ•˜๊ฒŒ ๋˜๊ณ , ๊ฒฐํ•ฉ๋„๊ฐ€ ์ปค์ง€๊ฒŒ ๋˜์ง€ ์•Š์„๊นŒ๋ผ๋Š” ๋ถ€๋ถ„์ด ์—ผ๋ ค๋ฉ๋‹ˆ๋‹ค. ๊ฒฐํ•ฉ๋„๊ฐ€ ์ปค์ง€๋ฉด ์ˆ˜์ •๋ฒ”์œ„๊ฐ€ ์ปค์ง€๊ฒŒ ๋˜๋Š” ๋‹จ์ ์ด ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

์ด ๋ถ€๋ถ„์— ๋Œ€ํ•œ ์ฐฐ๋ฆฌ์˜ ์˜๊ฒฌ์ด ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค!

  1. ์›์‹œ๊ฐ’ ํฌ์žฅ์— ๋Œ€ํ•œ ์งˆ๋ฌธ

Rank ํด๋ž˜์Šค์—์„œ score์˜ ์›์‹œ๊ฐ’ ํฌ์žฅ์— ๋Œ€ํ•ด ๋ง์”€ํ•ด์ฃผ์…จ๋Š”๋ฐ, ๋‹จ์ˆœํžˆ ์ƒ์ˆ˜๋ฅผ ์ €์žฅํ•˜๊ณ  ์žˆ๊ณ  ๋ธ”๋ž™์žญ ์ ์ˆ˜ ๊ทœ์น™์— ๋Œ€ํ•œ ๋‚ด์šฉ์€ ๋‹ค๋ฅธ ๊ฐ์ฒด์—์„œ ๋ฉ”์„œ๋“œ๋กœ ๊ตฌํ˜„ํ–ˆ๊ธฐ๋•Œ๋ฌธ์— score์—์„œ ์–ด๋–ค ์ถ”๊ฐ€์ ์ธ ๊ทœ์น™์„ ๊ฒ€์ฆํ•˜๊ฑฐ๋‚˜ ๋‹ค๋ฃฐ์ง€ ์•„์ด๋””์–ด๊ฐ€ ๋– ์˜ค๋ฅด์ง€ ์•Š๋„ค์š”๐Ÿ˜‚
ํ˜น์‹œ ์ฐฐ๋ฆฌ ์ž…์žฅ์—์„œ score๋ฅผ ์›์‹œ๊ฐ’ ํฌ์žฅํ•œ๋‹ค๋ฉด ์–ด๋–ค์‹์œผ๋กœ ๊ตฌํ˜„ํ•˜์‹ค์ง€ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค!

1์ฐจ ํ”ผ๋“œ๋ฐฑ ์ˆ˜์ • ์š”์†Œ

  1. ๋”œ๋Ÿฌ๊ฐ€ ๋ธ”๋ž™์žญ์ธ ๊ฒฝ์šฐ ๊ณ ๋ คํ•ด์„œ ์ŠนํŒจ ๋กœ์ง ์ˆ˜์ • ๊ตฌํ˜„
  2. Participant์— getName ๋ฉ”์„œ๋“œ ์ถ”์ƒํ™”
  3. ๋ฒ ํŒ…๊ธˆ์•ก์„ ๋‹ค ์ž…๋ ฅ๋ฐ›์€ ํ›„ ํ”Œ๋ ˆ์ด์–ด๋ฅผ ์ƒ์„ฑํ•˜๋„๋ก ์ˆ˜์ • -> Player์˜ BetAmount์ด ์ฐธ์กฐ๊ฐ’์„ null๋กœ ๊ฐ€์ง€์ง€ ์•Š๋„๋ก ์•ˆ์ •์„ฑ์„ ๋†’์—ฌ์คŒ
  4. PlayerName๋„ ์ปจํŠธ๋กค๋Ÿฌ์—์„œ ์ƒ์„ฑ(๊ฒ€์ฆ ํฌํ•จ)ํ•ด์„œ ๋„˜๊ธฐ๋„๋ก ์ˆ˜์ •
  5. BetAmount์˜ isPositive ๋ฉ”์„œ๋“œ isNotPositive๋กœ ๋ฉ”์„œ๋“œ๋ช… ์ˆ˜์ •
  6. ํ”Œ๋ ˆ์ด์–ด๊ฐ€ ์นด๋“œ๋ฅผ ๋ฝ‘์•„ ๋ฒ„์ŠคํŠธ๊ฐ€ ๋˜๋ฉด ๋‹ค์Œ ์ฐจ๋ก€๋กœ ๋„˜์–ด๊ฐ€๋„๋ก ์ˆ˜์ •
  7. Hand์˜ calculateAceCount ์ˆ˜์ •
  8. OutputView ์•ˆ์“ฐ๋Š” ๋ฉ”์„œ๋“œ ์‚ญ์ œ
  9. ๊ฒฐ๊ณผ์— ๋Œ€ํ•œ ๋ฐฐ๋‹น์„ BlackjackGameManager์˜ calculatePlayerProfit ๋ฉ”์„œ๋“œ ์‚ญ์ œ ๋ฐ ํ•ด๋‹น ๋กœ์ง์— ๋Œ€ํ•œ ์ฑ…์ž„์„ Result๊ฐ€ ๊ฐ€์ง€๋„๋ก ์ˆ˜์ •
  10. ์ŠนํŒจ ๋ฐ ์ˆ˜์ต ๊ณ„์‚ฐ ๋กœ์ง ๊ฐ์ฒด ๋ถ„๋ฆฌ ๋ฐ ์ŠนํŒจํŒ๋‹จ ๋กœ์ง ์ˆ˜์ • -> BlackjackJudge
 1. ํ”Œ๋ ˆ์ด์–ด๊ฐ€ ๋ฒ„์ŠคํŠธ -> ํ”Œ๋ ˆ์ด์–ด LOSE
 2. ํ”Œ๋ ˆ์ด์–ด๊ฐ€ ๋ธ”๋ž™์žญ(์ „์ œ: ํ”Œ๋ ˆ์ด์–ด๋Š” ๋ฒ„์ŠคํŠธ ์•„๋‹˜) && ๋”œ๋Ÿฌ๊ฐ€ ๋ธ”๋ž™์žญ์ด๋ฉด -> DRAW
 3. ํ”Œ๋ ˆ์ด์–ด๊ฐ€ ๋ธ”๋ž™์žญ(์ „์ œ: ํ”Œ๋ ˆ์ด์–ด๋Š” ๋ฒ„์ŠคํŠธ ์•„๋‹˜) && ๋”œ๋Ÿฌ๊ฐ€ ๋ธ”๋ž™์žญ์•„๋‹ˆ๋ฉด -> ํ”Œ๋ ˆ์ด์–ด BLACKJACK_WIN
 4. ๋”œ๋Ÿฌ๊ฐ€ ๋ฒ„์ŠคํŠธ(์ „์ œ: ํ”Œ๋ ˆ์ด์–ด๋Š” ๋ฒ„์ŠคํŠธ ๋˜๋Š” ๋ธ”๋ž™์žญ ์•„๋‹˜) -> ํ”Œ๋ ˆ์ด์–ด WIN
 5. ํ”Œ๋ ˆ์ด์–ด ์ ์ˆ˜ > ๋”œ๋Ÿฌ ์ ์ˆ˜(์ „์ œ: ํ”Œ๋ ˆ์ด์–ด์™€ ๋”œ๋Ÿฌ๋Š” ๋ฒ„์ŠคํŠธ ๋˜๋Š” ๋ธ”๋ž™์žญ ์•„๋‹˜) -> ํ”Œ๋ ˆ์ด์–ด WIN
 6. ํ”Œ๋ ˆ์ด์–ด ์ ์ˆ˜ == ๋”œ๋Ÿฌ ์ ์ˆ˜(์ „์ œ: ํ”Œ๋ ˆ์ด์–ด์™€ ๋”œ๋Ÿฌ๋Š” ๋ฒ„์ŠคํŠธ ๋˜๋Š” ๋ธ”๋ž™์žญ ์•„๋‹˜) -> DRAW
 7. 1~6 ์•„๋‹˜ -> ํ”Œ๋ ˆ์ด์–ด LOSE
  1. record ํด๋ž˜์Šค๋Š” equals, hashCode ๋ฉ”์„œ๋“œ ์ž๋™ ๊ตฌํ˜„์ด๋ฏ€๋กœ Card์˜ equals ์‚ญ์ œ

2์ฐจ ํ”ผ๋“œ๋ฐฑ ์ˆ˜์ • ์š”์†Œ

  1. dto ํ…Œ์ŠคํŠธ ์‚ญ์ œ
  2. Hand์˜ isBlackjack() ๋ฉ”์„œ๋“œ ์ˆ˜์ • ๋ฐ calculateInitialScore, calculateInitialBaseScore ๋ฉ”์„œ๋“œ ์‚ญ์ œ
  3. BlackjackGameManager์˜ ํ•„๋“œ(CardMachine, BlackjackJudge)๊ฐ’ ์˜์กด์„ฑ ์ฃผ์ž…์œผ๋กœ ๊ตฌํ˜„ -> BlackjackFactory๋กœ ์ด๋ฆ„ ์ˆ˜์ •
  4. BlackjackController๊ฐ€ BlackjackGameManager๋ฅผ ํ•„๋“œ๋กœ ๊ฐ€์ง€์ง€ ์•Š๊ณ  ๋ฉ”์„œ๋“œ๋“ค์˜ ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ ๋‘๋„๋ก ์ˆ˜์ •

3์ฐจ ํ”ผ๋“œ๋ฐฑ ์ˆ˜์ • ์š”์†Œ

  1. dto ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ
  2. BlackjackGameManager์˜ Participants ํ•„๋“œ๊ฐ’์„ ๋ถˆ๋ณ€์œผ๋กœ ์ง€์ •ํ•˜๊ณ  ์ƒ์„ฑ์ž์—์„œ ๊ฐ’์ด ํ• ๋‹น๋˜๋„๋ก ์ˆ˜์ •
  3. BlackjackJudge์˜ ์ŠนํŒจํŒ๋‹จ ๋ฉ”์„œ๋“œ์—์„œ ๋ถ„๊ธฐ ์ฝ”๋“œ ์ค‘๋ณต ์ œ๊ฑฐ
  4. ์ปจํŠธ๋กค๋Ÿฌ์˜ start ๋ฉ”์„œ๋“œ ๋‚ด์—์„œ BlackjackGameManager๋ฅผ ์ƒ์„ฑํ•˜๋„๋ก ์ˆ˜์ •
  5. BlackjackGameManager๋ฅผ ์ƒ์„ฑํ•˜๋Š” BlackjackGameManagerFactory ํด๋ž˜์Šค ์ƒ์„ฑ ๋ฐ ๋„๋ฉ”์ธ ํŒจํ‚ค์ง€์— ์œ„์น˜
  6. Participants, Players์˜ playerIsBust ๋ฉ”์„œ๋“œ isPlayerBust๋กœ ๋ฉ”์„œ๋“œ๋ช… ์ˆ˜์ •

4์ฐจ ํ”ผ๋“œ๋ฐฑ ์ˆ˜์ • ์š”์†Œ

  1. BlackjackJudgeํด๋ž˜์Šค์˜ judgePlayerResult ๋ฉ”์„œ๋“œ์— ๋”œ๋Ÿฌ๊ฐ€ ๋ธ”๋ž™์žญ์ด๊ณ  ํ”Œ๋ ˆ์ด์–ด๊ฐ€ ๋ฒ„์ŠคํŠธ๊ฐ€ ์•„๋‹Œ 21์ ์ธ ๊ฒฝ์šฐ ์ถ”๊ฐ€
  2. BlackjackJudgeํด๋ž˜์Šค์˜ judgePlayerResult ๋ฉ”์„œ๋“œ์— ์žˆ๋Š” ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ถ„๊ธฐ๋ฌธ ์ค‘ ๋ฒ„์ŠคํŠธ๋‚˜ ๋ธ”๋ž™์žญ์ธ ๊ฒฝ์šฐ๊ฐ€ ์•„๋‹Œ ์ผ๋ฐ˜์ ์ธ ์ ์ˆ˜ ๋น„๊ต๋ฅผ ํ†ตํ•œ ์ŠนํŒจ ๊ฒฐ์ • ์ผ€์ด์Šค๋ฅผ judgeScore ๋ฉ”์„œ๋“œ๋กœ ๋ถ„๋ฆฌ
  3. BetAmount ๋ฒ ํŒ… ๊ธˆ์•ก ๋ฒ”์œ„ ๊ฒ€์ฆ ๋กœ์ง ์ถ”๊ฐ€
  4. drawCard ๋‘ ๋ฒˆ ํ˜ธ์ถœํ•˜๋Š” ๋ฉ”์„œ๋“œ๋ฅผ drawInitialCards ๋ฉ”์„œ๋“œ๋กœ ์ˆ˜์ •

khcho96 added 30 commits March 13, 2026 08:45
โ€ฆialScore() ๋ฉ”์„œ๋“œ ๊ตฌํ˜„
โ€ฆmeManager ๋ฉ”์„œ๋“œ๋ช… ๋ณ€๊ฒฝ
Copy link
Copy Markdown

@Gomding Gomding left a comment

Choose a reason for hiding this comment

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

์•ˆ๋…•ํ•˜์„ธ์š” ์ œ์ด์ฝฅ!
๋” ๋ฐ˜์˜ํ•˜๊ณ  ์‹ถ์€๊ฒƒ์ด ์žˆ๋‹ค๊ณ  ์š”์ฒญํ•˜์…”์„œ ๋จธ์ง€๋Š” ๋ณด๋ฅ˜ํ• ๊ฒŒ์š”~
๋…ผ์˜ ํ•„์š”ํ•œ ๋ถ€๋ถ„ ์žˆ์œผ๋ฉด DM ์ด๋‚˜ ์ฝ”๋ฉ˜ํŠธ ๋‚จ๊ฒจ์ฃผ์„ธ์š”! ๐Ÿ™‡

private final List<Player> players;

public Players(List<String> names) {
public Players(List<PlayerName> names, List<BetAmount> betAmounts) {
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

์š”๊ฑด ์•„์ง ๊ฒ€์ฆ์ด ์—†๋„ค์š”~

Comment on lines +6 to +7
public final class BlackjackJudge {

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

BlackjackJudge ํด๋ž˜์Šค๋Š” final ๋กœ ๋งŒ๋“ค์–ด์ฃผ์…จ๋Š”๋ฐ ์–ด๋–ค ์˜๋„๋กœ ๋งŒ๋“ค์–ด์ฃผ์‹ ๊ฑธ๊นŒ์š”? ๐Ÿ˜„

import domain.participant.Dealer;
import domain.participant.Player;

public final class BlackjackJudge {
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

BlackjackJudge ๋Š” ๊ฐ์ฒด ์ƒ์„ฑ ์—†์ด static ๋ฉ”์„œ๋“œ ๋งŒ์„ ๊ฐ€์ง€๋Š” util ํด๋ž˜์Šค๋กœ ์‚ฌ์šฉํ•ด๋„ ๋  ๊ฒƒ ๊ฐ™์€๋ฐ
ํ•ด๋‹น ๋ถ€๋ถ„๋„ ๊ณ ๋ฏผํ•ด๋ณด์…จ์„๊นŒ์š”?


public static final String INVALID_BET_AMOUNT_NUMBER = "๋ฐฐํŒ… ๊ธˆ์•ก์€ ์ˆซ์ž์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค.";
public static final String INVALID_BET_AMOUNT_POSITIVE = "๋ฐฐํŒ… ๊ธˆ์•ก์€ ์–‘์ˆ˜์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค.";
public static final String INVALID_BET_AMOUNT_RANGE = "๋ฒ ํŒ… ๊ธˆ์•ก์˜ ๋ฒ”์œ„๊ฐ€ ์˜ฌ๋ฐ”๋ฅด์ง€ ์•Š์Šต๋‹ˆ๋‹ค. (1000 ์ด์ƒ 3์–ต ์ดํ•˜์˜ ๊ธˆ์•ก ์ž…๋ ฅ)";
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

์‚ฌ์šฉ์ž ์ž…๋ ฅ ํ™”๋ฉด์—์„œ๋Š” ๊ธˆ์•ก ์ž…๋ ฅ ๋ฒ”์œ„๋ฅผ ๋ชจ๋ฅด๋‹ˆ
์ฒ˜์Œ ์‚ฌ์šฉํ•˜๋Š” ์‚ฌ์šฉ์ž๋Š” ๋‹นํ™ฉํ•  ์ˆ˜ ์žˆ๊ฒ ๋„ค์š” :)
InputView ์—์„œ ์‚ฌ์šฉ์ž๊ฐ€ ๋ฏธ๋ฆฌ ๊ธˆ์•ก ๋ฒ”์œ„๋ฅผ ์•Œ ์ˆ˜ ์žˆ๊ฒŒ ์„ค๋ช…ํ•ด์ฃผ๋Š”๊ฒŒ ์ข‹๊ฒ ์–ด์š”~

Image

public void drawInitialCards(Supplier<Card> cardSupplier) {
dealer.addCard(cardSupplier.get());
dealer.addCard(cardSupplier.get());
dealer.drawInitialCards(cardSupplier);
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

๐Ÿ‘

khcho96 added 25 commits March 21, 2026 12:07
โ€ฆner๋กœ ํด๋ž˜์Šค๋ช… ๋ณ€๊ฒฝ
โ€ฆํด๋ž˜์Šค๋ช… ๋ณ€๊ฒฝ์œผ๋กœ ์ธํ•œ ์ฝ”๋“œ ์ˆ˜์ •

public final class BlackjackJudge {

public PlayerResult judgePlayerResult(Dealer dealer, Player player) {
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

๊ฐ€๋…์„ฑ์„ ์œ„ํ•ด์„œ
if ๋ฌธ์„ 3๊ฐœ๋กœ๋งŒ ์ค„์—ฌ๋ณด๋Š”๊ฒƒ๋„ ๋ฐฉ๋ฒ•์ผ ๊ฒƒ ๊ฐ™์•„์š”
๊ฐ ๋ฉ”์„œ๋“œ์•ˆ์— ์–ด๋–ค ์ƒํ™ฉ์— ํŒจ๋ฐฐ๋กœ ํŒ๋‹จ๋˜๋Š”์ง€ ๋ชจ์•„๋‘๋ฉด ๋ช…ํ™•ํ•˜๊ฒŒ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ์žฅ์ ์ด ์žˆ์–ด์š”

if (isLose(dealer, player)) {
    return PlayerResult.LOSE;
}
if (IsWin(dealer, player)) {
    return PlayerResult.WIN;
}
if (IsBlackjackWin(dealer, player)) {
    return PlayerResult.BLACKJACK_WIN;
}
if (isDraw(dealer, player)) {
    return PlayerResult.DRAW;
}

Comment thread README.md
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

๋‹ค์Œ ๋ฏธ์…˜์—์„œ๋Š” ์ปค๋ฐ‹์„ ์‹คํ–‰๊ฐ€๋Šฅํ•œ ๋‹จ์œ„๋กœ ๋‚˜๋ˆ ๋ณด๋Š”๊ฒƒ๋„ ๋„์ „ํ•ด๋ณด์‹œ๋ฉด ์ข‹๊ฒ ์–ด์š” :)
์ˆ˜์ •์„ ํ–ˆ๋‹ค๋ฉด ์‹คํ–‰์„ ์œ„ํ•œ ์ˆ˜์ •, ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‹คํ–‰ + ์ˆ˜์ • ๋“ฑ์„ ๋ฌถ์–ด์„œ
๋ชจ๋“  ์ปค๋ฐ‹๋“ค์ด ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ์ƒํƒœ๋กœ ๋งŒ๋“œ๋Š”๊ฒƒ์ด์ฃ 
์‹ค์ œ๋กœ ๋ชจ๋“  ์ปค๋ฐ‹์€ ์‹คํ–‰์ด ๊ฐ€๋Šฅํ•ด์•ผํ•œ๋‹ค <-- ์ด๊ฒŒ ์ปค๋ฐ‹์˜ ์กฐ๊ฑด ์ž…๋‹ˆ๋‹ค :)

๋ฒ„๊ทธ๊ฐ€ ์žˆ๋Š”๋ฐ ์ปค๋ฐ‹์„ ํ•ด๋ฒ„๋ ธ๋‹ค๋ฉด git commit --amend ๊ธฐ๋Šฅ์„ ํ•™์Šตํ•ด๋ณด์‹œ๊ณ  ์‚ฌ์šฉํ•ด๋ณด์„ธ์š”!

Copy link
Copy Markdown

@Gomding Gomding left a comment

Choose a reason for hiding this comment

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

์•ˆ๋…•ํ•˜์„ธ์š” ์ œ์ด์ฝฅ!
๋ฏธ์…˜ ์ง„ํ–‰ํ•˜๋А๋ผ ๊ณ ์ƒํ•˜์…จ์–ด์š” ๐Ÿ‘ ๐Ÿ‘ ๐Ÿ‘
์ด๋ฏธ ๋งŽ์€ ๊ณ ๋ฏผ๋“ค์„ ํ•ด์ฃผ์…จ๋Š”๋ฐ ์•ž์œผ๋กœ ๋งŽ์€ ์„ฑ์žฅ์„ ์ด๋ฃจ์‹ค๊ฑฐ๋ผ ์ƒ๊ฐํ•ด์š”~

์•ž์œผ๋กœ์˜ ์šฐํ…Œ์ฝ” ์ƒํ™ฉ๋„ ๋ฏธ์…˜๋„ ํ™”์ดํŒ…์ž…๋‹ˆ๋‹ค! ๐Ÿ’ช

@Gomding Gomding merged commit 6186acc into woowacourse:khcho96 Mar 23, 2026
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.

3 participants