본문 바로가기
프로젝트들/크소

[그룹 스터디 플젝] 두 번째 미팅 - 본격적 구현 전 방향 설정 (0401)

by 코곰 2021. 4. 24.

회의록

회의2 (20210401)

1. 프론트엔드 백엔드 서비스 분리에 관해서 논의.
  : SH님이 제시한 자료에서 전자(통합)와 후자(분리)에 대해 프론트 서비스와 백엔드 서비스를 AWS로 완전히 분리하는 것이 전자(통합)에 비해, 취할 수 있는 이득이 많다는 의견이 주류.

2. 프론트의 배포는 AWS 예정, 백엔드의 경우도 AWS 예정.

Team

1. IA와 흐름도 기반으로 4월4일 (일)에 전체적인 API 네이밍, 깃관련 규칙에 관련해 논의.

Front
1. 현재 일정으로 4월4일(일)부터 폴더 구조화 및 페이지 분담 예정.

4월5일(월)부터 개발 착수예정

기타
(HY님 의견) 개발을 시작하기 전에 깃허브에서 이슈를 활용해보자

 

서론 (혹은 변명)

그룹 스터디 프로젝트를 하면서 많이 배우고 있다.

책과 인터넷을 뒤져보며 많은 삽질을 통해 만들어나가지만,

삽질이 씨앗을 심고 무언가를 피워내는 기초가 되고 있다는 기분이 들어 참 좋다.

그리고 그 삽질을 지켜봐주고 도와주는 팀원분들이 계셔서 감사할 따름이다.

 

- 그리고 동시에, 바쁘단 이유로 회의록 올리는 거를 내팽겨쳤는데 ㅜ 지금이라도 다시 정리해보려 한다.

 

회의 내용 설명

1. 프론트 서버와 백엔드 서버 분리

  • Frontend는 리액트로, Backend는 스프링으로 구현하기 결정하고서 고민한 점은, 이 둘을 어떻게 섞느냐였다.
  • 리액트 + 스프링의 예시가 별로 없어서 다같이 구글링을 해봤는데, 팀원분께서 잘 설명된 블로그 글을 공유해주셨다.

sundries-in-myidea.tistory.com/112?category=798770

 

Spring Boot와 React를 통한 개발환경을 구성할때 고민해볼점

[Java/Spring] - Spring Boot와 React를 연동하여 개발환경을 만들어보자 Spring Boot와 React를 연동하여 개발환경을 만들어보자 이번에는 Spring Boot와 React를 연동하여 개발 환경을 만드는 과정을 이야기해보

sundries-in-myidea.tistory.com

 

  • 이 블로그에서는 리액트로 구성된 프론트엔드 서버를, 백엔드 서버 안에 넣어 같이 패키징하여 구동하는 형식을 채택하셨다 (이전 글).
    • Maven으로 빌드 실행 시 npm도 실행하도록 plugin 사용
    • SpringBoot jar안에 프론트엔드 build파일 포함
    • 이 과정을 거치면 8080 포트에서 리액트 화면이 뜸
  • 하지만 이는 프론트엔드 서버와 백엔드 서버가 동시에 구동되어야 하고, 한 쪽이라도 문제가 생기면 다른 한 쪽도 작업할 수 없기에,
  • 프론트엔드와 백엔드를 나눠 작업할 우리 팀에는 맞지 않는다는 결론이 나왔다.

 

  • 따라서 우린 프론트엔드 쪽과 백엔드 쪽을 따로 따로 독립적으로 개발해 각각 다른 서버에 띄우기로 결정하였다.
  • 목표는 현업에서 많이 쓰는 AWS를 두 쪽에 다 사용하기로.

 

 

2. IA와 흐름도 기반, API 네이밍과 깃 규칙에 대해 논의 

  • SH님께서 만들어주신 IA와 흐름도를 보며, API 네이밍을 다같이 짜봤다.

IA 일부분 (SH님 리스펙트..)
넘 예쁜 순서도..!

 

  • API는 RESTful하게 짜보려 했다.
    • URI에 API가 다루는 리소스를 나타내고, 해당 URI에 다른 HTTP Method Request를 보내면서 C/R/U/D 구현
    • 예를 들어, /api/cat에 대해 고양이 정보 생성은 POST (Create), 고양이 정보 읽기는 GET (Read), 고양이 정보 수정은 PATCH (Update), 고양이 정보 삭제는 DELETE (Delete)의 HTTP Method를 이용해 해낼 것이다.
    • 이 이상의 RESTful설명은 이 블로그에 잘 정리되어 있었다 - 

www.chidoo.me/index.php/2016/06/03/what-is-restful/ㅌ

 

도대체 뭐가 RESTful 이라는건가?

요즘에 웹에서 API 기능을 개발한다고 하면 RESTful 이라는 단어를 많이 듣게 된다. 특히 “Single Page WebApp(웹앱)”이 웹 기능을 개발하는 주류 방법이 되면서 더욱 자주 귀에 들린다.  여기에서 그

www.chidoo.me

  • 깃허브 Repository에서 master와 별개로 develop 브랜치를 만들어, develop에 모든 커밋을 하도록 했다.
  • 더 자잘한 branch를 만들어 하는 경우도 있겠지만, 일단 무에서 유를 만들어내는 구현에 목적을 두므로, 하나의 branch를 사용하기로 결정
  • 추후에 다른 기능들을 추가할 때 feature같은 branch를 만들어 사용하는 것도 고려
  • master에는 구현이 모두 끝난 후 merge해주기로 결정!
    • master에 머지하기 전까지는 잔디가 심어지지 않는다..!
    • 탈주를 막기위한 조장님의 선구안(?)

 

3. 깃 이슈 활용!

  • Slack을 통해 활발한 소통이 이루어진다.
  • 이와 더불어 기능 구현에 있어 살펴봐야할 점은 Repository에 Issue 구역을 활용하기로 하였다 (HY님 조언!)

 

ㅎㅎ

댓글