W4 WIL SNS 프로젝트 마무리

Jin Bae·2022년 12월 12일
0

스파르타코딩클럽

목록 보기
5/35

프로젝트 깃허브 링크
프로젝트 SA, API

심플한 SNS를 만들었다..!

시작 단계

  • 와이어프레임 작성
    - 백엔드보다 프론트엔드에 더 유용했지만, 팀원들과 같이 와이어프레임을 만드니까 내가 만드는 기능이 어디에 들어가는지 정확하게 알 수 있었다.
  • API 작성
    - RESTful API를 자세하게 작성해야하는 것은 튜터님들에게 항상 강요 받았지만, 이번 프로젝트를 통해 왜 중요한지 이해했다. API를 작성하니까 페이지 별로 무슨 기능이 들어가는지 쉽게 파악할 수 있었고, 할 일이 끝나면 다음으로 구현할 기능을 한 눈에 볼 수 있고, 받거나 주는 변수를 쉽게 볼 수 있었다.
  • 데이터베이스 설계
    - MySQL 기반으로 데이터베이스를 설계했다
    • 데이터베이스를 팀원들 개인으로 로컬호스트 안에 만들었다보니 데이터베이스를 통일하는 것이 매우 중요했다. 물론 데이터베이스가 바뀌는 부분도 있었지만, 바꾸는게 까다로워서 SQL은 왜 처음부터 설계를 완벽하게 해야하는 점을 깨달았다.
  • 필수 기능 파악
  • 변수 이름 방식 정하기
    - CamelCase 쓰기
  • 업무 부담

기술 스택

  • 프론트엔드: HTML, CSS, Bootstrap
  • 백엔드: Flask (Python), Ajax (Javascript)
  • 협업툴: Github, Sourcetree, Notion, excalidraw
  • DB: MySQL

내가 담당한 기능

  • CRUD
    - 피드 불러오기, 저장하기, 수정하기, 삭제하기 (GET, POST, PUT, DELETE). 미니프로젝트 때 구현해본 기능들이여서 다시 구현하기 수월했다.
  • 외부 API 사용
    - 날씨 API: Open Weather Map API와 브라우저 위치 기능을 사용해서 사용자 IP에 따른 위치의 날씨 (온도, 체감온도, 최저온도, 최고온도,
    - 이미지 불러오기: 랜덤으로 생성되는 르탄이 URL을 가져와서 프로필 사진으로 쓰게 됐다. URL를 byte 객체로 바꿔서 MySQL에 blob 형태로 저장하고, 불러올 때는 byte를 Base64로 변환해서 img src로 썼다.

다른 멤버가 구현해서 조금 더 공부해볼만한 기능들

  • Pagination
  • 로그인 세션
  • 비밀번호 암호화

0개의 댓글