C++ Profesional: técnicas avanzadas
C++ Profesional: técnicas avanzadas
Resumen:
«C++ Profesional: técnicas avanzadas» es una guía práctica para desarrolladores que ya dominan los fundamentos del lenguaje y quieren pasar al siguiente nivel. El libro no repite la documentación, sino que enseña a pensar como un ingeniero de sistemas de alta carga: gestionar la memoria de manera eficiente, diseñar arquitecturas flexibles y escribir código que funcione de forma rápida y fiable.
Para quién es este libro
- Desarrolladores de C/C++ con al menos 1 año de experiencia que quieran profundizar en plantillas y metaprogramación.
- Ingenieros que pasan de sistemas embebidos al desarrollo de servidores o motores de juegos.
- Programadores que se preparan para entrevistas en grandes empresas de TI (Google, Yandex, JetBrains).
Qué aprenderás
- Metaprogramación con plantillas: SFINAE, type traits, cálculos constexpr, plantillas variádicas y conceptos de C++20.
- Gestión de memoria y RAII: punteros inteligentes, asignadores, pools de objetos y prevención de fugas.
- Multihilo y asincronía: std::thread, std::async, mutexes, estructuras lock-free, modelos de memoria.
- Optimización del rendimiento: perfilado, fallos de caché, semántica de movimiento, RVO y copy elision.
- Diseño: CRTP, políticas, fábricas, idiom pimpl, pruebas unitarias con Google Test.
Características de la edición
- Todos los ejemplos son compatibles con C++17/20 (GCC, Clang, MSVC).
- Problemas reales: desde la optimización de un parser JSON hasta la implementación de una cola thread-safe.
- Comparación con otros lenguajes (Rust, Go) para fomentar el pensamiento crítico.
- Capítulo sobre herramientas: Valgrind, Perf, Sanitizers, CMake.
El libro está estructurado según el principio «del problema a la solución». Cada capítulo comienza con un problema real (cuello de botella de rendimiento, dificultad de mantenimiento del código) y luego se analiza la técnica que lo resuelve. Al final de los capítulos hay ejercicios para el trabajo independiente.
«C++ Profesional» no es un manual de referencia, sino un navegador por temas complejos. Después de leerlo, podrás leer código de Boost, Qt y Unreal Engine sin miedo, diseñar bibliotecas desde cero y superar con confianza las entrevistas técnicas.
Recommendations
Algoritmos y estructuras de datos en TypeScript
JavaScript (Node.js) para Data Science: Análisis de datos y aprendizaje automático en el servidor
Aprendiendo patrones de diseño JavaScript
Creación de aplicaciones web progresivas
Go Programming Language Phrasebook
Swift 4. Programación orientada a protocolos