Exceptional C++
240 páginas
Spanish
PDF
4.5

Exceptional C++

Exceptional C++

Autor:

Año:

Resumen:

Introducción

El libro «Exceptional C++» (1999) de Herb Sutter no es un manual para principiantes, sino una colección de 50 problemas de ingeniería que te harán reflexionar seriamente sobre cómo escribes código en C++. En un mundo donde la fiabilidad del software se valora más que la velocidad de escritura, este libro sigue siendo un referente de comprensión profunda del lenguaje. Sutter no solo da respuestas: enseña a pensar en términos de situaciones excepcionales, gestión de recursos y diseño de interfaces resistentes a errores.

A pesar de que el libro se publicó hace más de 20 años, sus ideas (RAII, garantías de excepciones, punteros inteligentes) se han convertido en la base del C++ moderno (C++11 y posteriores). Si quieres dejar de temer a las excepciones y empezar a escribir código que no «falla» en el momento más inoportuno, este libro es para ti.

De qué trata el libro

«Exceptional C++» está estructurado en formato «pregunta-respuesta» (problema — solución — análisis). Cada capítulo es un aspecto diferente de la programación robusta:

  • Excepciones y seguridad: cómo escribir funciones que no pierdan recursos y dejen los objetos en un estado coherente incluso cuando ocurren errores.
  • RAII (Resource Acquisition Is Initialization): por qué es el modismo principal de C++ y cómo aplicarlo para gestionar memoria, archivos, mutex.
  • Plantillas y programación genérica: detalles de instanciación, especialización parcial, SFINAE.
  • Herencia y polimorfismo: cómo diseñar jerarquías de clases correctamente sin violar el principio de sustitución de Liskov.
  • Gestión de memoria: operadores new/delete, placement new, sobrecarga de operadores.
  • Diseño de interfaces: cómo crear una API que sea difícil de usar incorrectamente.

Para quién es este libro

El libro está dirigido a programadores de C++ con experiencia (al menos 1-2 años de desarrollo activo). Será útil para:

  • Desarrolladores que quieran escribir código de producción fiable.
  • Aquellos que se preparan para entrevistas técnicas (los problemas del libro aparecen a menudo en Google, Microsoft, Yandex).
  • Profesores y mentores que buscan ejemplos para analizar en seminarios.
  • Todos los que quieran entender el «por qué» detrás de los modismos estándar de C++, y no solo el «cómo».

Qué aprenderá el lector

Después de leerlo, podrás:

  • Formular y verificar garantías de excepciones (básica, fuerte, nothrow) para tus funciones.
  • Usar correctamente std::auto_ptr (y sus análogos modernos unique_ptr/shared_ptr) para la gestión automática de recursos.
  • Evitar trampas al sobrecargar operadores (especialmente operator= y operator[]).
  • Diseñar clases que funcionen correctamente en contenedores STL.
  • Entender cuándo y cómo usar mutable, volatile, const_cast sin perjudicar la arquitectura.
  • Escribir funciones plantilla que no exploten al sustituir tipos inadecuados (SFINAE).
  • Implementar el modismo copy-and-swap para una asignación segura.

Puntos fuertes

  • Profundidad y practicidad. Cada problema es una situación real de la experiencia del autor. No encontrarás ejemplos abstractos como «gato-perro».
  • Formato «pregunta-respuesta». Se puede leer desde cualquier capítulo. Ideal para «pausas activas»: 15 minutos por problema.
  • Énfasis en el «por qué». Sutter explica no solo la solución correcta, sino también la motivación: por qué otras opciones son malas, qué compromisos existen.
  • Estilo de redacción. Vivo, con un toque de humor y autocrítica. El libro no se parece a un manual seco.
  • Valor atemporal. Incluso en la era de C++20/23, los principios de RAII y seguridad ante excepciones siguen siendo inmutables. El libro enseña los fundamentos que no pasan de moda.

A quién se lo recomiendo

Recommendations