프로젝트 내용
- 프로젝트 주제
- stack-overflow 사이트 클론코딩
- 규모
- 백엔드 3명(담당)
- 프론트엔드 3명
- 기간
- 2주 : 평일 9AM ~ 6PM
- 사용 기술
- 백엔드 : spring-boot(IDE : IntelliJ), postman
- 프론트엔드 : react(IDE : Visual Studio Code)
- 배포 : AWS(EC2 - 서버 배포, S3 - 정적페이지 배포)
- 데이터베이스 : H2-Console
- 보안 : JWT 사용
- 통신 : Rest API
프로젝트 결과물
- 테이블 명세서
- 프론트엔드 결과
- 코드
- GitHub : https://github.com/codestates-seb/seb41_pre_016
- 나의 branch : dev-woo, dev-woo2
- 구현 내용
- 자체 회원가입
- 로그인
- 게시글 작성
- 작성된 태그 보기
- 전체 사용자 보기
- 전체 게시글 보기(정렬 : 최신순, 댓글 없는 순)
- 댓글 달기
- 개인정보 보기 & 수정
- 게시글, 댓글의 투표
프로젝트를 마치며 ...
- 아쉬운 점
- 백엔드의 코드 취합이 되지 않아서 한 명이 다른 사람들의 코드 취합함
- 그로 인한 깃허브를 효율적으로 사용하지 않음
- 처음에만 칸반을 사용하고, 시간이 지날수록 제대로 사용하지 않음
- 사용자 요구사항 정의서, API, 테이블 명세서를 처음부터 제대로 작성하지 않아서 코드 작성하는 과정에서 계속된 수정이 요구됨
- 촉박한 배포 일정으로 인한 배포 실패
- 데이터베이스를 H2-Console을 이용해서 서버 재시작시 데이터 전부 소멸됨
- S3와 EC2 연결로 인해 CORS 에러 발생했지만 해결 못함
- AWS S3의 요금 발생
- 좋았던 점
- 사용자 정의서 작성, 테이블 작성 등등 처음부터 원하는 것을 구현하기 위한 과정을 거치면서 이때까지 배운 것을 복습할 수 있는 시간
- 자바의 stream를 좀 더 자유롭게 사용할 수 있게 됨
- JWT, OAuh2 등 보안관련 공부를 자세히 하면서 부족한 점을 채움
- 관련 유튜브 영상 : https://youtu.be/XXseiON9CV0
- 프론트엔드와 함께 개발 및 소통하는 방법을 깨달음
- 프로젝트 체험
- 프론트엔드와 소통하지 않으면 알기 힘들었던 사실을 알게 됨
- 개선해야 할 점
- SOLID를 고려한 코드 작성
- 보안 강화를 위한 공부
- 백엔드의 코드 컨벤션 필요
- 코드 컨벤션을 지키는 코드 작성
- 체계적인 코드 리뷰 진행을 위한 규칙 세우기
- 백그라운드에서 서버 동작 시 로그 구현하기
- 깃허브의 pull 기능 활용하기
- AWS의 S3에 요금 발생한 원인 발견하기
- CORS 에러를 고려한 개발
- 리팩토링할만한 것
- OAuth2를 이용한 소셜 로그인 구현
- 테이블 리팩토링
- JWT를 통한 게시글, 댓글 달기
- 대댓글 추가
- 코드 간결화 & 주석 달기
- 로그 남기기
- 데이터베이스로 mysql 사용하기
- AWS 연동 시 발생하는 CORS 에러 발견하기
'코드스테이츠 - 3회차 백엔드 부트캠프 > Pre Project' 카테고리의 다른 글
2023.01.06 금 - audit의 null 에러 (0) | 2023.01.06 |
---|---|
2023.01.02 월 (0) | 2023.01.02 |
2022.12.30 금 (0) | 2022.12.30 |
2022.12.29 목 (0) | 2022.12.29 |
2022.12.28 수 (0) | 2022.12.28 |