18.10.2012, 09:40 | #1 |
Участник
|
Мертвый код
Существует ли встроенный в AX функционал для глобального поиска мёртвого кода (элементов, которые не используются) в репозитарии?
|
|
18.10.2012, 10:02 | #2 |
Участник
|
можно убрать лишнии пробелы
|
|
|
За это сообщение автора поблагодарили: bodeaux (1). |
18.10.2012, 10:36 | #3 |
Участник
|
Несовсем понятно:
1. Хочется в коде почистить? -допустим объявлена переменная или таблица и не используется в коде 2. Хочется объекты репозитария почистить? - к примеру создана таблица и забыта, нигде не участвует |
|
18.10.2012, 11:27 | #4 |
Участник
|
И то и другое, и можно без хлеба. Конечно, чистка репозитария интересует гораздо больше, т.к. если код в методах можно почистить кустарными способами, то как чистить мусор из AOT вообще неясно.
|
|
18.10.2012, 11:34 | #5 |
Administrator
|
Цитата:
Цитата:
Насколько такой способ выдачи результата удобен - это уже второй вопрос. Но это встроенный функционал для глобального поиска мертвого кода. Кстати, нужно учесть - что данный способ может быть неточен. Если метод "не засветился" в перекрестных ссылках - то он может быть вызван через Dict*-классы или просто через переменную типа Object. А отследить вызов метода в Runtime нельзя даже вручную (особенно, если этот вызов "глубоко закопан").
__________________
Возможно сделать все. Вопрос времени |
|
|
За это сообщение автора поблагодарили: bodeaux (1). |
18.10.2012, 11:34 | #6 |
северный Будда
|
А если выставить уровень компилятора на 4 и запустить глобальную перекомпиляцию?
невостребованные куски кода оно точно найдёт
__________________
С уважением, Вячеслав |
|
|
За это сообщение автора поблагодарили: bodeaux (1). |
18.10.2012, 12:00 | #7 |
Участник
|
непонятна цель мероприятия. заняться нечем? хочется по феншую?
|
|
18.10.2012, 13:01 | #8 |
Модератор
|
Та же, с которой в доме полы моют и мусор выносят, я полагаю. Я к примеру модификации с "Переменная объявлена, но нигде не используется" обратно заворачиваю
__________________
-ТСЯ или -ТЬСЯ ? |
|
18.10.2012, 13:03 | #9 |
Участник
|
Мертвый код требует ухода - надо его поднимать на новые версии, поддерживать его компилируемость и он мешается в перекрестных ссылах.
Так как в аксапте можно использовать reflection для вызова методов, то мертвый код модно определить только внутри непубличных методов. |
|
18.10.2012, 13:15 | #10 |
Участник
|
если следовать определению мертвого кода из топика, то объявленные и не использованные переменные (типы, методы и проч) особо не мешают в системе (и легко находятся и удаляются при острой необходимости), в системе обычно мешает всеми забытый и неиспользуемый функционал, который найти не так просто, а вычистить бывает еще сложней
|
|
18.10.2012, 13:26 | #11 |
Участник
|
мочему бы не удалить то, что мешает "не особо", если это сделать легко. Кстати, неиспользуемые переменные в 2012 уже ошибка BP (толи перед выпуском 2009, то ли 2012 их пересортировали по важности)
|
|
18.10.2012, 13:30 | #12 |
Участник
|
если это делать сразу по завершению модификации, то нужно. а вот если ставить себе цель найти такие переменные в системе, то не вижу смысла
|
|
18.10.2012, 13:51 | #13 |
Administrator
|
Цитата:
Цитата:
Во-вторых - при таком подходе - проще обнаружить неиспользуемый функционал, о котором не имеешь представления. А вот уже удаление лишнего функционала (который не нужен и не является стандартом) - это уже штука полезная. В-третьих - можно просто проанализировать список мест (без правки кода). Это даст возможность оценить необходимость и сроки/стоимость этих работ. В-четвертых - это один из способов получения знаний о системе - если изначально таких знаний нет.
__________________
Возможно сделать все. Вопрос времени |
|
19.10.2012, 09:33 | #14 |
Участник
|
Господа, подскажите, как в редакторе кода включить отображение номеров строк.
|
|
19.10.2012, 09:54 | #15 |
Участник
|
В редакторе мертвого кода?
|
|
19.10.2012, 09:56 | #16 |
Участник
|
1. Обновиться до Ax 2012
2. Нажать спецкнопку в тулбаре редактора |
|
|
За это сообщение автора поблагодарили: sukhanchik (2), bodeaux (1). |
19.10.2012, 10:50 | #17 |
Участник
|
|
|
19.10.2012, 11:13 | #18 |
Участник
|
нет
|
|
20.10.2012, 11:49 | #19 |
Участник
|
ax-erp: Search un-used EDT'S using X++
вот и чистка EDT к примеру |
|
|
За это сообщение автора поблагодарили: bodeaux (1). |
|
|