마지막 피드백이 도착하였다.
from. 멘토
코드 컨벤션 생각하며 작성하기
MVC 에 맞게 코드를 구분하기
private, static, final 을 적절하게 사용하기
테스트 코드 작성하기
매직 넘버 추출하기
객체가 사용되는 시점에 검증하기
어레이 보다는 컬렉션을 사용하기
stream 사용해보기
위 사항을 지키면서 코드를 다시 한번 작성해 보았습니다.
너무 고생 많으셨습니다 👍
이 열정 무엇?? 👍
이번에는 자동차 등록하는 부분은 Race 클래스에서 -> CarRacer 부분으로 이동하였습니다.
그렇게 되면 CarRacer의 객체가 생성될 때마다 input에 대하여 검증을 진행하겠지만,
멘토님께서 말씀하신 객체가 사용되는 시점에 검증하기 위해서는 이렇게 진행하는 것이 더 옳다고 판단하였습니다.
멘토님께서는 대부분의 코드를 stream으로 작성하셨는데, 저는 아직 stream이 익숙하지 않아 연습하는 기간을 가졌었습니다.
구조 관점에서는 정답이 없는 부분이라서 😄
그 때 그 때 적절하게 하지만 과하지 않게 중심을 잘 잡아나가는게 중요한데
이건 차츰 차츰 연습하시다보면 어느정도 기준이 생기실 꺼라서 저는 오히려 크게 걱정이 안되네요 😄
stream은 사다리 미션을 하시면서 충분히 연습하실 수 있는 시간이 있습니다 😨
제가 오히려 더 복잡하게 만들어드렸네요 😭
MVC 패턴에 따라 클래스들을 나눠서 폴더에 정리하였습니다.
뭔가 열심히 한것 같았는데 다시 작성해고 난 뒤 확인해 본 결과 step4에 비해서 변한건 별로 없긴하네요...
컨펌 부탁드립니다. 감사합니다!!
step4에 비해서 변한게 별로 없다는건,
리팩토링 할만한 요소가 보이지 않았다는건
그만큼 step4까지 오시면서 잘했다는 거죠 😄
안녕하세요 재영님 😄
마지막 단계도 잘 진행해주셨습니다 😄
이전 리뷰 과정에서 너무 괴롭혀드린게 아닌가
걱정이 많이 됐는데, 그리도 이렇게 잘 마무리 해주셔서
제가 더 감사하네요 😄
소소한 의견 좀 드렸습니다
개선까지 할 필요는 없을 것 같습니다 😄
이번 과정에서 했던 내용 한번 정리하고 가시면
더 좋을 것 같습니다 🙇
그간 미션 진행하시느라 수고 많으셨습니다
🚗 🚗 🚗 🚗 🚗
🏎️ 🏎️ 🏎️ 🏎️ 🏎️
race.printResult();
ResultView resultView = new ResultView();
resultView.printFinalResult(race.getMaxCarName());
Race race = new Race(carNames.split(","), round);
"," 이 부분도 상수로 추출되면 가독성 측면에서 좀 더 좋을 것 같습니다 😄
이번 과정에서 만큼은 좋은 습관을 들이신다 생각하고 엄격하게 연습해보시길 권장 드립니다 😄
resultView.printCurrState(carRacers);
runGameByCycle();
carRacers.stream()
.forEach(carRacer -> findMaxPositionCarName(carRacer.getCarName(),carRacer.getCurrPosition()));
단순 forEach만 사용하실 경우에는 굳이 stream()을 생성하지 않으셔도 됩니다 😄
참고만 부탁 드립니다 🙇
public class RandomGame {
static Random rd = new Random();
public boolean throwDice() {
int randNum = rd.nextInt(10);
10, 4도 매직넘버 추출되면 좋을 것 같습니다 😄
to. 멘토
매직 넘버, 상수를 추출한다고 생각을 했는데 무의식 중에 그대로 사용하는 모습이 여전히 나타나고 있습니다.
좀 더 좋은 습관을 들일 수 있도록 천천히 꼼꼼하게 코드를 짜도록 하겠습니다.
레이싱 게임 프로젝트를 진행하는 동안 세심하게 피드백을 주셔서 감사합니다.
더 좋은 코드란 어떤 것일까, 고민하면서 레이싱 게임 프로젝트를 진행하였는데, 순간 순간이 재밌는 경험이었습니다.
처음에 짠 코드와 지금 코드를 비교하면, 구조적인 측면에서 많은 발전이 있었다고 생각합니다.
남은 프로젝트도 열심히 해보도록 하겠습니다.
멘토님과 2주란 기간을 함께 보냈는데, 많은 도움을 주셔서 감사합니다.
그동안 정말 감사했습니다!!
'강의 > TDD, Clean Code with Java 12기' 카테고리의 다른 글
[로또] step2 - 로또(자동) (17일차) (0) | 2021.08.05 |
---|---|
[로또] step1 - 문자열 덧셈 계산기 (15일 차) (0) | 2021.08.03 |
Step5 - 자동차 경주(우승자) (14일차) (0) | 2021.08.03 |
Step4 - 자동차 경주(우승자) - 피드백 반영 (11일차) (0) | 2021.07.29 |
Step4 - 자동차 경주(우승자) (9일차, 10일차) (0) | 2021.07.27 |