2019-04-04 Требуется Проверять Наличие Новой Функции В Конце Работы
Различия
Здесь показаны различия между двумя версиями данной страницы.
правила_разработки:как_не_надо_делать:2019-04-04_требуется_проверять_наличие_новой_функции_в_конце_работы [04.03.2019 07:05] николай_глазов Approved(николай_глазов 2019/03/04 07:06) |
правила_разработки:как_не_надо_делать:2019-04-04_требуется_проверять_наличие_новой_функции_в_конце_работы [20.05.2019 15:18] (текущий) |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
+ | |||
+ | **Постановка задачи**: требовалось сделать резервный файл выгрузки, чтобы у клиентов не происходило проблем из-за старого файла выгрузки. При этом, в некоторых случаях происходила замена файла резервным. | ||
+ | |||
+ | **В чем была проблема**: Было сделано изменение, но у клиентов в новой версии функционально ничего не изменилось. | ||
+ | |||
+ | **Краткая хронология**: создавалась новая функция, её работа была проверена в во время кодирования, но она не была проверена в конце работы. | ||
+ | |||
+ | Изначально функция выглядела так: | ||
+ | <code bash> | ||
+ | .... | ||
+ | |||
+ | download_from_carbon(){ | ||
+ | if [ "$(time_of_day)" = 'NIGHT' ] && [ -f "$FILE_RESERVE" ]; then | ||
+ | cp -a "$FILE_RESERVE" "$FILE" | ||
+ | .... | ||
+ | </code> | ||
+ | |||
+ | Потом провели рефакторинг, перенесли логику из bash в утилиту для работы с файлом, но полностью функциональность перенести забыли, не хватало команд, потому что решено было передавать директорию для файла через env: | ||
+ | |||
+ | <code diff> | ||
+ | -DUMP = os.path.join(RKN_DIR, OUTPUT) | ||
+ | +DUMP = os.getenv('DUMP', os.path.join(RKN_DIR, OUTPUT)) | ||
+ | </code> | ||
+ | |||
+ | |||
+ | **Ошибки**: | ||
+ | - Не было полностью перенесена функциональность во время рефакторинга | ||
+ | - Не было проведено достаточное тестирование именно той функции, ради которой вносились изменения после всех изменений | ||
+ | |||
+ | **Как надо делать**: После всех изменений требуется проверять наличие именно той функциональности, ради которой создавалось изменение, это предохраняет от ошибок во время рефакторинга подтверждается, что было сделано именно то, что задумывали изначально. | ||
+ | |||
+ | ~~OWNERAPPROVE~~ | ||
+ | /*Не удаляйте эту строку и ниже!*/ | ||
+ | {(rater>id=1|name=Прочитал_правила_разработки:как_не_надо_делать:2019-04-04_требуется_проверять_наличие_новой_функции_в_конце_работы|type=vote|trace=user|tracedetails=1)} | ||