Комментарии
Симптомы и признаки
Метод содержит множество поясняющих комментариев.
![](/images/refactoring/content/smells/comments-01.png?id=584958123f3b902e0ad0895d879509b9)
Причины появления
Зачастую комментарии создаются с хорошими намерениями, когда автор и сам понимает, что его код недостаточно очевиден и понятен. В таких случаях комментарии играют роль «дезодоранта», т.е. пытаются заглушить «дурной запах» недостаточно проработанного кода.
Самый лучший комментарий — это хорошее название метода или класса.
Если вы чувствуете, что фрагмент кода будет непонятным без комментария, попробуйте изменить структуру кода так, чтобы любые комментарии стали излишними.
Лечение
-
Если комментарий предназначен для того, чтобы объяснить сложное выражение, возможно, это выражение лучше разбить на понятные подвыражения с помощью извлечения переменной.
-
Если комментарий поясняет целый блок кода, возможно, этот блок можно извлечь в отдельный метод с помощью извлечения метода. Название нового метода вам, скорей всего, подскажет сам комментарий.
-
Если метод уже выделен, но для объяснения его действия по-прежнему нужен комментарий, дайте методу новое не требующее комментария название. Используйте для этого переименование метода.
-
Если требуется описать какие-то правила, касающиеся правильной работы метода, попробуйте рефакторинг введение утверждения.
Выигрыш
- Код становится более очевидным и понятным.
![](/images/refactoring/content/smells/comments-02.png?id=266f82bb7081957d409ae690c2c66483)
Не стоит трогать, если...
Иногда комментарии бывают полезными:
-
Те, которые объясняют почему что-то выполняется именно таким образом.
-
Те, которые объясняют сложные алгоритмы (когда все иные средства упростить алгоритм уже были испробованы).