[프로젝트] 픽키
업데이트:
픽키
실행 화면
프로젝트 개요
네이버의 데이터를 기반으로 하여 두 검색어를 제시, 그 중 많이 검색된 것을 맞추는 웹 게임과 해당 웹을 사용하는 웹 뷰어 어플리케이션
웹사이트
- 저장소: 깃 허브 리포지토리
- 주소: 픽키(현재는 서버를 운영하지 않아 접속하실 수 없습니다)
- 성과: (2020-02-21 기준) 일반 게임 33,394회 이상, 타임 어택 5,431회 이상 플레이,
트위치 스트리머이자 유튜버인 따효니, 옥냥이(플레이 영상: 유튜브), 공혁준이 플레이1
어플리케이션
- 배포: 플레이 스토어(현재는 서버를 운영하지 않아 이용하실 수 없습니다)
- 성과: (2020-02-21 기준) 88회 이상 설치, 평점 3.667/5.0 (3명 참여)
프로젝트 개발 정보
- 개발 기간: 2018.09.28. ~ 2018.12.11. (유지보수 진행 중)
- 출시 일자: 2018.12.11.
- 개발 인원: 3
- 역할: 전체 설계 및 UI, 로직 구현, 홍보
개발 내용
- 매월 1회 네이버의 검색데이터(검색 트렌드, 검색 광고)를 Rest API로 쿼리하여 실제 사용가능한 데이터로 가공하여 서버에 저장, 클라이언트에서 요청시 제공하는 기능
- Public Domain 이미지를 자동으로 크롤링하는 기능
- 클라이언트-서버 통신간에 일어날 수 있는 XSS, 패킷변조 등에 대한 보안(인증서, 세션, 암호화, 문자열 처리 및 유효값 검증)
- 정규식 엔진 기반의 비속어 필터
- 도메인, DB 스키마, 데이터 통신 인터페이스, FTP 및 HTTPS 서버 설계, 구축 및 관리
- 리더보드 페이지 구현 보조, 유저의 닉네임과 점수를 DB에 저장하는 기능
- 다음 애드핏(현재 카카오 애드핏으로 변경) 적용
- 안드로이드 웹 뷰어 앱 개발
실행 및 개발 환경
웹
Windows 10, Linux Ubuntu 19.04 | |
squarenet.kr(Linux)2 → Google Cloud Platform(Linux Ubuntu 19.04) | |
IE와 윈도우용 Safari를 제외한 웹 브라우저 | |
LAMP Stack(Linux + Apache + MySQL + PHP) | |
PHP, Javascript, CSS, HTML, MySQL | |
Notepad++, VS Code, VI |
앱
Windows 10 | |
Android | |
Android SDK | |
JAVA → Kotlin | |
Android Studio |
개발 후기
이 프로젝트는 학부 과제로 제출한 웹 게임으로, 방공무기 교전통제 프로그램과 애니북 놀이터를 개발하며 배운 노하우를 통해 팀장을 맡아 성공적으로 팀을 이끌 수 있었습니다.
개발을 하게 된 계기는 18년 7~8월, Higher Lower Game을 여러 유튜버와 스트리머들이 플레이 하는 것을 보며, ‘한국어 판이 있었으면 좋겠다’는 언급에 착안, 한국 문화와 한글 검색에 가장 최적화 된 네이버를 기반으로 개발을 결심하고, 2학기 학부 ‘웹 프로젝트’ 강의의 과제로 개발하게 되었습니다.
이 과정에서 팀장은 각자에게 어울리는 분야로 업무를 배분하여 분업화 시키고, 각자 개발하는 모듈끼리 원활하게 소통할 수 있도록 팀 내 표준을 만들고 각자 모듈에 대한 요구와 제약을 설계해야 함을 배웠습니다.
개발 과정 중, 사이트를 공유해 준 학부 친구(경쟁 팀)과 아래에서 언급할 스트리머 플레이 당시, XSS, SQL Injection, 패킷 변조, 자바스크립트 함수 강제 실행 등 다양한 방식으로 공격당했고, 해킹을 시도했던 친구와 인터넷의 도움을 받아 기본적인 해킹 방어 로직을 구현했습니다. 이 때 정말 네트워크 통신과 게임에서 보안이 얼마나 중요한지 깨달았고, 당시에는 귀찮았지만 돌이켜보면 값진 경험을 할 수 있었습니다.
아쉽게도, 완성 약 2주 전 더많이 더적게라는 한국 사이트3가 개설되면서 대부분의 유튜버와 스트리머가 이 사이트를 먼저 플레이 하여 검색 키워드 게임을 선점당했습니다. 하지만 네이버를 데이터의 출처로 삼는다는 차별점이 있었고, 아직 플레이 하지 않은 유튜버들에게 홍보하여 어느정도의 인지도를 확보할 수 있었습니다.
또한, ‘Higher Lower Game’과는 다르게 ‘더많이 더적게’의 경우 수신 데이터를 보면 검색어가 몇 회 검색 되었는가를 모두 알 수 있었는데, 픽키는 이부분을 보완하여 사용자가 키워드를 선택하기 전까지는 검색 횟수를 받아오지 않는 방법을 사용하여 수신 데이터를 이용한 버그 플레이를 방지하였습니다.
성공적으로 완성한 뒤에, 참여한 팀원 모두 A+를 받았고 ‘공혁준’, ‘따효니’, ‘옥냥이’ 등의 유명 유튜버·스트리머들에게 홍보하여 인기를 끌며 일반 게임 2020년 2월 21일 현재까지 4만번 정도 플레이 되어 정말 재미있게 프로젝트를 완료할 수 있었습니다.
1 공혁준과 따효니의 경우 플레이 영상을 유튜브에 업로드 하지 않아 영상이 남아있지 않습니다.
2 스퀘어넷의 서비스 중단으로 인해 서버 이전
3 Higher Lower Game에서 개발한 것이 아닌, 한국 내 다른 팀이 개발한 것으로 추정됩니다.
댓글남기기