
Learn C++ for Game Development
Bruce Sutherland
- Editorial
- Apress
- Año
- 2014
- Páginas
- ~324
- Nivel
- Básico
De qué trata
Manual formativo dedicado a enseñar el lenguaje C++ moderno (estándar C++11) con un enfoque adaptado a las necesidades específicas de la arquitectura de videojuegos. Escrito por Bruce Sutherland, veterano de la industria que trabajó en franquicias de gran envergadura como The Elder Scrolls y Dead Space, está concebido para estudiantes y programadores principiantes que conocen lo básico de la informática o vienen de otros lenguajes (como Java, C# o Python) y desean aprender C++ tal y como se concibe en los estudios profesionales.
El contenido se organiza en cinco módulos técnicos esenciales: programación procedimental (tipos nativos, operadores, arrays, punteros, aritmética de punteros, cadenas clásicas en C y control de flujo); programación orientada a objetos (clases, encapsulamiento, constructores, destructores, herencia y polimorfismo); uso de la biblioteca estándar (STL) con énfasis en `std::vector`, `std::map`, `unordered_map`, `stack`, `queue` y `bitset`; programación genérica mediante plantillas (templates); y técnicas clave de arquitectura como gestión manual de memoria en heap y stack, patrones de diseño clásicos en videojuegos (Singleton, Factory, Observer), persistencia de partidas con File I/O (`fstream`), multihilo con `std::thread` y compilación condicional multiplataforma.
El autor refuerza la teoría mediante proyectos prácticos en consola: un juego inicial de adivinanza numérica y, de forma troncal, una aventura conversacional por texto (Text Adventure) que se va expandiendo y refactorizando a lo largo de los capítulos para integrar salas, inventario con contenedores de la STL, polimorfismo de entidades y guardado en disco. Su mayor cualidad es que contextualiza temas tradicionalmente complejos como los punteros o el ciclo de vida de los objetos dentro del rendimiento que exige un videojuego; no obstante, se circunscribe estrictamente al código en modo texto, dejando fuera APIs gráficas como DirectX u OpenGL y motores comerciales.
- C++11
- Pointers & Memory
- OOP
- STL Containers
- Templates
- Design Patterns
- File I/O
- Multithreading
- Game Architecture
- Console Games
¿Cómo enseña?
Teoría + práctica
- ✗ Sin ejercicios
- ✓ Incluye proyectos
Proyectos
Guessing Game
Juego de adivinanza de números en consola diseñado para asimilar el uso de tipos nativos, operadores, entrada/salida estándar y estructuras condicionales y de bucle.
Text Adventure Game
Aventura conversacional por consola desarrollada progresivamente para aplicar punteros, jerarquías polimórficas de entidades, contenedores STL para salas e inventario, patrones de diseño y persistencia de partidas mediante archivos.

