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


Code Smell 180 — Побитовая оптимизация
Побитовые операторы работают быстрее. Избегайте этих микрооптимизаций TL;DR: не используйте побитовые операторы, если ваша бизнес-модель не основана на побитовой логике. Проблемы Читабельность Сообразительность Преждевременная оптимизация Ремонтопригодность Нарушение биекции Решения Улучшить читаемость Контекст Некоторые умные программисты решают проблемы, которых у нас нет. Мы должны оптимизировать код на основе доказательств и использовать научный метод...

Code Smell 136 — Классы только с одним подклассом
Обобщать и предвидеть будущее — это хорошо (опять же). TL;DR: не обобщайте слишком много Проблемы Спекулятивный дизайн Сложность Чрезмерная инженерия Решения Удалите абстрактный класс, пока не получите больше примеров Контекст В прошлом программисты говорили нам проектировать с учетом изменений. В настоящее время мы продолжаем следовать научному методу. Всякий раз, когда мы находим дубликат, мы удаляем его. Не раньше, чем. Не с интерфейсами, не с..

Погрузитесь в рефакторинг
#refactoring #code_smells #dive_into_refactoring #Alexander_Shvets Кодовые запахи: * Нарушители объектной ориентации * Операторы Switch У вас есть сложный оператор switch или последовательность операторов if . Если switch основан на коде типа, например, при переключении режима выполнения программы, используйте Заменить код типа на подклассы или Заменить код типа на состояние/стратегию . После указания структуры наследования используйте Полиморфизм ...