Uber clone-1(ft. channels & react)

Hyeseong·2023년 4월 30일
0

uber-clone

목록 보기
1/3

들어가기 앞서

실시간 소켓 통신을 통해서 Uber 클론 프로젝트를 구현해 보려 합니다.

탑승자와 운전자 사이에 전송되는 메시지를 기반으로 하는 Uber 또는 Lyft와 같은 차량 공유 앱의 기능 구현이 목적입니다.

탑승자가 출발 위치와 목적지를 선택하면 앱이 주변의 모든 드라이버에게 운행 요청을 브로드캐스트합니다. 드라이버 파트너가 여행을 수락하고 픽업 주소에서 운전자를 만납니다.

모든 운행 상태를 실시간으로 파악하고 추적 할 수 있습니다.

이 과정에서는 WebSockets 및 Django channels가 제공하는 양방향 통신을 사용하여 차량 공유 앱을 프로그래밍하는 방법을 시연합니다. 이후 React로 UI를 만들어 보겠습니다.

과정

Part 1.

테스트 주도 개발을 사용하여 Django 및 Django 채널로 구동되는 서버 측 코드를 작성하고 테스트합니다.

Part 2.

인증, 인가와 함께 클라이언트 측 React 앱을 설정합니다. 또한 Docker를 추가하여 개발 워크플로를 간소화할 것입니다.

Part 3.

마지막으로 React로 앱 UI를 만드는 과정을 살펴보겠습니다.

사용하려는 라이브러리 및 프레임워크

Backend

  • Python (v3.10)
  • Django (v4.1)
  • Django Channels (v4.0)
  • Django REST Framework (v3.14)
  • pytest (v7.2)
  • Redis (v7.0)
  • PostgreSQL (v15.0)
  • Docker Engine (v20.10)
  • Docker Compose (v2.12).

Frontend

  • React (v18.2)

Part 1 이후

  • Django REST Framework로 RESTful API를 생성합니다.
  • JSON 웹 토큰(JWT)을 사용하여 토큰 기반 인증을 구현합니다.
  • Django 채널을 사용하여 서버에서 데이터를 만들고 업데이트합니다.
  • WebSocket을 통해 서버에서 UI로 메시지를 보냅니다.
  • pytest로 asyncio 코루틴을 테스트합니다.
profile
어제보다 오늘 그리고 오늘 보다 내일...

0개의 댓글