패스트캠퍼스X야놀자: 백엔드 개발 부트캠프_ToyProject1 후기

패스트캠퍼스 x 야놀자 부트캠프의 첫 팀프로젝트인 자바 ToyProject1의 후기입니다.
기술 스택과 구현 과정
프로젝트는 Java를 사용하여 콘솔 출력 애플리케이션을 MVC 패턴에 맞춰 개발하는 것이었습니다.
자바 콘솔 출력 프로그램을 MVC 패턴에 맞춰 작성하는 것이 이번이 처음이다 보니 처음에는 많이 헤맸습니다. 하지만 Spring 에서 접했던 경험을 토대로 다시 생각해보니 간단하였습니다.
Model을 이용하여 전체적인 도메인을 관리하고, View에서 사용자의 입력과 출력을 관리하고 Controller에서 이들을 통제하는 방식의 어플리케이션을 만들었습니다.
RFP에서 요구하는 것에 따라 여행과 여정의 정보를 받아서 파일로 저장하는 로직을 Service, Dao 객체로 역할을 분리하여 작성하였습니다. 이에 Jackson과 OpenCSV 라이브러리를 이용하였습니다.
개발 과정 및 어려움
프로젝트의 규모가 5명이서 만들기에는 작게 느껴져서 업무를 어떻게 분배해야 할 지에 대해 고민을 많이했습니다. 또한 주어진 RFP에 너무 모호한 표현이 많아서 많은 혼동을 겪은 것 같습니다. 현업에서도 이러한 고민을 많이 겪을 텐데, 평소 인터넷에서 보던 기획자와의 커뮤니케이션의 어려움에 대해 조금이나마 느낀 것 같습니다.
또한, 협업 중 팀원과 의견 맞추는 것에 많은 토의시간을 가졌고 이런게 개발이구나 하는 것을 느끼게 되었고 개발자의 업무가 단순히 코딩만 하는 것이 아닌 협업이 더 큰 부분을 차지한다는 것을 깨닫게 되었습니다.
결과 및 향후 계획
팀장을 맡으며 팀원들을 이끌기에 실력이 많이 부족함을 느꼈습니다. 확실히 '애매하게 아는 것'에 대해 경계할 필요성을 느꼈습니다. 그래서 다음 프로젝트인 스프링을 하기 전 스프링에 대해 전반적으로 다시 복습하여 확실히 알 수 있도록 할 계획입니다.

mvc 패턴에 맞게 구성한 패키지 구조

깃허브 커밋 history


