ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
Clean Code Chapter 17: Smells and Heuristics (Spanish)
1. CAPÍTULO 17
SÍNTOMAS Y HEURÍSTICA
Libro Código Limpio
Robert C. Martin
Maria Adelayda Gil Suárez
2. COMENTARIOS
No use información inapropiada
como historiales de cambios o
información del autor; use notas
técnicas sobre el código y el
diseño.
Analice si algún comentario
puede volverse obsoleto,
anticuado o irrelevante en el
tiempo.
Evite comentarios redundantes,
comente lo que el código no
puede expresar por si mismo.
Use gramática y puntuación
correcta, no divague, ni afirme lo
evidente.
No comente grandes
fragmentos de código, haga su
código más impecable.
Checklist
Información inapropiada.
Comentario obsoleto.
Comentario redundante.
Comentario mal escrito.
Código comentado.
3. ENTORNO
La generación de un proyecto
requiere más de un paso para
comprobar todos los elementos
del control de código fuente.
Las pruebas de unidad se
ejecutan con varios pasos desde
una línea de comandos.
Checklist
La generación requiere mas
de un paso.
Las pruebas requieren más
de un paso.
4. FUNCIONES
Reduzca la cantidad de
argumentos, más de tres es
cuestionable y debe evitarse.
Los argumentos de salida son
ilógicos, si su función debe
cambiar el estado de algo,
cambie el estado del objeto que
se invoca.
Los argumentos booleanos
resultan confusos y deben
eliminarse.
Los métodos que nunca se
invocan son innecesarios y
deben eliminarse.
Checklist
Demasiados argumentos
Argumentos de salida
Argumentos de indicador
Función muerta.
5. GENERAL
Minimizar la cantidad de
lenguajes adicionales en cada
archivo.
Siempre implementar los
comportamientos que otro
programador esperaría, de no
ser así se puede perder la
confianza en el autor original.
Busque todas las condiciones
límites y haga pruebas en cada
una, sea completamente
meticuloso.
No desactive determinadas
advertencias del compilador,
corrija todas las pruebas que
fallan y no corra riesgos
innecesarios.
El código duplicado indica una
oportunidad de abstracción, con
la abstracción el código se
vuelve más rápido, y es menos
proclive a errores.
No mezclar conceptos de nivel
inferior con el nivel superior; las
clases bases no deben saber
nada sobre sus derivadas.
Minimice la información, una
interfaz bien definida tiene
pocas funciones y sus
conexiones son reducidas.
Checklist
Varios lenguajes en un
archivo de código.
Comportamiento evidente
no implementado.
Comportamiento incorrecto
en los límites.
Medidas de seguridad
canceladas.
Duplicación.
Código en un nivel de
abstracción incorrecto.
Clases que dependen de sus
variantes.
Exceso de información.
Código muerto.
6. GENERAL
Mantenga sus archivos bien
organizados y sin elementos
sobrantes o código muerto.
Defina sus variables y funciones
cerca de donde se utilicen. Las
variables encima de su primer
uso y las funciones privadas
debajo de su primer uso.
Sea coherente en su código,
asigne nombres con las mismas
técnicas. Use nombres
descriptivos. sendbtn namelbl
Analice dónde puede declarar
sus funciones, constantes y
variables, no establezca
conexiones artificiales entre dos
módulos sin un propósito
directo.
Haga su código lo mas expresivo
posible, no haga expresiones
extensas, notaciones y números
extraños que hagan
impenetrable su código. Piense
en sus lectores.
Analice muy bien los nombres
de sus funciones para identificar
donde ubicar el código. Sea muy
intuitivo para su lector.
Asegúrate de comprender tu
código refactorizándolo en algo
tan limpio y expresivo que su
funcionamiento sea evidente.
Checklist
Separación vertical.
Incoherencia.
Desorden.
Conexiones artificiales
Envidia de las características.
Argumentos de selector.
Intención desconocida.
Responsabilidad desubicada.
Elementos estáticos
incorrectos.
Usar variables explicativas.
Los nombres de función
deben indicar lo que hacen.
Comprender el algoritmo.