서론 3주 차 미션은 Enum과 테스트 코드 작성 요구사항이 추가되었다. 2주 차부터 테스트 코드 작성을 연습했지만, 여전히 테스트 코드 작성은 너무 어려웠다. 그 이유는 아무래도 어디까지 테스트해야 하는가? 테스트 코드가 프로덕션 코드에 영향을 미쳐도 괜찮은가? 테스트하기 좋은 코드를 만들기 위해 클래스 분리하는 방법 등에 대한 고민 때문이었다. 하지만 2주 차 회고에서 말했다시피 3주 차가 끝나고 공통 피드백을 통해 어느 정도 의문을 해결할 수 있었다. 그래서 오늘은 Enum을 중심으로 회고해 볼 생각이다. (다 쓰고보니 그냥 Enum 설명 글이다..) Enum의 장점 편리한 상수 관리 Enum은 상수를 정의하기 위한 열거형으로써 객체보다는 값 타입으로 선언하는 상수가 여러 가지 값을 가질 수 있다...
서론 2주 차 우테코 문제는 1주 차에서 들여쓰기 제한과 삼항 연산자 제한 등의 가독성을 높이기 위한 요구사항이 추가되었다. 1주 차와 크게 달라진 점은 없었기 때문에 이전 포스팅에서 언급했던 MVC에 대해 연습해야겠다고 생각했고, 우테코 단톡방과 디스코드 커뮤니티에서 다른 사람들이 테스트 코드를 작성한다는 이야기를 보고 나도 테스트 코드를 작성해 봐야겠다는 생각에 2주 차에는 테스트 코드 작성 방법에 대해 공부하여 TDD 방식으로 개발을 진행해 보았다. 테스트 코드를 작성하면서 어려웠던 점 되돌아보면 2주 차 "레이싱 카" 문제는 구현해야 할 기능이 많지 않았기 때문에 단위 테스트 연습이 수월했던 것 같다. 테스트 코드를 작성하면서 가장 어려웠던 점은 테스트 코드 작성 과정에서 테스트를 위한 코드가 t..
서론 우테코 프리코스를 처음 참여하게 되어 다른 사람들은 어떤 식으로 코드를 작성하는지에 대한 궁금증이 있었다. 인터넷에 우테코 프리코스 회고를 정리해 놓은 블로그들이 많이 있었고, 다른 사람들의 코드를 찾아본 결과 대부분의 사람들이 MVC 패턴으로 개발을 진행하는 것을 보고 나도 MVC로 개발을 해봐야겠다는 생각에 MVC를 찾아보게 되었다. 프리코스 이전에는 MVC가 무엇인지는 알고 있었지만, 왜 써야 하는 것인지 어떻게 사용하는 것인지 정확하게 모르고 스프링에서 MVC로 개발하는 레퍼런스들을 보면서 따라만 했던 것 같다. 그래서 이번 기회에 MVC를 왜 사용하는가? 어떻게 적용하는가? 에 대해서 고민해 보았고, 4주 차 프리코스를 마친 현재의 내가 생각하는 MVC에 대해 기록해 본다. MVC가 무엇이..
테스트 코드가 필요한 이유 코드의 변경 사항이 생겼을 때 문제가 발생하더라도 정의해놓은 테스트에서 에러가 발생하기 때문에 어디서 문제가 생겼는지 파악하기가 수월하다. 즉, 유지보수와 확장성 측면에서 장점을 가질 수 있고, 테스트 코드를 통해 해당 기능의 다양한 사용 케이스를 볼 수 있으므로 일종의 문서 역할을 한다. 또한 자동화된 배포에서도 테스트 코드가 있다면 자동으로 전체 테스트 코드를 실행하여 성공 시에만 배포하여 안정성을 가질 수 있다. 물론 단점도 존재하는데, 테스트 코드 작성하는 법을 따로 공부해야 한다는 점과 테스트 코드를 짜는 시간이 추가적으로 소요된다는 점이다. 하지만 테스트 코드 작성법을 공부했을 때 가져갈 수 있는 이점과 초반에 시간을 투자 했을 때 이후에 얻을 수 있는 시간 단축 효..