-
Notifications
You must be signed in to change notification settings - Fork 341
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
프리코스 스터디 1주차 - 고루 #182
base: main
Are you sure you want to change the base?
프리코스 스터디 1주차 - 고루 #182
Conversation
- 자판기 보유 금액 설정 - 상품 설정 - 투입 금액 설정
readMoney -> readHoldMoney
|
||
private VendingMachineController(final Input input) { | ||
this.input = input; | ||
} |
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.
필드로 선언한 객체들 중에 의존성을 주입받는 객체가 있고 아닌 객체가 있네요!
의존성 주입 여부를 어떤 기준으로 나누셨는지 궁금합니다! 🧐
printExceptionMessage(e); | ||
return null; | ||
} | ||
} |
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.
우왓 Function 함수형 인터페이스를 이용해서 입력받은 값을 필요한 도메인으로 바로 바꾸는 것을 이렇게 깔끔하게 적용할 수 있군요..!!
배워갑니다 👍
if (depth >= MAX_RECUR_DEPTH) { | ||
throw new IllegalArgumentException( | ||
String.format("[ERROR] 입력 재시도 최대 가능한 %d회를 초과하였습니다.", MAX_RECUR_DEPTH)); | ||
} |
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.
오..! Controller단에서 재귀를 사용하셔서 재시도에 대한 우려가 있었는데, 입력 재시도 가능 횟수를 설정하셨군요!
이런 방법이라면 메모리 부족에 대한 걱정은 덜어둘 수 있겠어요! 👍
setHoldCoin(); | ||
setProducts(); | ||
setInputAmount(); | ||
//TODO : while(isStilRemainMoney) |
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.
혹시 이 TODO는 어떤 기능을 완성하고 싶으셨던건지 궁금합니다!
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.
상품 가격까지 꼼꼼하게 감싼 점!! 배워갑니다! 👍
|
||
public void purchase(final String inputString) { | ||
|
||
} |
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.
앗 이 부분은 구현을 미저 못하신..!! 부분인가봐요 ㅠ.ㅠ
다음에는 다 부셔버리자구요! 💪
} | ||
} | ||
return coins; | ||
} |
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.
자판기의 보유 동전 개수를 랜덤으로 정하는 로직인 것 같네요!
int형 배열 두 개로 설정하니까 아무래도 가독성 부분에서 아쉬운 것 같습니다 (아무래도 시간 부족 때문이겠죠 ㅠ.ㅠ)
고루님께서 작성하신 코드와 비슷한 기능을 하면서 가독성을 어떻게 높일 수 있을까 고민하다가,
countCoin()
에서 사용하신 map을 활용할 수 있겠다는 생각이 들었습니다!
coins[random][0]++
이 부분을
map.put({random에 해당하는 Coin 객체}, map.getOrDefault({Coin 객체}, 0) + 1);
와 같이 구현해볼 수 있을 것 같습니다!
고루님의 생각은 어떠신지 궁금해요
int count = covertToInt(productInformation[2]); | ||
|
||
return new AbstractMap.SimpleEntry<>(Product.of(name, price), count); | ||
} |
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.
우왓... AbstractMap이라는게 있었군요...! 처음 알았네요!
작성하신 코드보면서 공부 해봐야겠어요!
No description provided.