Clean Code Simplificado
"Clean code always looks like it was written by someone who cares." — Robert C. Martin Índice Introdução 1. Elimine Números e Palavras Mágicas 2. Substitua Parâmetros Booleanos por Enums 3. Use Objetos para Agrupar Parâmetros 4. Remova IFs Usando Objetos 5. Use Early Return 6. Torne seus IFs Mais Legíveis com Const 7. Escreva Código Autoexplicativo 8. Utilize "has" e "is" em Booleans 9. Padronize a Nomenclatura 10. Aproveite Métodos do JavaScript Dicas Extras sobre Nomes Conclusão Referências Introdução Clean Code é a arte de escrever código claro, organizado e legível, facilitando a manutenção e evolução de sistemas. Vamos explorar práticas essenciais com exemplos práticos e fáceis de aplicar. 1. Elimine Números e Palavras Mágicas Evite usar valores "mágicos" diretamente no código. Antes: if (user.type === "P") { //... } Depois: const PREMIUM_USER = "P"; if (user.type === PREMIUM_USER) { //... } 2. Substitua Parâmetros Booleanos por Enums Torne o significado explícito usando enums. Antes: createUser("John", true); Depois: const UserType = { ADMIN: 'admin', REGULAR: 'regular' }; createUser("John", UserType.ADMIN); 3. Use Objetos para Agrupar Parâmetros Melhore a legibilidade agrupando parâmetros relacionados. Antes: createUser("John", "Doe", 30, true); Depois: createUser({ firstName: "John", lastName: "Doe", age: 30, isAdmin: true }); 4. Remova IFs Usando Objetos Substitua múltiplos IFs por mapeamento de ações. Antes: if (userType === 'admin') { doAdminStuff(); } else if (userType === 'guest') { doGuestStuff(); } Depois: const actions = { admin: doAdminStuff, guest: doGuestStuff }; actions[userType]?.(); 5. Use Early Return Reduza a complexidade saindo da função o quanto antes. Antes: if (user) { if (user.isActive) { processUser(user); } } Depois: if (!user || !user.isActive) return; processUser(user); 6. Torne seus IFs Mais Legíveis com Const Nomeie condições para facilitar a leitura. Exemplo: const hasPremiumAccess = user.isPremium && user.subscriptionActive; if (hasPremiumAccess) { grantPremiumAccess(user); } 7. Escreva Código Autoexplicativo Código claro reduz a necessidade de comentários. Antes: // Verifica se o usuário é admin if (user.role === 'admin') {...} Depois: const isAdmin = user.role === 'admin'; if (isAdmin) {...} 8. Utilize "has" e "is" em Booleans Prefira prefixos que indiquem claramente valores booleanos. Antes: function checkUserAccess(user) {...} Depois: function isUserAuthorized(user) {...} 9. Padronize a Nomenclatura Use convenções claras para nomear funções e métodos. Exemplos: getUser(); createUser(); updateUser(); deleteUser(); 10. Aproveite Métodos do JavaScript Simplifique seu código usando métodos nativos. Antes: let activeUsers = []; for (let i = 0; i user.isActive); Dicas Extras sobre Nomes - Use Nomes Significativos // Ruim const d = getData(); // Bom const userData = getUserData(); - Evite Informações Erradas // Ruim const activeUsers = bannedUsers.filter(...); // Bom const bannedUsers = users.filter(...); - Faça Distinções Claras // Ruim const data1 = getUserData(); const data2 = getAdminData(); // Bom const userData = getUserData(); const adminData = getAdminData(); - Use Nomes Pronunciáveis e Buscáveis // Ruim const usrInf = getUsrInf(); // Bom const userInfo = getUserInfo(); - Evite Trocadilhos // Ruim const DateShifter = ...; // Bom const DateCalculator = ...; Conclusão Clean Code não é apenas estética: é comunicação. Código limpo facilita manutenções futuras, acelera novos desenvolvedores no projeto e torna a evolução de sistemas mais sustentável. Adote essas práticas aos poucos e veja a diferença na qualidade dos seus projetos! Referências Clean Code — Robert C. Martin Refactoring Guru - Clean Code The Art of Readable Code — Dustin Boswell

"Clean code always looks like it was written by someone who cares." — Robert C. Martin
Índice
- Introdução
- 1. Elimine Números e Palavras Mágicas
- 2. Substitua Parâmetros Booleanos por Enums
- 3. Use Objetos para Agrupar Parâmetros
- 4. Remova IFs Usando Objetos
- 5. Use Early Return
- 6. Torne seus IFs Mais Legíveis com Const
- 7. Escreva Código Autoexplicativo
- 8. Utilize "has" e "is" em Booleans
- 9. Padronize a Nomenclatura
- 10. Aproveite Métodos do JavaScript
- Dicas Extras sobre Nomes
- Conclusão
- Referências
Introdução
Clean Code é a arte de escrever código claro, organizado e legível, facilitando a manutenção e evolução de sistemas. Vamos explorar práticas essenciais com exemplos práticos e fáceis de aplicar.
1. Elimine Números e Palavras Mágicas
Evite usar valores "mágicos" diretamente no código.
Antes:
if (user.type === "P") {
//...
}
Depois:
const PREMIUM_USER = "P";
if (user.type === PREMIUM_USER) {
//...
}
2. Substitua Parâmetros Booleanos por Enums
Torne o significado explícito usando enums.
Antes:
createUser("John", true);
Depois:
const UserType = {
ADMIN: 'admin',
REGULAR: 'regular'
};
createUser("John", UserType.ADMIN);
3. Use Objetos para Agrupar Parâmetros
Melhore a legibilidade agrupando parâmetros relacionados.
Antes:
createUser("John", "Doe", 30, true);
Depois:
createUser({
firstName: "John",
lastName: "Doe",
age: 30,
isAdmin: true
});
4. Remova IFs Usando Objetos
Substitua múltiplos IFs por mapeamento de ações.
Antes:
if (userType === 'admin') { doAdminStuff(); }
else if (userType === 'guest') { doGuestStuff(); }
Depois:
const actions = {
admin: doAdminStuff,
guest: doGuestStuff
};
actions[userType]?.();
5. Use Early Return
Reduza a complexidade saindo da função o quanto antes.
Antes:
if (user) {
if (user.isActive) {
processUser(user);
}
}
Depois:
if (!user || !user.isActive) return;
processUser(user);
6. Torne seus IFs Mais Legíveis com Const
Nomeie condições para facilitar a leitura.
Exemplo:
const hasPremiumAccess = user.isPremium && user.subscriptionActive;
if (hasPremiumAccess) {
grantPremiumAccess(user);
}
7. Escreva Código Autoexplicativo
Código claro reduz a necessidade de comentários.
Antes:
// Verifica se o usuário é admin
if (user.role === 'admin') {...}
Depois:
const isAdmin = user.role === 'admin';
if (isAdmin) {...}
8. Utilize "has" e "is" em Booleans
Prefira prefixos que indiquem claramente valores booleanos.
Antes:
function checkUserAccess(user) {...}
Depois:
function isUserAuthorized(user) {...}
9. Padronize a Nomenclatura
Use convenções claras para nomear funções e métodos.
Exemplos:
getUser();
createUser();
updateUser();
deleteUser();
10. Aproveite Métodos do JavaScript
Simplifique seu código usando métodos nativos.
Antes:
let activeUsers = [];
for (let i = 0; i < users.length; i++) {
if (users[i].isActive) {
activeUsers.push(users[i]);
}
}
Depois:
const activeUsers = users.filter(user => user.isActive);
Dicas Extras sobre Nomes
- Use Nomes Significativos
// Ruim
const d = getData();
// Bom
const userData = getUserData();
- Evite Informações Erradas
// Ruim
const activeUsers = bannedUsers.filter(...);
// Bom
const bannedUsers = users.filter(...);
- Faça Distinções Claras
// Ruim
const data1 = getUserData();
const data2 = getAdminData();
// Bom
const userData = getUserData();
const adminData = getAdminData();
- Use Nomes Pronunciáveis e Buscáveis
// Ruim
const usrInf = getUsrInf();
// Bom
const userInfo = getUserInfo();
- Evite Trocadilhos
// Ruim
const DateShifter = ...;
// Bom
const DateCalculator = ...;
Conclusão
Clean Code não é apenas estética: é comunicação. Código limpo facilita manutenções futuras, acelera novos desenvolvedores no projeto e torna a evolução de sistemas mais sustentável.
Adote essas práticas aos poucos e veja a diferença na qualidade dos seus projetos!