¡Hola! En el mundo del desarrollo de software, no solo se trata de hacer que las cosas funcionen, sino de hacer que funcionen de una manera más elegante y eficiente. Por eso, ¿alguna vez escuchaste hablar de "Clean Code"? Si no, estás por descubrir algo realmente útil.
Clean code como convención
Primero y principal, "clean code" no son reglas estrictas que tenemos que cumplir a rajatabla, sino una serie de principios o convenciones que ayudan a escribir código más intuitivo, legible y fácil de modificar tanto para la persona que lo escribe como para quien lo tenga que leer o editar en un futuro.
De nuevo, no son reglas estrictas, pero mientras las utilicemos más, seremos más felices y nos quejaremos menos..
Una vez mencionado esto, ¿cómo podemos poner en práctica estos principios? A continuación, te proporciono algunos ejemplos para que comiences a aplicarlos:|
Nombres significativos
Declarar todas las variables y funciones utilizando nombres descriptivos que reflejen su propósito. Por ejemplo:
// Mal
const d = 7 // ¿Qué es 'd'?
function q(x, y) {
// ¿Qué hace 'q' sin leer su código?
return x + y
}
// Bien
const daysInWeek = 7 // Claramente, días de la semana
function sumNumbers(a, b) {
// Ahora se entiende, sin leer el código, lo que hace la función
return a + b
}
Funciones cortas y con un sólo propósito
En lugar de tener una función extensa que realice múltiples tareas, divide la función en funciones más pequeñas, cada una con un solo propósito. Por ejemplo:
// Mal
function getAndProcessData(params) {
// Valido los parámetros
// Busco los datos en una API
// Atajo los errores
// Proceso la data
}
// Bien
function validateParams(params) {
// Valido los parámetros
}
function getData(params) {
// Busco datos en API
}
function checkErrors(params) {
// Atajo errores
}
function processData(params) {
// Proceso los datos
}
Evitar comentarios obvios
Idealmente, nuestro código debería ser comprensible sin necesidad de comentarios adicionales. Sin embargo, en caso de ser necesarios, asegurémonos de que no sean redundantes y proporcionen explicaciones que vayan más allá de la funcionalidad explícita del código. Ejemplo:
// Mal: Comentario obvio
const total = calculateCartTotal() // Calcula el total del carrito
// Mejor: Comentario explicativo
const total = calculateCartTotal() // Suma los valores del carrito de compras
// Bien:
const cartTotal = calculateCartTotal()
Un buen nombre descriptivo para la variable o método es el mejor comentario.
Mantener una indentación consistente
La consistencia es fundamental. Elige entre 2 o 4 espacios para la indentación y mantenlo constante en todo tu código.
// Mal
async function getPokeData() {
const apiResponse = await fetch('https://pokeapi.com/pokemons')
if (!apiResponse.ok) {
console.log('Ocurrió un error')
} else {
const apiData = await apiResponse.json()
return apiData
}
}
// Bien
async function getPokeData() {
const apiResponse = await fetch('https://pokeapi.com/pokemons')
if (!apiResponse.ok) {
console.log('Ocurrió un error')
} else {
const apiData = await apiResponse.json()
return apiData
}
}
Evitar pasar más de 3 parámetros en funciones
Idealmente, deberíamos limitar las funciones a un máximo de tres parámetros. Si necesitamos pasar muchos, podemos utilizar un objeto para agruparlos. Esta solución resulta en un código más legible, más conciso y evita la necesidad de recordar el orden de los parámetros. Ejemplo:
// Mal
function processData(flag, data, id, aFilter, bFilter, cFilter, actionByFilter) {
// Mi código
}
// Bien
const filterParams = {
id,
aFilter,
bFilter,
cFilter,
actionByFilter
}
function processData(flag, data, filterParams) {
console.log(filterParams.id)
console.log(filterParams.actionByFilter)
}
Conclusión
Al aplicar todos los consejos mencionados anteriormente, estarás llevando a cabo una refactorización de tu código, lo que resultará en un código más limpio y ordenado. Estos principios no buscan simplemente hacer que tu código luzca mejor, sino que se centran en que te conviertas en un desarrollador más efectivo y colaborativo. Hacer que tus desarrollos sean más fáciles de comprender, mantener y compartir es un beneficio para todos. Entonces, ¡anímate a desarrollar de la manera más limpia posible!