El mundo de C++

En carrera programé un par de cosas más o menos serias en C++: un toolkit gráfico para MSDOS y un derivador de funciones matriciales en particular. Yo me creía un buen programador de C++. ¡Pobre iluso! En últimas fechas, desde mi involucramiento en el proyecto de cajas populares de Juan José Salgado, que Raúl Vázquez ha venido desarrollando en C++, mis habilidades en C++ han tenido un resurgimiento y me han colocado en mi real perspectiva: sólo se que no se nada. He (re)descubierto el STL, las excepciones, conjugándolo con mi amor por los patrones de diseño de software.

Para mi suerte, en Aritma, han salido una serie de artículos "The Most Important C++ ... Ever" que me han mostrado un mundo mucho más grande y complejo del que había logrado percibir:

Revisando estas referencias, en el artículo non-book publications hay una liga al famoso documento Programming in C++, Rules and Recommendations. Después de revisarlo quedé descorazonado: mi código no sigue varias de la razonables reglas ahí mencionadas.

Fue en esta epifanía cuando me di cuenta del valor de la propuesta de Python: hacer obligatorias la buenas prácticas. Cuando las buenas prácticas son opcionales, el ciclo de aprendizaje para escribir programas de manera profesional resulta muy grande, en muchas ocasiones jamás se logra.

He decido hacer una lista de verificación sobre el código autogenerado por DAOGen con las reglas que este documento indica:

Las portability recommendations & rules las dejaremos para otro día. Estoy ya fue demasiada información.

Mi gran conclusión en este momento es que C++ no es C. Absolutamente. Son cosas distintas. Entonces, ¡Qué gran estupidez es escribir "Se requieren conocimientos de C/C++"! Recursos Humanos no tiene idea de lo que se necesita.