OP.GG 클론하기 - 롤 전적 검색 사이트 만들기 1

2020. 9. 14. 22:47클론을 해보자

첫 번째 클론을 해볼 사이트는 OP.GG 입니다.

OP.GG의 경우, 월간 방문자 수가 4,500만 명에 달하며 Riot Games와 PUBG Corp과 같은 글로벌 게임사들과 긴밀한 협력 관계를 유지하며 서비스를 제공하고 있습니다.

op.gg

op.gg은 소환사명을 검색하면 해당 소환사의 전적과 인게임 정보 티어 그래프 등을 보여주는 기능을 제공합니다.

소환사의 전적과 현재 티어 인게임 정보 등을 제공함

op.gg를 완벽하게 클로닝하는 것은 매우 복잡한 작업이며 오랜 시간이 소요됩니다.

따라서 간단한 op.gg 즉 simple.gg를 만들어보려고 합니다.

우리가 클로닝한 사이트 simple.gg에서 제공하는 기능은 다음과 같습니다.

 

  • 소환사의 현재 티어를 보여 줌
  • 소환사의 최근 10게임 승률을 보여 줌.
  • 소환사가 현재 게임을 진행 중인지 알려 줌.

고작 기능이 3개라서 실망하셨을 수도 있지만, 클로닝을 하다보면 기능 3개를 만들기 위해 매우 귀찮은 작업들의 반복을 해야한다는 것을 알 수 있으실 겁니다.

 

우리가 사이트를 클로닝하기 위해 사용할 프레임워크 및 라이브러리, 데이터베이스는 다음과 같습니다.

  • Django Framework 2.0
  • React js
  • Postgresql

Django는 백엔드를 파이썬으로 쉽게 구성할 수 있는 무료 오픈소스 웹 애플리케이션 프레임워크입니다. 

웹 서버에 만약 url로 요청에 오면 장고로 전달되고, urlresolver는 url의 패턴을 대조하여 함수(view)에 넘겨줍니다.

view는 실질적인 기능들을 수행합니다. 데이터베이스로 부터 정보를 가져와서 원하는 값을 생성하여 그 답장을 웹 브라우저에 보냅니다. 

 

React는 페이스북에서 제공하는 자바스크립트 프론트엔드 라이버르리입니다. React는 컴포넌트 기반으로, 사용자와 상호작용할수 있는 UI를 쉽게 만들 수 있습니다. 또한 React를 사용하면 브라우저를 새로고침하지 않아도 현재 페이지의 컨텐츠를 빠르게 변경할 수 있다는 장점을 가지고 있습니다.

 

PostgreSQL은 객체-관계형 데이터베이스 관리 시스템(ORDBMS) 중 하나입니다. PostgreSQL을 특별히 채택한 이유는 Django와 연계하기 매우 쉽기 때문입니다. 데이터베이스에 대한 큰 지식이 없어도 Django Framework를 사용한다면 쉽게 SQL문과 같은 함수를 만들 수 있습니다.

 

필자의 운영체제 환경은 Window 10입니다. 블로그를 참고하면서 OP.GG를 클로닝 하는 분들 중 에러가 나는 분이 있다면, 댓글을 남겨주신다면 도움을 최대한 드리도록 하겠습니다. 다음 글에서 Django 설치하는 부분부터 시작하도록 하겠습니다.