Публикации по теме 'code-smells'


Code Smell 98 - Ошибки при написании
Орфография и читаемость очень важны для людей и не важны для машин. TL; DR: берегите свои имена. Проблемы Читаемость Решения 1. Проверьте правописание в своем коде. 2. Используйте IDE с проверкой орфографии. Контекст Многие из нас не говорят на английском как на родном. Нам нужно особенно внимательно относиться к нашим текстам и именам. В названии статьи есть опечатка в качестве доказательства контекста, а также кликбейт😀 Образец кода Неправильный..

Code Smell 29 - Настройки / Конфигурации
Изменение поведения системы на панели управления - мечта заказчика. И кошмар разработчика программного обеспечения. Проблемы Дублированный код Если загрязнение Глобальное использование "Связь" Тестируемость и взрывной рост сценариев тестирования. Сложность Решения Избегайте настроек Создавать полиморфные объекты. Ввести их наружно. Образец кода Неправильный Правильно Обнаружение Это архитектурный шаблон, поэтому его следует контролировать / избегать..

Code Smell 101 — Сравнение с логическими значениями
При сравнении с логическими значениями мы выполняем магические приведения и получаем неожиданные результаты. TL;DR: не сравнивайте с правдой. Либо вы истинны, либо ложны, либо не стоит сравнивать Проблемы Скрытые кастинги Нарушение принципа наименьшего удивления Нарушение принципа Fail Fast Решения Используйте логические значения Не смешивайте логические значения с булевыми приводимыми объектами . Контекст Многие языки преобразуют значения в логические..

Code Smell 31 — Случайные методы на бизнес-объектах
Добавление постоянства, сериализации, отображения, импорта и экспорта кода к объекту раздувает его протокол и создает связанность. Проблемы Читабельность Связь Ремонтопригодность Решения Держите свои объекты в чистоте. Разделяйте бизнес-объекты. Отделите случайные проблемы: переместите сохранение, форматирование, сериализацию в специальные объекты. Сохраняйте основной протокол, используя биекцию . Примеры Упорство Идентификаторы Сериализация Форматирование..

КОД ЗАПАХ 159 — MIXED_CASE
Серьезной разработкой занимаются разные люди. Мы должны начать соглашаться. TL;DR: не смешивайте разные преобразования регистра Проблемы Читабельность Ремонтопригодность Решения Выберите стандарт корпуса Держись за это Контекст Когда разные люди создают программное обеспечение вместе, у них могут быть личные или культурные различия. Одни предпочитают camelCase 🐫, другие — snake_case 🐍, MACRO_CASE🗣️ и многие другие . Код должен быть простым и читаемым...

Кодовый запах 58 - Проблема йо-йо
Ищете конкретную реализацию метода? Двигайтесь вперед и назад, вверх и вниз. Проблемы Глубокие иерархии Подклассификация для повторного использования кода Читаемость Низкая сплоченность Высокое сцепление Решения Предпочитайте композицию наследованию. Реорганизуйте глубокие иерархии. Образец кода Неправильный Правильно Обнаружение Любой линтер может проверить наличие подозреваемых по максимальному порогу глубины. Теги Иерархия Вывод Многие..

Освоение соглашений об именах Kotlin: преодоление абстрактных имен
Проблема Реализованное именование Бессмысленные имена Сломанный MAPPER и Bijection для объектов реального мира. Решение Выбирайте осмысленные имена. Найдите метафоры. Избегайте таких слов, как абстрактный , базовый , общий , помощник , данные , информация и т. д. Используйте правила для именования. Образец кода Неправильный class Repository { // ... } class MeetingCollection { // ... } class AccountsComposite { // ... } class NoteArray {..