이어서.. 오늘은1. 테스트 코드를 메인 코드로 옮기기2. 테스트 통과를 목표로 가졌다.둘 다 완료했다. 시간이 많이 걸린 부분이 controller 의 구조에 관한 고민, 그리고 테스트에서의 에러였다.메인 코드로 옮기기ResultOfGame 로직 변경테스트 클래스를 메인 코드로 그대로 옮겼는데, 에러가 발생하지 않아서 단위 테스트를 잘 진행했구나- 라는 생각이 들어 뿌듯했다.코드를 옮기다가 새로운 고민이 생겼는데, ResultOfGame (게임 결과 결정) 클래스에서 결과가 담긴 문자열을 OutputView 에 전달하는 방식이 맞는지였다. 이것이 SRP 원칙에 위반되지 않나 고민을 했다.)그리고 더불어 controller 를 작성하다 보니 '재시작 부분을 어떻게 구현할 것인가' 라는 고민이 들었다. 사..
우아한테크코스
이어서.. 오늘은 1. 핵심 로직(플레이어-컴퓨터 숫자 비교) 작성 2. 테스트 코드 완성 을 목표로 가졌다. 결론부터 말하자면 둘 다 완료했다. 더 나아가서 작성한 테스트 코드를 실제 코드로 옮기고 있는데, 여기서 좀 난관을 겪어서 시간이 많이 지체가 됐다. test: 핵심 로직(플레이어-컴퓨터 숫자 비교 기능) 작성 어제 고민한 것이, (split() 등을 사용해서) 문자열을 한 글자씩 분리할 것인가? indent depth 를 늘리지 않으면서, 핵심 로직을 어떻게 구현할 것인가? 였다. 두 가지를 모두 충족시키는 코드가 깔끔하고 성능이 좋은 코드라고 생각했다. 그래서 고민을 많이 했다. 일단 2번 사항을 위해서는 이중 for 문 대신 볼 카운트 메서드와 스트라이크 카운트 메서드의 분리가 필요하다고 ..
이어서.. 오늘은 아래의 것들을 하기로 생각했었다. 1. 테스트 코드에서 입력값을 받을 수 없는 이슈 해결하기 2. 테스트 코드 작성 시작하기 1번은 해결했고, 2번은 진행 중이다. 테스트 코드에서도 테스트 자체에서도 참 고민할 것이 많았다. 이제 이틀차인데 새롭게 배우는게 이전보다 훨씬 많은 것 같아서 좋았다. 역시 실전에서 부딪혀 봐야 빨리 배운다. 테스트 코드에서 입력값을 받을 수 없는 이슈 해결 | [System.in과 System.out에 대한 테스트] (https://sakjung.tistory.com/33) 위 포스팅에서 많은 도움을 받았다. 알고 보니 우테코 3기 선배분의 게시글이였다. 간단하게 요약하자면, System.in은 사용자의 입력을 InputStream으로 담는다. Scanner..
시작 우테코 프리코스가 시작됐다. 2시에 유튜브 라이브로 사전설명회가 있었고, 3시 땡 하니 1주차 미션 메일이 도착했다. 그런데 왠걸, 1주차 미션이 숫자야구였다. 사실 우테코 프리코스 미션은 어느정도 이전 기수의 문제를 그대로 쓴다고는 알고 있었다. 5기때는 1주차 온보딩(기초 코딩테스트급 7문제) - 2주차 숫자야구였는데, 2주차 문제가 이번 기수 때 1주차 문제로 나온 것이다. 여기서 생각했던 것은, 1. 지원자 수가 많아서 우테코 측에서 변별력을 올린 것 같다. 2. 다행이다. 왜 다행인가? 숫자 야구를 풀어봐서 다행이 아니었다. 나는 *숫자야구는 포크만 해놓고 풀어보지는 않았다. * 그럼 왜 다행이냐면, 한 과제에만 집중할 수 있었기 때문이다. 사실 지난 기수 프리코스 문제 중 1주차 온보딩에..