사람들이 왜 스터디에 참여하고 진행하는지 이유에 대해 알게 됐다. 솔직하게 말하자면 필자는 혼자 공부하는 것에 익숙했다. 때문에 스터디에 참여하는 경우 혼자 공부를 조금 진행하고, 다른 팀원들과 같이 공부하기 보다 스터디를 이끌어가며 진행했기 때문에 스터디로 인해 나 자신이 성장하는 것을 느끼기 어려웠다. 하지만 이번 스터디 주제는 Spring 입문이 아닌 일부러 Spring 심화(프로젝트)에 참여했다. Spring경험은 클론 코딩으로 간단한 프로젝트를 만들어본 경험만 존재 했기 때문에 나에게 조금 어려울 수도 있겠다 생각했지만, 어려움도 경험해보고자 참여했다. 또한 이 스터디는 멘토분이 존재했기 때문에 모르고 어려운 부분들을 많이 물어볼 수 있었다는 점도 많이 도움이 됐고, 심리적으로 안정적이었다.
확실히 스터디를 진행하면서 모르는 부분들이 정말 많았다. Entity, Dto, Vo 모델 클래스의 개념도 이번 스터디를 통해 처음 알게됐고, DB안에 CreatedBy, UpdatedAt, CreatedAt 컬럼들을 저장하는 것과 저장하는 이유에 대해서도 알게됐다. 이렇게 모르는 부분들을 멘토분과 팀원들에게 물어봤을 때 굉장히 친절하게 답변을 해주셔서 좀 더 적극적으로 질문을 할 수 있었다.
또한 다른 분들보다 부족하다는 생각이 들어서인지 다른 스터디때보다 훨씬 열심히 찾아보고 공부했던 것 같다. CreatedAt, UpdatedAt은 Spring Annotation을 사용하여 자동으로 저장할 수 있는 방법을 찾아 팀원들과 공유했다. 또한 이는 다른 Entity모델들도 공통으로 가지고 있는 컬럼이기 때문에 따로 TimeStampEntity 모델 클래스를 만들어 상속을 받는 형식을 사용하는 방법도 공유했다. 이 뿐만 아니라 MapStruct의존성을 이용해 Update를 진행하는 방법과, 지금은 각 Entity, Dto클래스에 toDto, toEntity 함수로 전환을 하지만 이 MapStruct를 사용하여 전환이 가능하다는 사실도 공유했다.
팀원들과 프로젝트를 끝내긴 했지만 Mapstruct를 사용하여 모델 전환을 하거나 TimeStampEntity를 다른 모델도 상속받도록 하는 등 개인적으로 아쉬운 부분들이 존재하여 개인 Repo로 Fork하여 계속 수정해나갈 계획이다.
종합적으로 본인의 성장에 많은 도움이 됐다. 점점 백엔드 매력을 알아가고, 계속해서 개인의 역량을 발전해나가고 싶다.