Standar de codigo
Por: Flores Escandón Severiano
14/08/2010 sevenmx Huesitos
Objeto, audiencia y responsabilidad
Las normas de codificación tienen por objeto el constituir la base de referencia de los procesos de inspección de código. Se pretende adoptar las inspecciones de código a título experimental dentro del proyecto NovaMedia, con objeto de prevenir errores y reducir el coste de prueba de los productos.
La audiencia destinataria de este documento lo compone esencialmente el equipo de desarrollo del proyecto (en su calidad de autores de código) y el jefe de proyecto (en calidad de revisor).
La responsabilidad de mantener actualizada la documentación de normas de codificación recaerá en el jefe de proyecto en tanto se …ver más…
NOTAEXAMEN NotaAlumno = APROBADO;
2. CLASES
Norma 2.1 Miembros públicos
Los datos miembros de una clase deben ser privados, ni públicos ni protegidos.
Motivo
El declarar los datos miembros como públicos o protegidos derrota el encapsulamiento de datos que persigue el C++. Los miembros de una clase son privados en tanto no haya alguna declaración que indique lo contrario.
Norma 2.5 Instancias
Cuando se crea un objeto instancia de una clase con parámetros, debe codificarse como una llamada al constructor con dichos parámetros.
Motivo
El uso de la asignación podría dar lugar al uso de una copia adicional del constructor.
Ejemplo
// siendo something una clase, something someobj2 = 3;
// podría llamar: something::something(int) *y*
// something::something(const something&)
// debe usarse something someobj1(3);
// que sólo llama: something::something(int)
Es la norma que define el padre de la criatura "When you define a class... [a] Don't use global data. [b] Don't use global (nonmember) functions. [c] Don't use public data members." Cuando definas una clase... [a] No utilice datos globales. [b] No utilice funciones (no miembros) globales. [c] No utilice datos miembros públicos.
Motivo
Extraído de "The C++ Programming Language, Bjarne Stroustrup, 1991, Addison-Wesley". El C++ no impide hacer ninguna de estas cosas, pero si alguien debe conocer los inconvenientes de saltarse