[개발일지] Play Framework 2.2 + Facebook API + Web Socket 으로 게임 개발

 최근 정말 바쁜 하루를 보내고 있지만 그중에서도 지난 금요일부터 계속해서 노력했던 작업이 다름아닌 Play Framework 2.2 를 이용한 게임개발이다. 본래 기존에는 Spring Framework 3.2 를 사용해서 개발하려 하였는데 무엇보다도 Push Server 개발에 에로사항이 발생했고 개인적으로도 “졸업 작품” 인데 이왕이면 자바보다는 한번쯤 해보고 싶던 스칼라 언어를 통해 개발해보자 라는 생각도 강했고, 이번 기회를 통해 스칼라에 대한 공부를 해보자 하는 생각에 무턱대고 데드라인이 3주 가량 남았는데도 무리해서 변경했다.

 확실히 무리는 무리였다. 금요일에 사무실에 가서 하루종일 작업을 해도 도무지 어떤방식으로 개발을 해야할지 감이오지 않았다. 참고로 내가 개발하고자 하는 게임은 배구게임인데 자신의 스마트폰을 등록해서 원격으로 플레이 할 수 있는 게임이다. 



솔직히 말해 게임 자체는 단순하다. Platform 은 Facebook Canvas 이고, 전반적인 게임은 소셜게임과 비슷하다. 방을 만들 수 있고, 방에 들어갈 수 있다. 관전도 가능하고, 친구초대도 가능하다. 


 이 게임을 위해 사용한 기술은 아래와 같다.

  • Play Framework 2.2 (Scala based)

  • Facebook API v2.0

  • jQuery 1.9

  • Web Socket (Akka Scheduler based)

  • Windows 2013 Server R2

  • MySQL DB 5.5

  • Apache 2.2 (with openssl) + Tomcat 7 (with mod_jk)

 보다시피 크게 별건 없지만 이 과정을 설계하기까지가 참으로 많은 시간이 걸렸다. 대략 애로사항을 정리하면(원래 여기다 쓰려 했는데 너무 글이 길어져서..)

 개발하다가 보니깐 PACKT 사에서 Play Framework 2 라는 책이 나왔더라. 내용을 보니 뭐 Java 개발자를 위한 Scala 공부.. 이런건 좋은데 결국 전반적으로 Java 기반으로 설명이 되있다. 왠지 반쪽짜리 같은 느낌.. 그래도 전반적인 부분을 다 다루고 있어서(특히 Web Socket 을 이용한 채팅!) 꽤나 만족이었다. 나중에 다 읽고 적당히 정리해 적어야겠다.


 나름대로 한주간 개발하면서 있었던 애로사항을 정리하긴 했다. 솔직히 말해, 이정도 troubleshooting 을 겪으니 이젠 뭐 크게 서버개발 하면서 어려울 것도 없을 것 같다.. 좌우간 중요한 것은 빠른 개발이다. 그게 플레이를 사용하는 목적이 아니던가.. 어여 졸작을 끝내고, 개인 프로젝트로 넘어가고 싶은 생각이 굴뚝같다..


고고