mirror of
https://github.com/goldbergyoni/nodebestpractices.git
synced 2025-10-29 08:37:18 +08:00
44 lines
3.7 KiB
Markdown
44 lines
3.7 KiB
Markdown
# Рефакторинг
|
||
|
||
<br/><br/>
|
||
|
||
### Объяснение в один абзац
|
||
|
||
Рефакторинг является важным мероприятием в процессе итеративной разработки. Удаление "запахов кода" (плохих методов кодирования), таких как дублированный код, длинные методы, список длинных параметров, улучшит ваш код и сделает его более понятным. Использование инструментов статического анализа поможет вам найти эти запахи кода и построить процесс вокруг рефакторинга. Добавление этих инструментов в вашу сборку CI поможет автоматизировать процесс проверки качества. Если ваш CI интегрируется с таким инструментом, как Sonar или Code Climate, сборка завершится неудачно, если он обнаружит запах кода и сообщит автору, как решить проблему. Эти инструменты статического анализа дополнят такие инструменты lint, как ESLint. Большинство инструментов для рисования будут сосредоточены на стилях кода, таких как отступы и пропущенные точки с запятой (хотя некоторые найдут запахи кода, такие как функции Long) в одном файле, в то время как инструменты статического анализа сосредоточатся на поиске запахов кода (дублирующий код, анализ сложности и т.д.), Которые находятся в отдельные файлы и несколько файлов.
|
||
|
||
<br/><br/>
|
||
|
||
|
||
### Мартин Фаулер - главный научный сотрудник ThoughtWorks
|
||
|
||
Из книги "Рефакторинг - улучшение дизайна существующего кода"
|
||
|
||
> Рефакторинг - это контролируемый метод улучшения дизайна существующей кодовой базы.
|
||
|
||
<br/><br/>
|
||
|
||
### Эван Бурхард - консультант по веб-разработке и автор
|
||
|
||
Из книги "Рефакторинг JavaScript: Превращение плохого кода в хороший код"
|
||
|
||
> Независимо от того, фреймворк или
|
||
"compiles-to-JS" язык или билиотеку вы используете, ошибки и проблемы с производительностью
|
||
всегда будут проблемой, если низкое качество вашего JavaScript плохое.
|
||
|
||
<br/><br/>
|
||
|
||
### Пример: Анализ сложных методов с помощью CodeClimate (коммерческий)
|
||
|
||

|
||
|
||
### Пример: Тенденции и история анализа кода с CodeClimate (коммерческий)
|
||
|
||

|
||
|
||
### Пример: Сводка анализа кода и тенденции с SonarQube (коммерческий)
|
||
|
||

|
||
|
||
|
||
<br/><br/>
|