2014년는 큰 변화가 있었던 시기이다. 개인적으로는 아빠가 되었고, 프로그래머로서는 처음으로 참여했던 모바일 게임 서버가 정식 서비스를 하였다.

 

 

1. 게임서버 개발

년여름까지는 공통 기술 개발이라는 팀에서 여러 프로젝트에서 사용할 모바일 게임 서버 프레임워크 개발 및 관련 기술 정리&공유 하는 일을 담당.

이 일은 2013년 여름부터 시작해서 올해 여름까지.

여기서 만든 기술로 2개의 모바일 게임을 서비스. 둘 중 하나는 꽤 괜찮은 성적을 내서 처음 사용한 기술에 대한 경험을 얻게 되었음.

 

WCF 기반의 모바일 게임 서버 프레임워크

닷넷 기반의 TCP 채팅 서버

서버 관리 시스템(서버 애플리케이션 및 컴퓨터 상태 조사, 서버 애플리케이션 원격 조작, 서버 애플리케이션 원격 패치).

T4 템플릿으로 WCF 라이브러리 코드 생성

새로운 게임 서버 개발에 직접 참여

 

주로 사용된 기술은 C#, WCF, MongoDB(메인 DB), Redis, ASP.NET MVC, SignalR

 

 

2. 기술 공부

2003년 게임 서버 프로그래머가 된 후 줄곧 메인 프로그래밍 언어는 C++ 이었다. 그러나 2014년에는 메인 프로그래밍 언어는 C#이 되었다. 회사 일에서 100%로 가까이 C#만 사용하였다. C++은 공부 목적으로 사용하였다.

 

새로 공부한 프로그램 언어

Scala

많은 사람들이 사용 중인 Java 보다는 새로운 것을 배우고 싶은 생각으로 선택.

이전에 동적 언어들을 배워서 그런지 크게 낯설지는 않았음.

OOP 언어에서 함수 프로그래밍 언어의 맛을 느낄 수 있어서 좋았음.

다양한 기능 제공으로 좋지만 그만큼 복잡한 느낌.

이클립스, 인텔리J 등의 좋은 IDE가 있어서 프로그래밍 하기 좋음.

 

Ruby

이전에 공부했지만 다시 시작.

내가 주로 사용하는 언어가 모두 정적 언어라서 동적 언어 하나 정도는 익히고 싶어서 시작.

비슷한 언어로 파이썬도 있지만 파이썬은 아직도 버전 3이 주류가 아닌 것이 이해 가지 않음.

매주 조금씩 공부하는 도중.

실전에 사용할 기회가 아직 없지만 곧 있을 듯.

 

Go

원래 편견을 가졌던 언어였음. 내가 보기에는 이도 저도 아닌 언어 같았음.

반 농담으로 제대로 까기 위해 공부 시작.

의외로 좋았음. 특히 C 언어의 후계 언어라서 C++ 프로그래머로서 너무 공부하기 편함.

게다가 이 언어의 특징이 간담함 이라서 Scala Ruby처럼 많이 기억할게 없어서 좋았음.

내가 주로 다루는 것이 네트워크, 병렬 프로그래밍, 시스템 프로그래밍인데 Go 언어는 이것들이 주 기능이라서 내가 원하는 것들이 잘 들어가 있음.

작년에 볼 때는 Windows 지원과 IDE 지원이 부실했는데 이번(1.4 버전)에 보니 잘 준비 되어 있음.

현재 C++, C#에 이은 새로운 메인 언어로 가질 예정.

 

 

기타 공부했던(또는 사용 예정인) 기술의 일부

CGSF

.NET(메타 프로그래밍, Owin, MessagePack for CLI, Avro, NLog, 병렬 프로그래밍 기술 정리, 네트워크 프로그래밍 기술 정리, MEF 등)

CMake

Git

fluentd

Sensu

Grape

docker

RabbitMQ

akka(Scala)

Windows Registered I/O (RIO)

Xamarin

balor

Ember.js

Angular.js

저작자 표시
신고
by 흥배 2015.01.11 13:30