13 lines
1.7 KiB
Markdown
13 lines
1.7 KiB
Markdown
#рефакторинг #запахи_кода
|
||
|
||
> Изменения в данных часто могут вести к неожиданным последствиям и хитрым ошибкам. Я могу обновить некоторые данные в одном месте, не зная, что другая часть программного обеспечения ожидает какие-то другие данные и теперь терпит неудачу. Такой сбой особенно трудно обнаружить, если он происходит только в редких условиях. По этой причине целая школа разработки программного обеспечения (функциональное программирование) основана на идее, что данные никогда не должны изменяться, и что обновление структуры данных всегда должно возвращать новую копию структуры с изменениями, оставляя старые данные нетронутыми.
|
||
|
||
### **Рефакторинги**
|
||
- [[Инкапсуляция переменной (Encapsulate Variable)]]
|
||
- [[Расщепление переменной (Split Variable)]]
|
||
- [[Перемещение инструкций (Slide Statements)]]
|
||
- [[Отделение запроса от модификатора (Separate Query from Modifier)]]
|
||
- [[Замена вычисленной переменной запросом (Replace Derived Variable with Query)]]
|
||
|
||
### **Ссылки**
|
||
- [[Мартин Фаулер - Рефакторинг кода на JavaScript]] |