요약
C++ 게임 서버에 필요한 기초 개념들을 폭넓게 배울 수 있는 책
처음 배울 때도 좋지만, 아직 개념이 완벽하지 않을 때 정리하기 좋다
다만, 기초개념 위주라 처음 공부한다면 이 책 이후 다른 책을 보거나 제공되는 소스코드를 따라가며 연습할 것
1. 개요
취업 전에는 빠르게 지식을 습득하려고 급하게 읽었었다.
그래서 그랬는지 머릿속에 단편적인 지식들은 들어왔지만, 정확한 내용 이해는 하지 못했다.
그리고 취업 후 블로그를 쓰면서 지식을 쉽게 설명하려고 노력했었고, 그 후 이 책을 다시 보니 너무 친절하게 쓰여진 책이라는걸 알 수 있었다.
2. 구조
내용을 굉장히 쉽게 설명하려고 노력했고, 구성도 잘 짜여있다.
헷갈릴만한 부분에는 예제와 그림들이 들어가 있어 이해하기 쉽도록 도와준다.
네트워크부터 소켓 프로그래밍, DB와 서버 아키텍처까지 게임서버에 필요한 다양한 내용을 알기 쉽게 설명한다.
레이턴시를 줄이는 방법 등 혼자 공부하면 알기 힘든 실무적인 지식까지 학습할 수 있다.
3. 장점
다양한 서버 관련 지식을 배울 수 있다.
멀티스레딩과 네트워크, RDBM와 NoSQL 등 여러 책을 봐야 알 수 있는 지식들을 한 번씩 훑을 수 있다.
사실 말이 한번씩 훑는다지 당장 사용하지 않는다면 일단 이 정도 개념만 알아도 충분하다고 생각한다.
내용도 간단하게 개념 설명만 적혀있는 것이 아니라 이해하기 어려울 것 같은 부분은 예시와 그림을 넣어 이해하기 쉽도록 자세히 설명한다.
구성도 앞부분을 이해하면 뒷부분의 어려운 내용을 자연스럽게 이해할 수 있도록 구성되어 있다.
특히 인상 깊었던 것은 실제 코드가 아니라 슈도코드를 넣어 코드 분석에 크게 신경쓰지 않고 흐름을 읽을 수 있도록 구성한 것이다.
4. 단점
다양한 내용이 들어간 단점도 있다.
사실 네트워크나 DB 등은 조금 다른 주제의 내용이고, 너무 관련 없는 별개의 내용들이 등장하다 보니 서버만을 배우기 위한 목적이었다면 조금 당황스러울 수 있다.
이런 내용들을 다루느라 전반적으로 깊은 내용이나 실용적인 이해보다는 기초 개념 위주로 작성된 것도 아쉽다.
위와 같은 이유로 멀티스레딩이나 소켓 프로그래밍 같은 서버에 대한 내용도 개념적으로만 소개됐다.
차라리 네트워크 모델이나 서버 유형별로 서버를 만들어 작업해 보는 등 실습들이 있었으면 좋겠다는 생각도 들었다.
5. 결론
책을 읽는 목적을 확실히 정하고 읽으면 좋을 것 같다.
책 이름은 '게임서버 프로그래밍 교과서'지만, 프로그래밍 자체는 일부이므로 전반적인 게임서버 개발에 관한 내용을 배운다고 생각하고 읽어야 한다.
처음 배운다면 이 책을 한번 읽고 더 알고 싶은 내용이 있다면 심화 책을 읽는게 제일 좋다고 생각한다.
책의 내용은 흐름정도만 소개하므로 그냥 읽기만 하는게 아니라 깃허브의 소스코드까지 분석하면서 보면 더 좋다.
다만, 특정 내용을 깊이 있게 공부하려는 생각으로 보는 것은 별로 추천하지 않는다.
'책,강의' 카테고리의 다른 글
1. [C#] 헤드 퍼스트 C# (0) | 2025.04.07 |
---|---|
개요 (0) | 2025.04.01 |