2013년에는 나에게 어떤 일들이 있을까?
해야 하는것도 많아졌고 하고 싶은 것도 많아졌다.
회화 전까지 영어공부라는 끝없는 난제.
그리고 새로 욕심이 생긴 기술사 자격증
그리고 종종 생각해왔던건데 게임개발과 개인 서버엔진
요즘은 COCOS2D-X 게임 개발 환경만 구축해놓은 후에 서버엔진을 만들기에 여념이 없다.
그동안에 경험을 바탕으로 java로 서버를 구축하고 있다.
환경설정에 따라서
tcp, http 프로토콜 지원
json, http, byte포맷 지원
추가적으로 모바일 환경을 위한 apns와 gcm, c2dm 지원. (가능하다면 웹 소켓까지)
C/C++, Java 클라이언트 모듈 개발까지가 현재 생각한 목표이다.
서버 이름은 StarSign (별자리)로 정했고 각 버전마다 사수자리, 전갈자리 등의 이름을 줄 생각이다.
오픈소스로 내보낸다면 더 멋있겠지만 그런 경험이 적어서 어떻게 해야될지 모르겠다.
일단 서버 개발과 게임개발해서 네트워크 게임 만드는 것이 목표.
PS.
여담이지만, 요즘 서버 개발시에 언어에 이슈다.
나도 몇번이나 Java 서버가 주는 이점에 대해서 생각을 해보았지만 C++서버보다 좋은 점이 없었다.
클라이언트도 마찬가지지만 서버의 성능을 생각할 때 최대로 끌어낼 수 있는건 역시 C++서버이다.
그런데 요즘에는 Java서버를 많이 쓰는 추세이다. Java개발자의 수가 늘어난 것도 이유중 하나겠지만 그게 다는 아닐것이다.
그렇다면 과연 Java서버가 주는 메리트는 무엇일까?
바로 확장용이성과 개발속도이다. 수많은 자바 라이브러리와 프레임워크, 숙련된 C++개발자가 코딩할 것을 Java에서 간단히 고급기술을 흉내낼 수 있다. 초보 java 개발자라 할지라도 말이다.
물론 Java 개발자도 위로 갈수록 힘들다. JVM에 대해서 더 이해해야 되고 Hotspot이나 JIT를 이용하여 성능을 더 끌어낼 수 있어야 하고 병행 프로그래밍 시의 스레드 설계 기법에 대해서 공부해야만 한다. C++개발자가 Effective C++, More Effective C++을 보듯이 Effective Java를 공부하고 Java Concurrency(Multithreading) - Tutorial등을 보면서 공부를 계속해야한다. 왜냐하면 성능을 극대화하기 위해서 그리고 OOM(Out of memory)나 JVM Crash를 dump를 떠서 분석해 낼 수 있어야 하니까.
음 이 주제는 뺴서 다음에 다시 포스팅하면 좋을 것 같다.
참고적으로 C++로 서버를 만드는 이유 중 하나는 성능도 있지만
첫번째로 기존의 C++개발자가 개발하기 용이해서이다.
두번째로 그 C++ 개발자들이 서버 개발시에도 클라이언트 개발시에 사용한 common한 모듈을 그대로 재활용할 수 있기 때문이다.
두서없이 지껄였다. PS가 너무 길어졌다. 끝
Reference
[1] 온라인게임제작자모임 : http://cafe.naver.com/ongameserver
[2] COCOS2D-X 사용자 모임 : http://cafe.naver.com/cocos2dxusers
[3] Java Game 서버 구축하는 이유 ( http://gpgstudy.com/forum/viewtopic.php?t=16727 )
'Etc' 카테고리의 다른 글
새집증후군제거시공 닥터에코 (0) | 2013.10.05 |
---|---|
타임머신이 있다면 언제 어디로 가보겠니 (0) | 2013.09.03 |
집에 관심이 많아진 나이 서른이 된 유부남의 주거 이야기. (0) | 2013.08.30 |
속초 여행 스케줄 (0) | 2013.08.16 |
대학생이 뽑은 최고 대학 '한국기술교육대' (0) | 2013.05.07 |
2013년 목표 (0) | 2013.01.08 |
2013년이 되었다. (1) | 2013.01.01 |
블로그 해킹을 당했을 시 대응사항 (0) | 2012.11.15 |
이익훈 어학원 토익백신 (0) | 2012.07.06 |
비가 오니까. (0) | 2012.07.05 |