본문 바로가기
[Project] CafeHub

[CafeHub] 프로젝트 총 회고

by heosj 2024. 1. 11.

 

프로젝트명

CafeHub [카페허브]

 

기간

2023.11.28 - 2023.12.29

 

팀 구성

4인 팀 프로젝트

 

주제

주변의 인기있는 카페 추천 및 카페 홍보 서비스

포인트 적립과 사용 및 결제가 가능한 웹 서비스

 

주요 기술

SpringBoot / SpringSecurity / JPA

React / Redux

MariaDB

AWS

 

주요 역할

아이디 / 비밀번호 찾기

회원 정보 수정

카페 지도 / 카페 정보 / 카페 찜

리뷰 상세 페이지 / 리뷰 찜 / 리뷰 추천

찜한 리뷰 리스트 / 찜한 카페 리스트

결제 관련 기능 (토스 페이먼츠 API)

AWS EC2 배포

 

Github 링크

https://github.com/Yummsters/CafeHub

 

 

 

 

 

총 회고

 

1) JPA 이해도 향상

프로젝트를 통해 JPA를 활용한 데이터베이스 관리에 대한 심층적인 이해를 얻었다. Entity 간 관계 설정, 쿼리 메소드, Q클래스 사용 또는 @Query 애너테이션 등 다양한 방법을 통해 데이터베이스와 상호작용하는 방법을 익힐 수 있었다. 상황에 맞게 적절한 방법을 사용하여 최적화된 코드를 작성하기까지 더 많은 연습이 필요할 것 같다.

 

2) React와 Redux 이해도 향상

React에 존재하는 다양한 Hook들을 통해 컴포넌트 간 데이터 전달 및 페이지 렌더링을 제어할 수 있게 되었다. 이론상으로 잘 이해되지 않았던 부분을 실제 프로젝트에서 어떻게 적용되는지 경험함으로써, React의 동작 동리에 대해 이해할 수 있었다. Redux를 사용하여 컴포넌트 간 데이터 전달 방법을 습득했지만, 결제와 관련된 부분에서 부족한 지식으로 인해 다양한 상황을 고려하여 처리하느라 로직이 복잡해졌다. 더 나은 상태 관리를 위해 Redux middleware 활용, 비동기 처리 등에 대한 공부가 더 필요할 것 같다.

 

3) AWS 배포 경험과 보안 문제

AWS EC2를 통해 서버를 배포하게 되었는데, 데이터베이스 보안이 취약해서 해킹을 당하는 일이 발생하였다. 새로운 인스턴스를 생성하고 데이터베이스 보안을 강화하여 해결할 수 있었으나, 진작에 보안을 더욱 철저히 했다면 데이터를 손실하는 일이 발생하지 않았을 것이다. 이 경험을 통해 운영체제와 네트워크에 대해 공부해보고 싶은 욕구가 생겼다.

 

4) 협업

기획 단계에서는 팀원 모두가 다양한 의견을 나누고 적극적으로 소통했지만, 실제 개발 단계에서 각자의 역할에 몰두하다 보니 개발 상황 공유와 소통이 부족해졌다. 팀원들은 이러한 문제를 인식하고 개발 일정을 재조정하며 매일의 목표를 공유하기 시작했다. 팀원 간 부족한 부분이 있으면 서로 도움을 주고받으며 협업이 원활하게 이루어질 수 있었다. 서로를 독려하고 응원하며 모든 팀원이 열심히 참여해 준 덕에 누구 하나 뒤처지지 않고 성공적인 결과물을 만들 수 있었다.

 

5) 향후 계획

우리는 사용자 중심의 친절한 서비스를 개발하기 위해 노력했다. 여러 문제들을 마주했을 때, 다양한 방면으로 시도해보고 기록하면서 문제 해결 능력이 향상됨을 느꼈다. 이제까지의 경험을 기반으로 지인의 사업을 도울 수 있는 예약 사이트를 혼자 구현하여 완성해보고 싶은 욕심이 생겼다. 카페허브 프로젝트를 통해 얻게된 경험들을 바탕으로 더 깊은 이해와 심화 학습을 통해 효율적이고 완벽한 기능을 가진 서비스를 개발하고 실제 서버에서 운영할 계획이 있다.