Удаление неиспользуемой функциональности-это плохо?
Может ли ЯГНИ употребляться в прошедшем времени? Вы создали некоторую функциональность, она была использована некоторое время назад, но вы больше не используете ее, и вы не хотите поддерживать ее, поэтому вы предпочли бы удалить ее.
Является ли избавление от неиспользуемой или редко используемой функциональности обязательно плохой вещью?
Фон :
- я использую систему управления версиями, поэтому, если мне снова понадобится функциональность, я могу ее получить.
- я единственный пользователь моего программного обеспечения (я биоинформатик, анализирующий набор данных). Один сценарий, в котором я столкнулся с этим, состоял в том, что я использовал наследование с родительским классом и двумя дочерними классами. Один из них обрабатывал файлы, созданные секвенированием 454 (секвенирование следующего поколения), а другой-файлы, созданные секвенированием Сэнгера (секвенирование предыдущего поколения). Я активно поддерживал последнее, но не первое. Возможно, моя ошибка заключалась в использовании наследования, а не композиции, но это немного другая история.
5 ответов:
Неиспользуемый код подвержен "кодовой гнили" - вполне законно удалить его в качестве шага рефакторинга.
Некоторое дополнительное обсуждение на странице C2 YAGNI и удаление.
Тем не менее, я считаю себя в целом консервативным с отбраковкой мертвого кода, но это то, над чем, возможно, мне нужно работать...
Мертвый код дорог во многих отношениях.
Больше всего меня беспокоят трения и дополнительные трудозатраты, которые возникают при рефакторинге.
Нажмите клавишу delete. Если он вам понадобится позже, зайдите в SCC и получите его.
Начинающие программисты гордятся новыми возможностями, которые они закодировали. Мастер-программист доволен, когда он может удалить функцию.