Благодаря усилиям его целевой группы добровольцев за последние шесть месяцев было удалено более половины неиспользуемого кода в LibreOffice. Приятно видеть эту операцию по очистке, но она вызывает вопросы о количестве мертвого кода, скрывающегося в дикой природе.
Перенос нежелательного и неиспользуемого кода — это реальная нагрузка-это замедляет производительность и затрудняет обслуживание кода.
Майкл Микс, давний друг OpenOffice.org разработчик, который в настоящее время является одним из семи членов правления Фонда документов, создал график, который показывает, как количество выявленных неиспользуемых методов сократилось с почти 5200 до примерно 2000.
В своем сопроводительном посте в блоге Микс пишет:
Похоже, что более половины нашего неиспользуемого кода теперь превратилось в пыль. К сожалению, по мере удаления мы обнаруживаем все больше потерь, что объясняет некоторые скачки вверх на графике, тем не менее тенденция явно идет вниз. Одним из побочных преимуществ невоспетых героев, работающих над преобразованием наших старых макро-управляемых дженериков в современные STL, является то, что это лишает нас нескольких неиспользуемых методов на каждый преобразованный класс.
Микс указывает, что неиспользуемый код.простой файл в LibreOffice перечисляет методы, которые должны быть удалены, и предполагает, что присоединение к этой кампании по очистке-хороший способ принять участие в проекте LibreOffice. Он также рекомендует тем, кто работает над другими проектами, использовать метод callcatcher, разработанный Каоланом Макнамарой из RedHat, для выявления неиспользуемых методов, скрывающихся в их собственном коде.
Это достойное, но отрезвляющее предприятие. Удалить мертвый код-это хорошо, но как мы можем достичь этой точки и серьезно обсуждать ситуацию, когда мертвому коду позволено оставаться незамеченным и неизменным так долго?
Масштаб мертвого кода в LibreOffice шокирует, и, вероятно, это не потому, что кодовая база особенно плоха. Можете ли вы представить себе это в любой другой инженерной дисциплине? О да, мы построили мост, но есть несколько сотен ненужных железных балок, которые мы забыли убрать… О да, мы внедрили новый чип, но в этой области всего несколько тысяч транзисторов, которые мы больше не используем… и так далее.
.
Комментарии
Сделайте комментарий или Просмотрите существующие комментарии С помощью Disqus