ConstructiCat Logo
CodeBust.
Browse section ▾

Code Smells.

Indicators of deeper problems in code. Each entry links to the refactorings that treat it.

Design Patterns Mascot
Комментарии

Метод содержит множество поясняющих комментариев.

005
Code Smells Mascot
Класс данных

Классы данных — это классы, которые содержат только поля и простейшие методы для доступа к ним (геттеры и сеттеры). Это просто контейнеры для данных, используемые другими классами. Эти классы не содержат никакой дополнительной функциональности и не могут самостоятельно работать с данными, которыми владеют.

006
Refactoring Mascot
Мёртвый код

Переменная, параметр, поле, метод или класс больше не используются (чаще всего потому, что устарели).

007
Antipatterns Mascot
Дублирование кода

Два фрагмента кода выглядят почти одинаковыми.

008
Antipatterns Mascot
Ленивый класс

На понимание и поддержку классов всегда требуются затраты времени и денег. А потому, если класс не делает достаточно много, чтобы уделять ему достаточно внимания, он должен быть уничтожен.

009
Design Patterns Mascot
Теоретическая общность

Класс, метод, поле или параметр не используются.

010
Design Patterns Mascot
Группы данных

Иногда в разных частях кода встречаются одинаковые группы переменных (например, параметры подключения к базе данных). Такие группы следует превращать в самостоятельные классы.

011
Antipatterns Mascot
Большой класс

Класс содержит множество полей/методов/строк кода.

012
Antipatterns Mascot
Длинный метод

Метод содержит слишком большое число строк кода. Длина метода более десяти строк должна начинать вас беспокоить.

013
Code Smells Mascot
Длинный список параметров

Количество параметров метода больше трёх-четырёх.

014
Refactoring Mascot
Одержимость элементарными типами

Использование элементарных типов вместо маленьких объектов для небольших задач (например, валюта, диапазоны, специальные строки для телефонных номеров и т. п.)Использование констант для кодирования какой-то информации (например, константа USER_ADMIN_ROLE = 1 для обозначения пользователей с ролью администратора).Использование строковых констант в качестве названий полей в массивах.

015