🔥인트로


점점 날씨는 따뜻해지고 개나리도 피고 있네요 어느덧 봄입니다. 하지만 코로나가 정말 강하게 퍼져 나가고 있으니 다들 건강잘 챙기면 좋을 것 같습니다!

개발자로서 어느덧 1년이 지나고 개발자로서 균형잡힌 성장을 위해서 이번에 카우치 코딩에서 진행하는 6주 협업 프로젝트에 참여하였습니다. 카우치 코딩에서는 Spring-boot, Jpa, Junit, CI/CD 해로쿠를 사용한 배포를 할 것입니다.

이번 주에는 개발 주제를 정하고 기능 명세서와 페이지 기획서 그리고 API문서, DB 명세서를 팀원들과 작성하였습니다.

저희 팀에서는 포레스트라는 프로젝트를 진행하게 되었습니다. 포레스트를 영어로 하면 for rest 즉 휴식을 위해서라는 뜻입니다. 휴식을 취하기 위해서 어디론가 떠나고 싶지만 막상 어디로 가야할지 모를 때를 위해 당신에게 도움을 주기위해 개발을 진행할 것입니다. 특정 태그들로 관광명소 리스트를 노출하는 프로젝트입니다.

이번주에 저는 DB 명세서, API 명세서, 그리고 크롤링을 해보았습니다.
우선, DB명세서를 살펴보겠습니다.

📗DB명세서


DB 명세서는 루시드 차트를 사용하여 제작하였습니다.
DB 명세서를 살펴보면 attractions(관광명소), comments(댓글), likes(좋아요)
, members가 존재합니다. 관광명소 리스트와 디테일한 관광명소 표현을 위해서 attractions 테이블을 만들었습니다. 댓글 테이블은 테이블 명처럼 관광명소에 대한 댓글을 표현하고 댓글을 단 사람이라면 댓글을 수정하고 삭제할 수 있게 만들기 위해서 제작되었습니다. 그리고 members 테이블은 구글 oauth를 위해서 만들어졌습니다. 그리고 이번 프로젝트에서 사용되지 않을 수 있지만 모든 댓글에 대해 수정과 삭제를 위해서 role(권한) 컬럼을 추가하여 admin 계정을 생성할 수 있도록 하였습니다. 그리고 마지막 테이블 like는 사용자가 좋아요를 누를 수 있도록 하기위해 테이블을 만들게 되었습니다.

📔API 명세서


이번에 작성한 API 명세서입니다.
https://grape-ring-3f9.notion.site/API-9cc8b24e8f674ed1a4af508dea073eea

📨크롤링


이번에 크롤링을 하면서 시간을 많이 소비한 것 같습니다.
https://github.com/3210439/kakaoCrawling/tree/main
크롤링을 하기 위해서 Chrome Driver, Selenium, Beatiful Soap를 사용하여
보았습니다. Chrome Driver를 사용하여보니 웹페이지가 자동으로 동작하는 것이 신기하였습니다.

profile
개발에 재미를 느끼며 꾸준히 성장하는 개발자 김종완 입니다.

0개의 댓글