A modo de comentario a un artículo sobre la excepcional belleza de Doom 3 código fuente , Carmack respondió a sí mismo con un poco de alimento para el pensamiento adicional sobre C + + y C.
De alguna manera, sigo pensando que el Quake 3 código es más limpio, como una evolución final de mi estilo C, en lugar de la primera iteración de mi C + estilo +, pero puede ser un factor más de la cuenta la línea más pequeña total, o la hecho de que no he visto muy de cerca en una década. Yo creo que "bueno C + +" es mejor que "C bueno" desde un punto de lectura, todas las cosas en igualdad de condiciones.
En cierto modo me serpenteaba en C + + con Doom 3 - Yo era un programador de C con experiencia con el fondo de la programación orientada a objetos de NeXT Objective-C, por lo que empecé a escribir C + + sin un estudio adecuado del uso de e idioma. En retrospectiva, estoy muy de desear que había leído Effective C + + y algún otro material. Un par de los otros programadores tenían antes de C + + experiencia, pero la mayoría siguió las opciones de estilo que me propuse.
Yo desconfiaba de plantillas durante muchos años, y todavía los utilizan con moderación, pero finalmente decidí que me gustaba más inflexible que no me agradó código extraño en las cabeceras. El debate sobre STL está todavía en curso en id, y se pone un poco alegre. Antes, cuando Doom 3 se inició con STL era casi seguro que no una buena decisión, pero los argumentos razonables se pueden hacer para que hoy, incluso en los juegos.
Yo soy un nazi const completo hoy en día, y reprender cualquier programador que no const cada variable y parámetro que puede ser.
La gran evolución que sigue en marcha para mí es hacia un estilo de programación más funcional, que implica desaprender mucho de los viejos hábitos, y alejándose de algunas direcciones de programación orientada a objetos.