Запахи коду
— Що? Як взагалі код може пахнути?
— Так, пахнути дійсно не може... а от трохи смердіти — запросто.
Роздувальщики
Раздувальщики представляють код, методи і класи, які роздулися до таких великих розмірів, що з ними стало неможливо ефективно працювати. Всі ці запахи часто не з'являються відразу, а наростають в процесі еволюції програми (особливо коли ніхто не намагається боротися з ними).
Порушники об'єктного дизайну
Всі ці запахи свідчать про неповне або неправильне використання можливостей об'єктно-орієнтованого програмування.
Ускладнювачі змін
Ці запахи призводять до того, що при необхідності щось поміняти в одному місці програми, вам доводиться вносити безліч змін в інших місцях. Це серйозно ускладнює і здорожує розвиток програми.
Забрюднювачі коду
Забрюднювачі коду — це щось зайве, від чого можна було б позбутися, зробивши код простішим для розуміння.
Заплутувальники зв'язками
Всі запахи з цієї групи призводять до надлишкової зв'язаності між класами, або показують, що буває якщо тісна зв'язаність заміщується постійним делегуванням.