[Server] 토이프로젝트

resilient

·

2021. 2. 16. 15:27

728x90
반응형

apply.softsquared.com/

 

SOFTSQUARED

단순한 개발 지식만을배워가는 곳이 아닙니다 소프트스퀘어드는 함께 성장합니다. 개발 트레이닝을 통해 개인의 역량이 성장합니다. 성장한 역량은 소프트스퀘어드 내부의 다양한 활동을 통해

test.softsquared.com

클론코딩

 

먼저 2월 4일부터 2월 21일까지 2주동안 인스타그램 클론코딩을 진행하게 되었다.

클라이언트 2명, 서버 2명으로 한팀이 되서 작업을 했다.

클라이언트는 AOS 어플리케이션 개발을 담당했고

서버는 서버 구축, ERD설계 및 데이터 베이스 관리등 백앤드 업무를 맡았다.


DB : AWS RDS , MySQL 8.0.0 

Tool : DataGrip을 사용했다.

Server : AWS EC2 , ubuntu 18.04 

Nginx 1.14.0 

RESTAPI 설계

테스트 도메인 : https://test.steeaady.site

배포 도메인 : https:/product.steeaady.site

 

RDS나 EC2를 사용하는 방법은 아래를 참고하면된다.

2021/01/28 - [라이징 프로그래머 2기] - 라이징프로그래머(Server반) #5주차-RDS적용, JWT를 사용한 API 구현    

 

라이징프로그래머(Server반) #5주차-RDS적용, JWT를 사용한 API 구현

apply.softsquared.com/ SOFTSQUARED 단순한 개발 지식만을배워가는 곳이 아닙니다 소프트스퀘어드는 함께 성장합니다. 개발 트레이닝을 통해 개인의 역량이 성장합니다. 성장한 역량은 소프트스퀘어드

resilient-923.tistory.com

2021/01/06 - [라이징 프로그래머 2기] - 라이징프로그래머(Server반) #2주차-네트워크,포트포워딩,AWS+Nginx+MySQL+Php(2)

 

라이징프로그래머(Server반) #2주차-네트워크,포트포워딩,AWS+Nginx+MySQL+Php(2)

https://apply.softsquared.com/ SOFTSQUARED 단순한 개발 지식만을배워가는 곳이 아닙니다 소프트스퀘어드는 함께 성장합니다. 개발 트레이닝을 통해 개인의 역량이 성장합니다. 성장한 역량은 소프트스퀘

resilient-923.tistory.com

 

클론코딩으로 인스타그램을 똑같이 만드는 건 불가능하다.

그래서 시나리오를 작성하고 그에 맞는 화면구성 및 ERD 설계를 진행했다.

 

회원가입-로그인-피드조회-피드생성- 피드삭제 - 댓글 생성 - 댓글삭제- 팔로우 기능 - 스토리 기능 

 

이부분 까지의 ERD를 구성하였다.

테이블은 생각보다 적었지만 

그만큼 쿼리가 굉장히 복잡한 부분도 있었다. 

이번 클론코딩을 통해 mysql 문법이나, 함수들을 많이 알게 되었다. 

예를 들면 스토리를 추가했을때 생성시간을 테이블에 넣어주고 EVENT_SCHEDULE을 통해 24시간이 지났을때 자동으로 Status 값을 바뀌게 하는 방법이라던가 서브쿼리를 이제야 이해해서 사용 할 수 있게된거 같다.

 

그리고 가장 중요한 명세서...

RESTAPI를 사용하는 과정에서 프론트앤드에 넘기는 API 명세서의 중요성을 새삼느꼈다..

소문자 대문자 하나를 잘못적으면 프론트앤드에서는 아예 파싱이 안되거나 값을 null로 불러오거나 하는 문제점들이 발생하고 이 부분을 인지하지 못해서 서로 8시간넘게 삽질을 해보니

 

API명세는 정말 중요하다는 것을 알았다.

반응형