개발자로 취업한지 얼마 안됐을때 친구들이 가끔 뭐하냐고 물어본적이 있었다. (지금은 아님)
나 : "나 게임 서버 프로그래밍해~"
친구들 : "그게 뭔데??"
그럴때마다 친구들한테 최대한 쉽게 설명하면서
나 : 너가 게임을 시작할때 로그인하지?? 그때 뺑뺑이 돌고 로그인 처리하지?? 그리고 너가 게임에서 획득하는 아이템같은거 저장하고 데이터 관리도 해주고 친구랑 연결도 해주고 그런거야"
대부분의 친구들 : "아 그래 신기한거하네"
or
특이 케이스 친구 : " 그럼 게임 화면은?? 모바일 다운로드 그런거는?? "
나 : 그런거는 클라이언트 프로그래머가 하는건데 너가 하는 게임의 캐릭터 움직이기, 전투 등등 화면상 보이는걸 다 처리해
라며 설명해준적있었다.
아마 게임 잘 모르는 친구들한테는 이 설명이 쉬운 설명이었을꺼같은데
이제는 개발자 라는 직업이 많이 알려지고, 놀리는 밈도 잔뜩 나오면서 좀 더 설명해도 괜찮을꺼같아
이 포스팅을 적어본다.
◈ 개발자 체크셔츠 밈
자 그래서 게임 클라이언트 개발자와 게임 서버 개발자의 차이가 뭘까??
게임 클라이언트 프로그래머
: 사용자가 다운받아 컴퓨터, 모바일 기타 장비등등에 설치하는 프로그램을 개발한다.
: 보통 이걸 게임의 프론트엔드 라고 부르기도 한다.
: 개발 환경에 따라 다르지만 C++, C#, Unity, Unreal Engine등 다양한 플랫폼과 언어를 사용하여 개발하고
물리엔진, 그래픽스 등등의 전문 지식이 필요하다.
게임 서버 프로그래머
: 사용자와 사용자 끼리의 네트워크 연결 및 사용자 데이터 저장 처리등등을 개발 한다.
: 보통 이걸 게임의 백엔드 라고 부르기도 한다.
: 개발 환경에 따라 다르지만 C++, C#, java, pyhton, 등등 다양한 언어로 개발 하며, 네트워크 프로그래밍과 데이터베이스에 대한 지식 보안등등 여러 전문 지식이 필요하다.
보통 온라인게임 개발 회사라면 이 둘의 협력하여 하나의 게임을 출시한다.
(물론 다른 직군도 많지만 여기서는 게임 클라/ 서버만 놓고 이야기합니다.)
결론
- 하나의 게임을 만들기 위해 클라이언트 개발자, 서버개발자의 협력이 필요하며 둘 다 각자의 자리에 있기 위한 전문지식 공부를 꾸준히 해야한다.
- 프로그래머가 되기 위해 공통적으로 알아야할 부분도 있지만 전문성을 위해 각자 직업군에 맞는 공부가 더 필요하다.
추가
- 다음 포스팅에서는 서버개발자가 되기위해 어떤 공부가 필요한지 로드맵을 그려오겠습니다..
사진 속 이미지 출처
'프로그래밍' 카테고리의 다른 글
[AWS] RDS - Single-AZ, Multi-AZ (0) | 2024.07.03 |
---|---|
서버 모니터링툴 구축 (0) | 2024.06.07 |
bash scripts option 정리 (0) | 2023.05.17 |
포트 사용 프로그램 추적 (0) | 2023.03.21 |
[알고리즘] 데이터 구조 (0) | 2018.09.30 |
댓글