Em ciência da computação, um code smell é qualquer característica do código fonte de um programa de computador que indique a possibilidade de um problema mais profundo no sistema. Determinar o que é um code smell é um processo subjetivo e depende da linguagem de programação, do paradigma de programação, e da experiência do programador. O termo foi popularizado por Kent Beck na WardsWiki no final dos anos 90. O uso do termo passou a aumentar após a publicação do livro Refactoring: Improving the Design of Existing Code de Martin Fowler, em 1999. O termo é também usado na metodologia de desenvolvimento ágil.
Categoria:Engenharia de software