Utilize nomes de variáveis significativos e de fácil pronúncia
Não é recomendável:
const yyyymmdstr = moment().format("YYYY/MM/DD");
É recomendável:
const currentDate = moment().format("YYYY/MM/DD");
Use o mesmo vocabulário para o mesmo tipo de variável
Não é recomendável:
getUserInfo();
getClientData();
getCustomerRecord();
É recomendável:
getUser();
Use nomes fáceis de pesquisar
Leremos mais código do que o escreveremos. É importante que o código que escrevamos seja legível e fácil de pesquisar. Quando não utilizamos nomes de variáveis que, no final das contas, não são significativos para a compreensão do nosso programa, nós ferimos nossos leitores. Faça com que seus nomes sejam fáceis de serem buscados. Ferramentas como buddy.js e ESLint podem ajudar a identificar constantes sem nome.
Não é recomendável:
// Para que serve o número 86400000?!
setTimeout(blastOff, 86400000);
É recomendável:
/*
Declare esse número em uma constante com nomes
em letras maiúsculas
*/
const MILLISECONDS_PER_DAY = 60 * 60 * 24 * 1000;
setTimeout(blastOff, MILLISECONDS_PER_DAY);
Utilize variáveis explicativas
Não é recomendável:
const address = "One Infinite Loop, Cupertino 95014";
const cityZipCodeRegex = /^[^,\\]+[,\\\s]+(.+?)\s*(\d{5})?$/;
saveCityZipCode(
address.match(cityZipCodeRegex)[1],
address.match(cityZipCodeRegex)[2]
);
É recomendável:
const address = "One Infinite Loop, Cupertino 95014";
const cityZipCodeRegex = /^[^,\\]+[,\\\s]+(.+?)\s*(\d{5})?$/;
const [_, city, zipCode] = address.match(cityZipCodeRegex) || [];
saveCityZipCode(city, zipCode);
Evite o mapeamento mental
Explícito é melhor que implícito
Não é recomendável:
const locations = ["Austin", "New York", "San Francisco"];
locations.forEach(l => {
doStuff();
doSomeOtherStuff();
// ...
// ...
// ...
// Wait, what is `l` for again?
dispatch(l);
});
É recomendável:
const locations = ["Austin", "New York", "San Francisco"];
locations.forEach(location => {
doStuff();
doSomeOtherStuff();
// ...
// ...
// ...
dispatch(location);
});
Não acrescente contextos desnecessários
Se o nome de sua classe/objeto lhe comunica algo, não repita esse princípio no nome da sua variável
Não é recomendável:
const Car = {
carMake: "Honda",
carModel: "Accord",
carColor: "Blue"
};
function paintCar(car, color) {
car.carColor = color;
}
É recomendável:
const Car = {
make: "Honda",
model: "Accord",
color: "Blue"
};
function paintCar(car, color) {
car.color = color;
}
Utilize argumentos padrão em vez de curto circuito ou condicionais
Argumentos padrão são, com frequência, mais limpos do que o curto circuito. Se você os utiliza, tome cuidado porque sua função fornecerá apenas valores padrão para argumentos indefinidos undefined
. Outros valores considerados "falsos" como ' '
, " "
, false
, null
, 0 e NaN
não serão substituídos por um valor padrão.
Não é recomendável:
function createMicrobrewery(name) {
const breweryName = name || "Hipster Brew Co.";
// ...
}
É recomendável:
function createMicrobrewery(name = "Hipster Brew Co.") {
// ...
}
E aí? Gostaram? Até a próxima tradução! 🤗
Top comments (0)