본문 바로가기

반응형

Project

(9)
[UMC | DEMO DAY] 백앤드 리더의 1등상 후기 프로젝트 소개 - Github: https://github.com/spon-us spon-us spon-us has 2 repositories available. Follow their code on GitHub. github.com 들어가면서 24년 2월 20일, UMC 데모데이를 끝으로 UMC 5기 Spring파트를 수료했습니다! 수료와 함께 첫째날 데모데이 1등상이라는 좋은 결과를 얻어 더욱 뜻깊었던 경험이 된 것 같습니다. UMC는 학기간 자신의 파트 수업을 들으며 자신의 실력을 키웁니다. 그 후에 방학이 시작되면, 방학 기간 동안 여러 파트의 사람들과 팀 매칭을 통해 하나의 프로젝트를 진행합니다. 저는 이전 아이디어톤때 PM님의 성실함과 적극성에 매료되어 같은 PM님께 지원했고, 다행히 제가 원..
[Hackathon | BeautifulHalboo] 5th Ne(o)rdinary 해커톤 리뷰 서비스 - 아름다운 할부 Github: https://github.com/5th-Ne-o-rdinary-HACKATHON-team-I (리팩토링 이후 공개 예정) 리뷰에 들어가기 앞서.. 해커톤이 마무리된지 2주가 넘어가고 있습니다. 이번 해커톤을 통해 많은 점을 느낄 수 있었습니다. 제 부족한 점을 발견할 수 있었고, 배워가는 점도 정말 많았습니다. 이때 느낀 점을 짧게 개인 메모장에 작성해두었는데, 이번 포스팅에서 글로 풀어가며 다시 한 번 정리하고자 합니다. 너디너리 해커톤은 CMC 부원들은 필수 참여, UMC 부원들은 신청을 받아 참여하였습니다. 그 외에도 여러 신청 방법을 통해 참여하는 분들도 많았습니다. 저희 팀은 CMC 개발자, UMC 개발자 (본인), 개인 참여한 개발자 3명이서 서버 파트..
[Project: OurWorldcup] 테스트 및 리팩토링 시작 들어가면서 개발을 시작한 사람들은 영상이나 포스팅에서 "테스트가 중요하다", "TDD로 개발해야 한다"라는 말을 많이 들었을 겁니다. 저도 많이 들었기 때문에, 처음 개발을 시작할 때 각 기능에 대한 테스트를 작성하고자 했죠. 하지만 어떤 기능을 테스트해야 하고, 어느정도까지 테스트 해야 하는지, 어떤 식으로 테스트 해야 하는 지 등에 대한 경계가 명확히 서 있지 않았습니다. 그렇기 때문에 release v1.0까지는 우선 기능 구현에 초점을 맞춰 개발을 진행했습니다. release v1.0을 출시한 후, 리팩토링과 테스트 코드 작성을 하기로 마음 먹었습니다. 리팩토링 & 테스트 리팩토링과 테스트를 위해 유명한 도서들을 읽으며 사전조사를 했습니다. Object도서를 읽으며 객체 지향 프로그래밍 패러다임에..
[Project/OurWorldcup] release v1.0 리뷰 프로젝트 Github: https://github.com/dbwp031/OurWorldCup/tree/release/v1.0 홈페이지: https://ourworldcup.store 기간: 2023.09 (1달) 개발 스택: #Java #SpringBoot #SpringBootJpa #MySQL #OAuth2.0 #JWT #AWS 지난 한 달 동안 개발한 "우리끼리 월드컵"을 정리하고 회고하고자 합니다. 뿐 아니라, 이후 어떤 방향으로 프로젝트를 개선해 나갈지 정리하고자 합니다. 프로젝트 소개 - 개요 근래 서비스되고 있는 (이상형) 월드컵 서비스들은 사용자들의 선택 기록을 공유하지 못합니다. 자신의 지인들과 월드컵을 플레이하고 각자 어떤 선택을 했는지 비교해보는 것이 진정한 묘미인데 말이죠! 본 프로젝..
[Project/OurWorldcup] 로그인 OAuth2 + JWT - #1 도메인 추가 및 수정 본 프로젝트에서는 Spring Security 6 버전으로 OAuth2 + JWT를 사용하여 로그인 시스템을 구축하고자 합니다. 관련 링크: Github Issue: https://github.com/dbwp031/OurWorldCup/issues/10 Github Commit: https://github.com/dbwp031/OurWorldCup/commit/e3141b53ce3da88fc9794aa6675f194285182874 들어가기 앞서, 오늘 구현한 도메인들의 형태는 대략 아래 그림과 같습니다. 그리고 아래 ERD는 오늘 설명과 관련된 테이블들의 구성입니다. 1. Authority 관련 도메인 추가 Authority란 "권한"을 의미합니다. 다양한 아티클에서 Role과 많이 혼동하고 있다고 이..
[Project: OurWorldCup] branch 전략 분석 및 선택 도입 프로젝트를 진행할 때 적절한 브랜치 전략이 필요합니다. 유명한 전략으로 git-flow, gitlab-flow, github-flow이 있습니다. 각각에 대해 간단히 살펴본 후 저에게 맞는 브랜치 전략을 선정하기로 했습니다. https://wiki.yowu.dev/ko/dev/Git/about-git-github-gitlab-flow 블로그에서 이해에 도움을 많이 받았습니다. 아래에 나오는 모든 예시 사진은 이 블로그에서 가져온 그림입니다. git-flow git-flow는 가장 많은 기능을 포함한 브랜치 전략입니다. 완전히 안전한 코드의 main 브랜치 긴급한 수정을 위한 hotfix 브랜치 개발을 위한 develop 브랜치 세부적인 기능을 개발하는 데 사용되는 feature 브랜치 개발 후 품질..
[Project: OurWorldCup] API 명세서 작성하기 API 명세서 작성 로그인 후 메인 페이지는 /{id} 형식으로 작성해야 했습니다. 그런데, 월드컵 정보를 확인하는 페이지를 들어갈 때, /{id}/{wordldcup_name}는 올바르지 않다고 생각했습니다. 저 표현은 worldcup이 id에 종속되어 있는 것으로 오해할 여지가 있기가 때문이죠. 이를 해결하기 위해 github의 형식을 따르기로 했습니다. 하나의 worldcup은 여러 명이 하나를 조직한다는 점에서 github의 organization과 비슷하다고 생각했습니다. organization은 github.com/{organization_name}의 엔드포인트로 되어있었습니다. 이에 따라서 저도 /{worldcup_name}으로 바로 접근할 수 있도록 해주었습니다. 완성한 api 명세서는 아..
[Project: OurWorldCup] ERD 설계하기 설계 계기 Entity Relationship Diagram, ERD는 DB를 구축하는 데 자주 이용하는 다이어그램입니다.이전 프로젝트에서도 사용해서 이해하기 쉬웠던 경험이 있어 이번에도 설계한 후 프로젝트를 진행하고자 합니다. 각 테이블에 어떤 필드가 필요한 지, 테이블끼리의 관계가 어떻게 되는 지 미리 결정해 놓으니 개발할 때 맘 편히 작성할 수 있습니다. 설계 https://app.diagrams.net/에서 ERD를 그릴 수 있습니다. 저는 여기서 ERD 외에도 usecase와 같은 다양한 다이어그램을 작성합니다. participants 테이블은 user_account - worldcup 테이블의 다대다 관계를 분리하기 위하여 생성된 테이블입니다. game 테이블은 월드컵 정보를 토대로 생성된 게..

반응형