* * - El trabajo en la clase primeros diseños antes de decidir sobre la secuencia exacta de las operaciones. Muchos programadores se creen como hacer programación orientada a objetos, pero en realidad de programación, uso estructurado con algunos adornos externos orientados a objetos. Idealmente, uno primero debe seleccionar un conjunto de objetos de software que proporcionan una abstracción lógica del software, a continuación, trabajar en la secuencia de operaciones. (Esto no es una regla absoluta, sin embargo, como el proceso de desarrollo de esta secuencia a menudo revela las formas en que puede ser el diseño de objetos refinados.)
* * - Piense en términos de patrones de diseño. Los patrones de diseño permite que alguien se basan en años de experiencia en la resolución de problemas dentro de la comunidad informática. En vez de reinventar la rueda, por qué no una selección de la estantería?
* * -Utilice los objetos y las funciones const const siempre que sea posible. Si usted sabe que uno nunca objetos de datos se supone que debe ser modificado, a continuación, declarar el objeto que se const. Esto evitará que youor peor, un colega de la nave - a partir de la modificación accidental su estado más adelante. Por supuesto, también hay que declarar las funciones miembro const adecuadas para ser lo más bien, de hacer cumplir esta regla.
* * -Evite el uso público obtener y establecer las funciones miembro. Getters y setters no son intrínsecamente malos, sin embargo, a menudo son un signo de abstracción de software pobres. Obtener y establecer las funciones implícitamente obligar al usuario a pensar en términos de los objetos de datos internos (es decir, lo que estas funciones están recibiendo o configuración), y detalles tales ideal sería que se oculta al usuario los objetos. Getters y setters tienen su lugar, pero por favor use con moderación.
* * - Evitar la doble indirección. C programadores se ven obligados a trabajar con punteros, por lo que están acostumbrados a tener punteros a punteros a lo largo de su código. Esto a menudo puede conducir a código confuso, debido a los problemas y demasiado familiar de referencia NULL y aritmética de punteros. Por el contrario, los programadores de C + + no está bajo ninguna de tales restricciones, debido a la compatibilidad integrada para las referencias variables en C + +, es decir, uno siempre puede utilizar las referencias a punteros en su lugar, lo que hace que el código mucho más fácil de entender. (Sugerencia: Si un programador de C + + utiliza indirecto doble, thatsa clara señal de que hes sigue pensando como un hachazo C sin experiencia!)