Нахождение попытки за исключением или, наконец,
Я имею в виду некоторый код, который имеет фантастически длинные методы (10 тыс. Строк!) И несколько странное использование блоков try-finally и try-Кроме. Некоторые из них сами по себе длинные и не всегда имеют попытку в начале метода.
Очевидно, я пытаюсь реорганизовать код, но в то же время было бы гораздо проще исправить пару распространенных патологий, если бы я мог перейти к началу блока и посмотреть, что там происходит. Когда осталось более 20 страниц, найти его даже с радугой CNPack ("подсветка структуры кода") просто утомительно.
Я использую D2010 и у меня установлены GExperts (с DelForExp), CNPack и DDevExtensions, но я не могу найти ничего, что позволило бы мне перейти от попытки к окончанию или назад. Я что-то пропустил? Есть ли еще одна надстройка, которую я могу использовать, чтобы получить это?
2 ответа
GExperts имеет это в редакторе Эксперты: "Перейти к разделителю соответствия", с комбинацией клавиш Ctrl+Alt+Right по умолчанию. Если вы вызываете его несколько раз, цикл try
к соответствию finally
или же except
, чтобы end
, затем вернемся к try
, и так далее.
Если вы собираетесь провести рефакторинг кода, я бы посоветовал вам назвать каждый блок кода Try Except/finally End и переместить его в отдельную функцию / процедуру в методе main.
Второй совет, начните с самой внутренней попытки, за исключением / наконец, заканчивайте блок кода.
procedure class1.method1 ;
var
anyVariables : ... ;
begin
....
try
....
finally
...
end ;
....
end ;
,
procedure class1.method1 ;
var
anyVariables : ... ;
procedure first_try_finally_block ;
begin
try
....
finally
...
end ;
end ;
begin
....
first_try_finally_block
....
end ;
Я надеюсь, что это поможет вам решить вашу проблему.