🤯 "No soy un gran programador; solo soy un buen programador con buenos hábitos". - Kent Beck
Los estudios han demostrado que los desarrolladores que usan las mejores prácticas al codificar son hasta un 40% más productivos que aquellos que no lo hacen, y que el código con buenas prácticas es hasta un 50% más barato de mantener que el código con malas prácticas.
Además, las empresas y los gobiernos pierden mucho dinero todos los días porque los desarrolladores no siguen las mejores prácticas y directrices, aquí hay algunos ejemplos sobre los que puedes leer más:
Esta lección es una compilación de las mejores prácticas que promovemos en 4Geeks, ha sido creada y crecida con contribuciones de todos los mentores de la comunidad.
Es mejor evitar usar variables globales siempre que sea posible, usa más argumentos de función y valores de retorno para compartir datos entre diferentes partes de un programa. Esto puede ayudar a hacer que el código sea más mantenible, probado y confiable.
Algunas de las convenciones de nomenclatura se dan a continuación:
snake_case
para python, etc. Aquí puedes leer más sobre convenciones de nomenclatura de variables.1Nombres de variables descriptivos 2✅ BIEN: "customer_name" (describe el contenido de la variable) 3❌ MAL: "x" (No descriptivo o significativo) 4 5Usar convenciones de nomenclatura 6✅ BIEN: "number_of_items" (todas las palabras que se usan) 7❌ MAL: "n_items" (se utiliza la abreviatura) 8 9✅ BIEN: "customerName" (se usa camelCase) 10❌ MAL: "customername" (no se utiliza ninguna convención de nomenclatura) 11 12Evitar usar nombres_de_una_sola_letra: 13✅ BIEN: "customer_name" (Descriptivo y significativo) 14❌ MAL: "x" (Una letra y no descriptivo) 15 16Mantener los nombres cortos, pero no demasiado cortos: 17✅ BIEN: "product_price" (corto y descriptivo) 18❌ MAL: "p" (muy corto y no descriptivo)
Usar una herramienta de indentación más bonita o automática. Si eso no es posible (por alguna razón extraña), asegúrate de indentar manualmente cada uno:
1if (condition) { 2 // code block 1 3} else if (condition) { 4 // code block 2 5} else { 6 // code block 3 7}
Cuando se codifica, algunos de los errores se ocultan a los desarrolladores a menos que se manejen activamente las excepciones, por esta razón, decidimos incluir esta guía en la lista.
.catch()
o el bloque try-catch (si se usan promesas) y muestra el error en la consola.Crear código que sea fácil de leer es esencial para producir software de alta calidad que sea confiable, mantenible y fácil de modificar o actualizar. Tenemos un artículo completo sobre legibilidad del código pero aquí hay un resumen muy corto de las mejores prácticas:
Cuando sea posible, evita usar funciones anidadas como:
1def calculate_discount(item, quantity): 2 if item.category == 'clothing': 3 if quantity >= 10: 4 return item.price * 0.9 5 else: 6 return item.price * 0.95 7 elif item.category == 'electronics': 8 if quantity >= 5: 9 return item.price * 0.8 10 else: 11 return item.price * 0.9 12 else: 13 return item.price
El código está demasiado anidado y tiene una estructura compleja que puede ser difícil de seguir. Esto se puede mejorar refactorizando el código para usar menos niveles de anidamiento, o usando retornos tempranos o refactorizando las declaraciones condicionales para simplificar la estructura. Aquí hay un ejemplo:
1def calculate_discount(item, quantity): 2 if item.category != 'clothing' and item.category != 'electronics': 3 return item.price 4 5 discount = 1.0 6 if item.category == 'clothing': 7 discount = 0.9 if quantity >= 10 else 0.95 8 else: 9 discount = 0.8 if quantity >= 5 else 0.9 10 11 return item.price * discount