3주차 이번 주차에서는 특정 주제 3가지 중 하나를 선택하여 프로젝트 전 요구사항을 분석해 보는 시간이었다. 개인적으로 요구사항 분석 시 사용되는 시퀀스 다이어그램이나 API 명세 같은 작업을 별로 좋아하지 않는다. 귀찮기도 하고 문서 작업은 아무래도 큰 흥미를 발생시키지 않지 때문이다. 그래서 간단한 시나리오와 ERD 정도만 생각하고 바로 코드 작업에 들어갔다. 하지만 이런 식으로 작업하다보면 큰 빈틈을 발생시키게 된다. 평생 혼자 일한다면 상관 없겠지만 취업, 이직을 위한 Github의 작업물을 제공해야 될 때 또는 과제전형이 있었을 때 이런 문서를 제공하는 것은 당연하다. 이 외에도 회사에서 작업할 때도 이런 작업물을 사전에 만들지 않고, 최신화 작업을 하지 않는다면 남는 게 생각보다 없다. 사실 ..
항해99
2주차 회고 항해 플러스를 시작한지 2주차가 지나갔다. 2주차의 주제는 클린 아키텍터에 대한 내용이다. 많은 관심이 있는 주제였고, 책도 구매하였지만 할 게 많아서 미루고만 있었다. 그래서 이번 챕터를 하면서 강제적으로 할 수있는 기회가 생기게 되었다. 아키텍터는 직접 경험하지 않고 이론적으론 접근하기 어렵다는 느낌을 받았다. 그래서 목요일 정도까지 패키지 구성에 대한 고민만 하게되었다. 물론 성격적으로 부딪치는 방식을 잘 못하기 때문에 그런것도 있었던 것 같다. 하지만 멘토링에서 어느정도 가이드를 받고 다른 조원들의 과제 코드도 보면서 어느정도 감을 잡았었다. 이번 과제에 대해서는 fail을 받았지만 추가적으로 진행을 하지 않을 예정이다. 다음 주제에서 내가 느낀 바를 적용해가는 방식으로 진행할 예정이..
1주차 과제는 TDD이다. 간단한 요구사항이 주어지고 TDD를 이용해 구현하는 것이다. TDD에 대한 학습은 그 전에도 한 적이 있어 무리없이 진행할 수 있었다. 과제 진행 과제는 기능의 Todo가 적힌 Controller와 메모리 DB(HashMap)을 활용한 샘플코드가 주어져있다. 아래와 같은 방식으로 개발을 진행하였다. 1. 간단한 시나리오를 작성한다. 2. Controller 부터 개발을 시작한다. 시나리오 기반으로 Controller의 Request, Response을 정한다. 3. Controller에서 사용할 Service를 구현하며, 기능 메서드를 작성한다. 3-1. 여기서 부터 TDD 사이클을 적용한다. 3-2. 주로 성공 케이스를 생각하며 간단한 테스트가 통과하게 테스트 로직을 작성하고..