ConstructiCat Logo
CodeBust.
Browse section ▾

Упрощение вызовов методов.

Architectural Patterns Mascot
Добавление параметра

Проблема: Методу не хватает данных для осуществления каких-то действий. Решение: Создайте новый параметр, чтобы передать эти данные.

001
Code Smells Mascot
Сокрытие метода

Проблема: Метод не используется другими классами либо используется только внутри своей иерархии классов. Решение: Сделайте метод приватным или защищённым.

002
Refactoring Mascot
Замена параметров объектом

Проблема: В ваших методах встречается повторяющаяся группа параметров. Решение: Замените эти параметры объектом.

003
Architectural Patterns Mascot
Параметризация метода

Проблема: Несколько методов выполняют похожие действия, которые отличаются только какими-то внутренними значениями, числами или операциями. Решение: Объедините все эти методы в один с параметром, в который будет передаваться отличающееся значение.

004
Antipatterns Mascot
Передача всего объекта

Проблема: Вы получаете несколько значений из объекта, а затем передаёте их в метод как параметры. Решение: Вместо этого передавайте весь объект.

005
Code Smells Mascot
Удаление параметра

Проблема: Параметр не используется в теле метода. Решение: Удалите неиспользуемый параметр.

006
Refactoring Mascot
Удаление сеттера

Проблема: Значение поля должно быть установлено только в момент создания и больше никогда не меняться. Решение: Удалите методы, устанавливающие значение этого поля.

007
Architectural Patterns Mascot
Переименование метода

Проблема: Название метода не раскрывает суть того, что он делает. Решение: Измените название метода.

008
Code Smells Mascot
Замена конструктора фабричным методом

Проблема: У вас есть сложный конструктор, делающий нечто большее, чем простая установка значений полей объекта. Решение: Создайте фабричный метод и замените им вызовы конструктора.

009
Refactoring Mascot
Замена кода ошибки исключением

Проблема: Метод возвращает определенное значение, которое будет сигнализировать об ошибке. Решение: Вместо этого следует выбрасывать исключение.

010
Architectural Patterns Mascot
Замена исключения проверкой условия

Проблема: Вы выбрасываете исключение там, где можно было бы обойтись простой проверкой условия. Решение: Замените выбрасывание исключения проверкой этого условия.

011
Antipatterns Mascot
Замена параметра набором специализированных методов

Проблема: Метод разбит на части, каждая из которых выполняется в зависимости от значения какого-то параметра. Решение: Извлеките отдельные части метода в собственные методы и вызывайте их вместо оригинального метода.

012
Antipatterns Mascot
Замена параметра вызовом метода

Проблема: Вызываем метод и передаем его результаты как параметры другого метода. При этом значение параметров могли бы быть получены и внутри вызываемого метода. Решение: Вместо передачи значения через параметры метода, попробуйте переместить код получения значения внутрь самого метода.

013
Design Patterns Mascot
Разделение запроса и модификатора

Проблема: У вас есть метод, который возвращает какое-то значение, но при этом в процессе работы он изменяет что-то внутри объекта. Решение: Разделите метод на два разных метода. Один из них пускай возвращает значение, а второй модифицирует объект.

014