C++

  El C++ es, si no el mejor, el lenguaje de programación más extendido.
El complemento ideal para esta página: programación orientada a objetos por mí mismo: Javi Tobal.

Contenido:

  • Bibliografía para aprender y dominar el C++
  • Revistas y grupos de discusión en Internet dedicados al C++
  • Las mejores herramientas del programador
  • Referencias imprescindibles cuando se trata de programación en Windows
  • Libros para aprender y dominar el C++

    Estos son los libros que yo, personalmente, recomiendo. No son los únicos pero le aseguro que éstos marcan un camino que parten desde la más absoluta ignorancia hasta un nivel que se puede calificar de experto. Si desea dedicarse a esto del C++, no olvide completar su formación continua con revistas, seguimiento crítico de los grupos de discusión de Internet dedicados al tema y, sobre todo, la práctica diaria.
    Todos los libros de C++ de mi bibliografía


    Primeros pasos

    Vd. no sabe nada de C++, o sólo sabe lo que enseñaron en un curso de 15 horas ;-) en una academia desconocida, o aprobó la asignatura en la universidad enviando un jamón de Teruel al catedrático correspondiente (que, curiosamente, enseñaba COBOL el curso anterior). Sabe a lo que me refiero. Si no sabe nada de C++ o no se fia de lo que sabe estos libros le pueden ayudar.

    A C++ Primer, de Stanley Lippman
    El mejor libro para aprender C++. Este libro no sólo enseña C++, también muestra como utilizar el lenguaje para realizar diseños robustos. Cuando se haya leído este libro de cabo a rabo, le servirá como una magnífica guía de referencia. Después de haber leído y asimilado este libro puede pasar a la fase siguiente.

    The C++ programming language, de Bjarne Stroustrup
    El creador del C++ describe su lenguaje. No es un mejor libro de iniciación que el de Lippman, aunque tiene una ventaja que para alguno puede resultar definitiva: existe una edición en español.


    Ya conoce el C++ ¿y ahora?

    Un lenguaje tan rico en expresividad y con un gran abanico de registros (o idiomas, o patrones, o ... lo que sea) necesita para ser dominado algo más que conocer su sintaxis. Estos libros le ayudarán, junto a la práctica, a dominar el lenguaje.

    The annotated C++ Reference Manual, de Bjarne Stroustrup
    No sólo es un manual de referencia. Stroustrup y M. Ellis explican los mecanismos internos del lenguaje. Adquiera este libro cuanto antes y recurra a él ante cualquier duda. Este libro sienta cátedra por encima del manual del compilador, artículos de dudosa procedencia o ayudas en línea del entorno de desarrollo.

    Effective C++, de Scott Meyers
    50 reglas de programación en C++. Explicaciones y ejemplos para que su código brille por encima del nivel que tenía antes de haber leído este libro. La continuación More Effective C++ sigue en la línea: compre ambos.

    C++, Programming Style, de Tom Cargill
    Este libro le enseñará a diferenciar el buen C++ del C++ malo. Con visión crítica, Cargill analiza fragmentos de código en C++ publicados y advierte al lector sobre los fallos más comunes.


    ¿quiere ser un verdadero experto?

    Lleva un año (por lo menos) consumido con los libros anteriores, se dedica al C++ profesionalmente, se enfrenta a grandes proyectos en C++, quiere escribir en una revista de programación sobre C++, las discusiones de comp.lang.c++ le parecen triviales... le falta un empujoncito para autocalificarse un experto en C++. Estos son los libros que le faltan por leer.

    Advanced C++, Programming styles and idioms, de James O. Coplien
    Coplien trabaja en AT&T y desentraña en este libro los mecanismos que permiten hacer al C++ funcionar de maneras diferentes, como nunca se había Vd. que podría hacerlo. Los "idiomas" de Coplien demuestran que la capacidad expresiva del lenguaje le permite adaptarse a cualquier necesidad. Un libro avanzado que sirve para que el lector adquiera las armas necesarias para enfrentarse a cualquier situación desesperada con la única ayuda de su compilador de C++ preferido.

    Design patterns: Elements of reusable object-oriented software, de Gamma y compañía
    Y, por último, la teoría de patrones aplicada al desarrollo de software orientado a objetos. Este libro es de un valor indiscutible aunque es posible que el lector prefiera disponer de él lo antes posible dada la evidente facilidad para llevar a la práctica los patrones que se discuten en el mismo.



    Revistas y grupos de discusión sobre C++

    Como siempre, y el C++ no es una excepción, sin moverse de la silla se puede acceder a un montón de información interesante:

    C/C++ users journal
    Una buena revista sobre C/C++. La calidad suele ser desigual como ocurre siempre que se vive, mayormente, de colaboraciones. También puede comprarla o subscribirse a ella.

    Dr. Dobb's
    Una revista clásica de programación. Ultimamente parece que ha bajado un poco el nivel pero siempre es un punto de referncia, aunque sea sólo por la publicidad ;-)

    comp.lang.c++
    El grupo de discusión de C++ resulta a veces apabullante. Con una media de 200 mensajes al día (si se dispone de un servidor de news que recoja los grupos extranjeros en su totalidad), resulta realmente difícil seguir todas las discusiones que en él se producen. Es, sin embargo, una referencia obligada.

    es.comp.lenguajes.c++
    El grupo de discusión de C++ es español resulta mucho más "seguible" que su correspondiente internacional. Suele ofrecer de vez en cuando mensajes interesantes. Además es un buen punto de reunión para los profesionales del C++ del país.

    comp.std.c++
    Discusiones sobre los últimos coletazos que le quedan al C++ antes de cerrar el estándar. A veces surgen temas casi metafísicos. Curioso y fácil de seguir porque es moderado y no tiene mucho movimiento.



    Las mejores herramientas del programador

    En el trabajo diario hay siempre un par de herramientas que nos hacen la vida más sencilla. Aquí están mis preferidas:

    Bounds Checker de NuMega
    Para todas las versiones de MS-Windows. Una utilísima herramienta de la que no podrá prescindir.

    SoftIce de Numega
    La misma empresa repite con un depurador que llega hasta los más recónditos lugares de la arquitectura de MS-Windows.

    GreatCircle de Geodesic
    Una librería que se encargará de gestionar la memoria por Vd. El recolector de basura de Smalltalk o LISP disponible por fin para C++.

    Tools.h++ de RogueWave
    La mejor librería de clases disponible en el mercado ya incorpora la Standard Template Library. Imprescindible. De hecho, cualquier producto de RogueWave es recomendable.

    SourceSafe de Microsoft
    Para el desarrollo en equipo. Por fin podrá tener perfectamente organizadas y reunidas todas las versiones de código fuente. Si se siguen las reglas nunca volverá a perder ni una línea de código.



    Programación en Windows

    Si programa para Windows le interesarán las siguientes referencias:

    Todos los libros sobre programación Windows de mi bibliografía


    Programming Windows 95 de Charles Petzold
    No trata de C++ pero así es mejor. El autor pone al descubierto el API de Windows: no esconde nada.

    Windows 95 al descubierto de Andrew Schulman
    Lo que no cuenta Microsoft de Windows 95 y al programador le gustaría conocer.




    Autor: Javi Tobal
    Página personal: http://www.arrakis.es/~tobal/
    Última actualización: Domingo, lunes 30 de agosto de 1999
    (Los comentarios son bien recibidos)