프로젝트 | 스택오버플로우 클론 코딩 회고

yeonk·2022년 9월 6일
0

생각 끄적

목록 보기
6/10
post-thumbnail





첫 프로젝트


2022.08.19 ~ 2022.09.06 약 2주 동안 Pre-Project를 진행했다. 처음 3일간은 프로젝트 팀빌딩, 협업툴 학습, 프론트엔드의 작업 과정 등에 대해 학습하고 이후에 팀원들과 본격적으로 프로젝트를 진행하였다.

pre-project의 주제는 스택오버플로우 클론코딩이였으며, 팀원은 총 4명으로 프론트엔드 개발자 2명과 백엔드 개발자 2명으로 구성되었다.

javaspring 을 공부한 뒤로 첫 프로젝트라서 긴장도 되고 걱정도 컸다. 이 부족한 실력으로 혹여나 팀원분들에게 민폐가 되진 않을까 생각이 들었지만 프로젝트를 하면서 이전에 배우지 못한 새로운 것들을 경험할 수 있을 것 같아서 많은 걱정들을 던져놓고 프로젝트에 참여하였다. 그리고 부족하면 공부하면서 채우리라 다짐도 했고.





프로젝트를 진행하면서


팀의 협업툴로 노션과 깃헙을 사용하였고 게더타운에서 모여 회의도 진행하고 에러도 함께 해결하였다.

이번 프로젝트를 진행하면서 깃헙 이슈, 마일스톤, 프로젝트를 처음으로 제대로 활용해보았는데 편하고 좋았다. 첫 사용이라 깔끔하게(?) 사용한 것은 아니었지만 이번에 경험해보았으니 메인 프로젝트에서는 더 잘 사용할 수 있지않을까.. 기대를 하고 있다.

코드 작성 전에 사용자 요구사항 정의서 화면 정의서, ERD 를 작성하였고, API 명세서는 어느정도 구조를 잡은 뒤에 작성하였다. 모두 처음 작성하는 것이라 미흡하지만 이 또한 더 나은 다음을 위한 시행착오라고 생각했다.



ERD & API 명세서

ERD 툴로는 dbdiagram.io 를 이용하였다.
솔직히 처음 작성하고 프로젝트 중간에 변동이 좀 있어서 몇번 수정하였다.
프로젝트를 진행하면서 초기 설계를 잘 해야한다는 것을 뼈저리게 느꼈다.. 무의미하게 코드를 바꾼 것이 몇번인지..
다음 프로젝트에서는 주의해야겠다.

API 명세서gitbook을 이용하여 작성하였다.
이 것 역시 부족함이 많다. 프론트엔드 개발자분들과 원활하게 소통하려면 API를 잘 작성해야한다는 것을 체감했다. 그래서 같이 백엔드 개발을 담당한 경륜님과 메인 프로젝트에서는 제대로 작성해보기로 결심하였다..!!!



담당한 부분

처음에는 어떻게 업무를 분담할지 고민이 많았는데 시간이 없으니 일단 적어놓은 todo 중에 골라 잡아서 해보기로 했다.
많은 기능들을 구현하고 싶었으나, 한정적인 시간과 부족한 실력을 고려해서 기본적인 커뮤니티의 구조를 우선 개발하고 시간이 남으면 기능을 조금씩 추가하기로 했다.

기본적으로 구현해야한다고 생각한 부분은 아래와 같고, 엔티티별 CRUD는 둘이 나눠서 담당하였고, Spring Security 부분은 내가, JPA 엔티티 매핑은 다른 백엔드 팀원이 담당하였다.
aws는 .. 비용도 걱정되고 많이 접할수록 좋을 것 같아서 함께 진행했다.

  • User CRUD
  • Question CRUD
  • Answer & Comment CRUD
  • Spring Security 적용 (login & join, URI 권한 설정, CORS)
  • JPA 엔티티 매핑
  • aws (ec2, rds, parameter store)



아쉬웠던 점

다양한 기능을 구현하지 못한 것이 조금 아쉬웠다. 하지만 기본적인 기능을 제대로 구현해야 부가기능도 의미가 있는 것이 아닐까.. 이번 프로젝트를 바탕으로 메인 프로젝트는 보다 완성도 있게 진행할 수 있지 않을까 생각한다.

Spring Security에 대한 지식이 너무 없다. 공부한다고 했는데 아직도 많이 어렵게 느껴지고 제대로 이해했다는 생각이 들지 않는다. 특히 에러가 발생했을 때, 잘 알지 못하니 해결하는 것이 너무 힘들었어서 부족함을 많이 느꼈다. 메인 프로젝트를 진행할 때는 더 많이 공부해야겠다는 생각이 들었다.

배포자동화를 못했다. 코드스테이츠 계정의 깃허브를 사용해서 연동이 불가능한 것 같았다. 이부분이 많이 아쉽다..

프로젝트를 진행하면서 발생한 에러들을 잘 정리해놓지 않은 것이 ... 통탄스럽다. 바보같은 나.. 이미 경험한 오류들을 다시 만나지 않을거라는 보장은 없는데 왜 적어놓지 않았는지.. 본 프로젝트에 들어가면 자주 기록하려고 노력해야겠다.





다음으로


아쉬움이 많이 남은 pre-project였으나 정말 힘들기도 했고 즐거웠던 시간이었다. 그리고 프로젝트를 하면서 많이 배운 것 같다. 메인 프로젝트에는 더 성장하도록 노력해야겠다.

메인 프로젝트에 들어가면 보완하거나 제대로 공부하고 싶은 부분들..

API 명세 백엔드 개발자간 뿐만아니라 프론트엔드 개발자분들과의 소통도 매우 중요하다고 느껴서.. 서로의 행복한 개발 생활을 위해 깔끔하게 잘 작성하고 싶다.

JPA 엔티티 매핑 이번 프로젝트에서는 다른 백엔드 팀원님이 담당해주셔서 다음엔 나도 경험하면서 공부를 더 하고 싶다.

Spring Security 너무 어렵고 나에게 와주지 않는 이 친구.. 더 공부해서 제대로 적용해보고 싶다고 생각했다. 단순히 돌아갈 수 있는 코드가 아니라... 내가 이해하고 작성한 코드로..!

마지막으로.. 좋은 팀원분들을 만나서 즐겁게 프로젝트를 진행할 수 있었던 것 같아 감사하고, 남은 메인 프로젝트도 열심히 참여해야겠다!

0개의 댓글