Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Taller Fundamental de Desarrollo de Software - La Calidad Del Código
Taller Fundamental de Desarrollo de Software - La Calidad Del Código
Qu es el cdigo?
Es el producto de programar
Se escribe en un lenguaje
Plasma instrucciones y algoritmos Debe cumplir una sintaxis, ajustarse a gramticas
predicados, conceptos y nombres, con propiedad Debe ser claro, conciso, coherente y completo No debe prestarse a asunciones ni interpretaciones, no debe incluir ambigedades
La codificacin es un arte?
Es un proceso creativo, lo mismo que la
composicin literaria Requiere un trabajo artesanal, lo mismo que hacer matemticas o escribir un ensayo social El mensaje es importante (el propsito o utilidad), la forma tambin lo es (la claridad del cdigo)
propuestos por ISO, ANSI, IEEE, etc. Incluso para nombrar existen estndares, por ejemplo, el estndar ISO-11179 (Metadata Registry - MDR) Existen estndares para un lenguaje en particular, como el estndar JavaBean por ejemplo
nombres, se los debe escribir con propiedad. Tamao de los cuerpos de cdigo: Al igual que en un ensayo o documento cualquiera, deben ser legibles de una sola vista. Javadoc: Importantes para evitar ambigedad e interpretaciones equivocadas, no debera ser obligatorio para componentes de aplicacin, pero talvez s para componentes pblicos, de API o de integracin. Coherencia semntica: Los nombres de variables y funciones deben tener sentido semntico en contexto.
Complejidad ciclomtica
Se define como el nmero de caminos
linealmente independientes que el flujo de un programa puede seguir. M = E N + 2P Sustancial para asegurar la claridad del cdigo y su calidad. Es justificable en ocasiones, pero en la mayora de casos slo devela una mala abstraccin o un mal diseo.
Complejidad ciclomtica
Cuando una funcionalidad sucede en muchos
escenarios, la realizacin e implementacin de la misma puede tener alta complejidad ciclomtica. A ms de la complejidad ciclomtica, es una medida de claridad y complejidad la variable llamada NPath complexity, que indica el nmero de posibles caminos de ejecucin de un programa.