이미 소장하고 있다면 판매해 보세요.
|
Chapter 1 기초
1. 모듈화란 왜 모듈화를 하는가 만드는 방법은 2. 함수 포인터(Delegate) 3. 윈도우즈(Windows)형의 사용 왜 윈도우즈(Windows)형을 사용하는가 사용 권장 함수 TCHAR의 사용 4. 클래스와 상속 상속이란 virtual의 쓰임 5. 템플릿(Template) 6. 연산자 오버로딩(Operator Overloading) 7. 서버 프로그램의 생각 방식 메모리 관리의 비교 TYPE에 대한 집착 형 변환의 방법 const의 생활화 8. 스레드(Thread) 9. 파이버(Fiber) 10. Critical Section(임계 구역) 11. 마무리 Chapter 2 기초 라이브러리 제작 1. Stream 클래스 2. Registry 클래스 3. IniFile 클래스 4. CircularQueue 클래스 5. Log 클래스 6. 마무리 Chapter 3 조금 더 힘든 라이브러리 제작 1. MemoryPool 클래스 메모리 관리 각각의 메모리 관리 기법의 설명 코드 분석 예제 2. Crypt 클래스 간단한 암호화 코드 분석 예제 3. Service 클래스 서비스란 사용 API 설명 코드 분석 예제 4. MiniDump 클래스 Handled exception와 UnHandled exception MiniDump 사용 API 분석 설명 코드 분석 예제 5. MemoryLeak 클래스 코드 분석 예제 6. ThreadSync 클래스 코드 분석 7. Random 클래스 8. 마무리 Chapter 4 네트워크 베이스 제작 1. Network 클래스 코드 분석 TCP 코드 분석 UDP 코드 분석 예제 2. PacketSession 클래스 TCP 코드 분석 UDP 코드 분석 3. EventSelect 클래스 코드 분석 4. Iocp 클래스 코드 분석 5. 마무리 Chapter 5 네트워크 모듈 적용 예제 1. TCP Iocp 예제 코드 분석 마무리 2. UDP Iocp 예제 3. CClientSession 예제 코드 분석 마무리 Chapter 6 유용한 모듈 제작 1. Packet Generator 제작 문법 처리 프로그램 분석 사용 방법 마무리 2. Performance Monitor 제작 성능 모니터 성능 모니터 레지스트리 구조 성능 모니터 DLL 구조 코드 분석 사용 방법 마무리 Chapter 7 실제 클라이언트/서버에 적용 1. 코드 정리 2. 서버 기본 제작 ServerIocp 클래스 기본 ConnectedSession 클래스 기본 ConnectedSessionManager 클래스 기본 ServerIocp 클래스 추가 Server.cpp 추가 KeepAlive의 추가 마무리 3. 클라이언트 기본 제작 TestClientSession 클래스 기본 main 기본 마무리 4. 프로토콜 정의 5. 프로토콜 처리 서버 프로토콜 처리 클라이언트 추가 사항 6. 기능 동작 확인 7. 마무리 Chapter 8 UDP Hole Punching 1. NAT 종류 Full Cone NAT Restricted Cone NAT Port Restricted Cone NAT Symmetric NAT 2. UDP Hole Punching이란 Chapter 9 실제 게임 서버 예제 1. 프로토콜 분석 2. Character 클래스 설명 3. ConnectedUser 클래스 설명 4. ConnectedUserManager 클래스 설명 5. Room 클래스 설명 6. RoomManager 클래스 설명 7. GameIocp 클래스 설명 8. GameUDPIocp 클래스 설명 9. 로비 프로토콜 처리 10. 게임 프로토콜 처리 11. 마무리 Appendix 서버 설계 예제 서버 구조도 분석 |
|
중학교 입학선물로 아버지가 XT 컴퓨터를 사주신지 16년이 넘었습니다. 그 당시 게임, 워드프로세스의 전유물이던 컴퓨터는 이제 우리 생활에서 없어서는 안 될 필수 가전제품으로 자리 잡았습니다. 어린 시절 공상 과학 만화에서 보던 컴퓨터에서 음식을 주문하고, 쇼핑을 즐기는 것이 현실이 되었습니다. 물론, 아직까지 자동차는 하늘을 날지 못합니다. 하지만 컴퓨터 기술은 불과 16년 동안 놀라울 정도로 발전했습니다. 처음 KB도 굉장히 큰 용량이었지만 이제는 TB도 별로 크게 느껴지지 않을 정도로 사람들의 인식도 변했습니다. 앞으로도 이 컴퓨터 기술은 놀라운 속도로 발전할 것입니다. 이렇게 발전하는 컴퓨터 기술 중 이 책에서는 역사가 가장 깊다고 할 수 있는 게임 프로그래밍에 대해서 다룰 것입니다. 필자가 처음 게임을 접한 것은 중학교 때였습니다. 그 당시 게임을 하는 것 자체가 즐거워 부모님이 주무시는 시간에 몰래 혼자 일어나 게임을 즐기기도 했습니다. 이러한 생활은 고등학교에 접어들어 나도 한 번 게임을 만들어보고 싶다는 생각으로 변했습니다. 결과적으로 대학교를 진학할 때 점수에 따른 과지원이 아닌 전산과가 아니면 가지 않겠다는 고집에 부모님도 포기를 하셨었습니다. 대학을 졸업한 후 게임 관련 업계로의 취업, 그리고 현재까지 열심히 달려왔습니다. 물론 중간에 대학원 진학, 결혼 등의 큰 사건들도 있었지만 지금까지도 변하지 않는 생각은 내가 생각하고 있는 게임을 만들고 싶다는 것입니다. 이 책을 저와 같은 게임 개발의 열정을 가지고 계신 분들이 읽고 많은 도움을 받았으면 합니다.
이 책에서는 온라인 게임 서버를 만들기 위한 기초부터 실전까지의 내용을 다루고 있습니다. 처음 C/C++의 기초부터 서버 제작에 필요한 기초 클래스들과 통신 클래스들을 다루고, 그들을 이용해서 프로토타입이지만 게임 서버를 제작하는 내용을 다루고 있습니다. C/C++ 기초에서는 상속, overloading 등의 개념을 설명하고 기초 클래스는 로그, 메모리 관련 클래스, 스레드 관련 클래스들을 설명하고 있습니다. 또 통신 클래스에서는 서버 프로그래밍에서 필수적인 winsock에 대한 설명과 Iocp에 대한 설명을 하게 됩니다. 이렇게 만든 라이브러리와 클래스들을 이용해 최종적으로 게임 서버를 제작하게 됩니다. 이 외에도 성능 모니터, 패킷 관리틀, MiniDump, UDP Hole punching에 대한 내용도 다루고 있습니다. 이 내용들은 타 서적에서는 보기 힘든 내용들이라 꼭 좋은 참고가 되었으면 합니다. 최종적인 게임 서버는 피구게임 서버를 제작하게 되는데, 제작된 서버의 결과는 서비스 중인 쏘구 피구(http://xogupigu.pmang.com)에서 보실 수 있을 겁니다. --- 저자의 말 |