[π μ¬μ΄ν΄2 - λ―Έμ (λΈλμ λ² ν )] μ½λ‘ꡬ λ―Έμ μ μΆν©λλ€.#1131
[π μ¬μ΄ν΄2 - λ―Έμ
(λΈλμ λ² ν
)] μ½λ‘ꡬ λ―Έμ
μ μΆν©λλ€.#1131korogoo wants to merge 14 commits intowoowacourse:korogoofrom
Conversation
korogoo
left a comment
There was a problem hiding this comment.
pr λ³Έλ¬Έ μ§λ¬Έμ λν μ½λμ λλ€!
|
|
||
| public static ShuffledDeck create() { | ||
| List<Card> cards = Arrays.stream(Rank.values()) | ||
| .flatMap(ShuffledDeck::createCardsByRank) | ||
| .collect(Collectors.toCollection(ArrayList::new)); | ||
| Collections.shuffle(cards); | ||
|
|
||
| return new ShuffledDeck(cards); | ||
| } |
There was a problem hiding this comment.
λ³κ²½κ°λ₯ν νλ‘κ·Έλ¨ λ§λ€κΈ°μ μ μ μ
μ¬μ΄ν΄ 1μμλ λ³κ²½μ μ μ°ν νλ‘κ·Έλ¨μ λ§λλ κ²μ λͺ©νλ‘ λκ³ ,
λ³κ²½ κ°λ₯μ±μ΄ μλ€κ³ νλ¨ν λΆλΆμ μ λ΅ ν¨ν΄μ μ μ©νκ±°λ μμ‘΄μ±μ μ£Όμ λ°λ λ°©μμΌλ‘ ꡬννμ΅λλ€.μλ₯Ό λ€μ΄ μΉ΄λ μμ± μ CardsGenerator μΈν°νμ΄μ€λ₯Ό μ£Όμ λ°κ±°λ,
μΉν¨ νμ μ GameReferee μΈν°νμ΄μ€λ‘ λΆλ¦¬νμ΅λλ€.νμ§λ§ 리뷰λ₯Ό ν΅ν΄ YAGNI μμΉμ λ€μ μκ°ν΄λ³΄κ² λμκ³ ,
νμ¬ μꡬμ¬ν κΈ°μ€μμλ μΌλΆ μΆμνκ° μ€λ²μμ§λμ΄λ§μΌ μ μλ€κ³ λκ»΄ μ¬μ΄ν΄ 2μμλ μ κ±°νμ΅λλ€.μμ§ μ΄λ¬ν νμ₯μ±μ κ³ λ €ν μ€κ³μ YAGNI μ¬μ΄μ μ μ μ μ νλ¨νλ κ²μ΄ μ°Έ μ΄λ ΅κ² λκ»΄μ§λλ€.
λ³΄ν΅ μ¬μ λ³κ²½ κ°λ₯μ±μ κ³ λ €ν΄ λ―Έλ¦¬ μΆμνλ₯Ό λμ νλ νΈμΈμ§,
μλλ©΄ μ°ν μ½μμ μ΄μΌκΈ°νλ― νμ¬ μꡬμ¬νμ μ§μ€ν΄ λ¨μνκ² κ΅¬νν λ€ νμν λ 리ν©ν°λ§νλ λ°©μμ λ μ νΈνλμ§ κΆκΈν©λλ€!
| public class BlackjackGameReferee { | ||
| public static GameResult judge(Dealer dealer, Player player) { | ||
| if (player.isBust()) { | ||
| return GameResult.DEALER_WIN; | ||
| } | ||
| if (dealer.isBust()) { | ||
| return GameResult.PLAYER_WIN; | ||
| } |
There was a problem hiding this comment.
μνλ₯Ό κ°μ§μ§ μλ μ νΈμ± ν΄λμ€
κ°μ²΄ μ± μμ λΆλ¦¬ν λ κ°μ₯ μ΄λ €μ λ λΆλΆμ λλ€.
μλ₯Ό λ€μ΄ BlackjackGameReferee κ°μ΄ νΉμ κ·μΉμ λ°λΌ κ°μ κ³μ°νκ±°λ λ³νλ§ μννλ ν΄λμ€κ° μμ λ,
μ΄λ° ν΄λμ€λ₯Ό λ³λμ κ°μ²΄λ‘ λλ κ²μ΄ κ°μ²΄μ§ν₯μ μΌλ‘ μμ°μ€λ¬μ΄μ§,
μλλ©΄ λ¨μν static μ νΈ ν΄λμ€λ‘ λλ νΈμ΄ λ μ μ νμ§ νλ¨ κΈ°μ€μ΄ μμ§ λͺ ννμ§ μμ΅λλ€.μ λ κ°λ μ΄λ° ν΄λμ€λ€μ λ§λ€ λ μ€μ λ‘ λλ©μΈ μλ―Έλ₯Ό κ°μ§ κ°μ²΄λΌκΈ°λ³΄λ€,
μλ°μμ static λ©μλλ₯Ό λ§λ€ μ μκ² μ΄μ΄λκΈ° λλ¬Έμ νΈμμ λ§λ€μ΄μ§λ κ°μ²΄μΈ μ²(?) νλ κ°μ²΄κ° μλμ§ μκ°μ΄ λλλ€.μ΄λ° μνκ° μλ μ νΈμ± κ°μ²΄λ₯Ό μ€κ³ν΄λ 건κ°ν건μ§,
λ κ°μ²΄μ§ν₯μ μΌλ‘ νμ΄λκ° μ μλ λ°©μμ΄ μλ€λ©΄, μ΄λ€ μ¬κ³ νλ¦μ νμ΅νλ©΄ μ’μμ§ μ¬μ μ‘°μΈμ ꡬνκ³ μΆμ΅λλ€!
|
리뷰 μμ² μ΄νμ ν μμ μ λλ€! DM μΌλ‘ νΈμ μν΄λ₯Ό ꡬνλ € νμΌλ, μ€λ°€ μ€μ΄λΌμ λͺ°λ(?) μ»€λ° λκ° λ νΈμ νμ΅λλ€. μ΄λ² μ¬μ΄ν΄2 리뷰λ μ λΆνλ립λλ€! κ°μ¬ν©λλ€.γ |
μ²΄ν¬ λ¦¬μ€νΈ
testλ₯Ό μ€ννμ λ, λͺ¨λ ν μ€νΈκ° μ μμ μΌλ‘ ν΅κ³Όνλμ?UML
κ°μ²΄ κ°μ μμ‘΄κ΄κ³λ₯Ό νμ νκΈ° μν΄μ UML μ μμ±νμ΅λλ€.
κ°μΈμ μΌλ‘ μ¬μ©νλ €κ³ μμ±νμμΌλ, κΈ°λ₯ μΆκ°λ‘ μΈν λ³κ²½μ¬ν νμ μ λμμ΄ λ μ μμκΉ νμ¬ μ²¨λΆν©λλ€.
(μμ§ μ¬μ©μ΄ λ―Έμν΄μ μλͺ»λ νκΈ°κ° μμ μ μμ΅λλ€..!)
μ΄λ€ λΆλΆμ μ§μ€νμ¬ λ¦¬λ·°ν΄μΌ ν κΉμ?
λ³κ²½κ°λ₯ν νλ‘κ·Έλ¨ λ§λ€κΈ°μ μ μ μ
μ¬μ΄ν΄ 1μμλ λ³κ²½μ μ μ°ν νλ‘κ·Έλ¨μ λ§λλ κ²μ λͺ©νλ‘ λκ³ ,
λ³κ²½ κ°λ₯μ±μ΄ μλ€κ³ νλ¨ν λΆλΆμ μ λ΅ ν¨ν΄μ μ μ©νκ±°λ μμ‘΄μ±μ μ£Όμ λ°λ λ°©μμΌλ‘ ꡬννμ΅λλ€.
μλ₯Ό λ€μ΄ μΉ΄λ μμ± μ CardsGenerator μΈν°νμ΄μ€λ₯Ό μ£Όμ λ°κ±°λ,
μΉν¨ νμ μ GameReferee μΈν°νμ΄μ€λ‘ λΆλ¦¬νμ΅λλ€.
νμ§λ§ 리뷰λ₯Ό ν΅ν΄ YAGNI μμΉμ λ€μ μκ°ν΄λ³΄κ² λμκ³ ,
νμ¬ μꡬμ¬ν κΈ°μ€μμλ μΌλΆ μΆμνκ° μ€λ²μμ§λμ΄λ§μΌ μ μλ€κ³ λκ»΄ μ¬μ΄ν΄ 2μμλ μ κ±°νμ΅λλ€.
μμ§ μ΄λ¬ν νμ₯μ±μ κ³ λ €ν μ€κ³μ YAGNI μ¬μ΄μ μ μ μ μ νλ¨νλ κ²μ΄ μ°Έ μ΄λ ΅κ² λκ»΄μ§λλ€.
λ³΄ν΅ μ¬μ λ³κ²½ κ°λ₯μ±μ κ³ λ €ν΄ λ―Έλ¦¬ μΆμνλ₯Ό λμ νλ νΈμΈμ§,
μλλ©΄ μ°ν μ½μμ μ΄μΌκΈ°νλ― νμ¬ μꡬμ¬νμ μ§μ€ν΄ λ¨μνκ² κ΅¬νν λ€ νμν λ 리ν©ν°λ§νλ λ°©μμ λ μ νΈνλμ§ κΆκΈν©λλ€!
μνλ₯Ό κ°μ§μ§ μλ μ νΈμ± ν΄λμ€
κ°μ²΄ μ± μμ λΆλ¦¬ν λ κ°μ₯ μ΄λ €μ λ λΆλΆμ λλ€.
μλ₯Ό λ€μ΄ BlackjackGameReferee κ°μ΄ νΉμ κ·μΉμ λ°λΌ κ°μ κ³μ°νκ±°λ λ³νλ§ μννλ ν΄λμ€κ° μμ λ,
μ΄λ° ν΄λμ€λ₯Ό λ³λμ κ°μ²΄λ‘ λλ κ²μ΄ κ°μ²΄μ§ν₯μ μΌλ‘ μμ°μ€λ¬μ΄μ§,
μλλ©΄ λ¨μν static μ νΈ ν΄λμ€λ‘ λλ νΈμ΄ λ μ μ νμ§ νλ¨ κΈ°μ€μ΄ μμ§ λͺ ννμ§ μμ΅λλ€.
μ λ κ°λ μ΄λ° ν΄λμ€λ€μ λ§λ€ λ μ€μ λ‘ λλ©μΈ μλ―Έλ₯Ό κ°μ§ κ°μ²΄λΌκΈ°λ³΄λ€,
μλ°μμ static λ©μλλ₯Ό λ§λ€ μ μκ² μ΄μ΄λκΈ° λλ¬Έμ νΈμμ λ§λ€μ΄μ§λ κ°μ²΄μΈ μ²(?) νλ κ°μ²΄κ° μλμ§ μκ°μ΄ λλλ€.
μ΄λ° μνκ° μλ μ νΈμ± κ°μ²΄λ₯Ό μ€κ³ν΄λ 건κ°ν건μ§,
λ κ°μ²΄μ§ν₯μ μΌλ‘ νμ΄λκ° μ μλ λ°©μμ΄ μλ€λ©΄, μ΄λ€ μ¬κ³ νλ¦μ νμ΅νλ©΄ μ’μμ§ μ¬μ μ‘°μΈμ΄ λ£κ³ μΆμ΅λλ€!