Adventures in Software Engineering

Code Smells

C

A code smell was defined by Martin Fowler as a “surface indication that usually corresponds to a deeper problem in the system”. They are mistakes made during the development of software that should be considered as warning flags to deeper problems.

A Taxonomy of Smells

Mäntylä and Lassenius considered the major code smells and broke them into a number of groupings, a taxonomy that describes the aspects they concern. These are documented below, and each page provides a thorough overview of the issue alongside details of the refactorings that can be applied to correct the issue.

Bloaters
Object-Orientation Abusers
Change Preventers
Change Preventers
Couplers
More Stinkers
Adventures in Software Engineering

Johnathan Meehan

Johnathan Meehan

A software engineer with more years under his belt that he would like, an odd sense of humour and a predilection for junk food, whiskey and beer. Having begun working in 68K assembly language (told you he was old), he now spends most of his time writing Java with a heavy emphasis on quality. Secretly wishes he could be just like Oscar Mike.

Recommended Host