7

私は、非常に長いメソッド (10k 行!) と、try-finally および try-except ブロックの奇妙な使用法を持ついくつかのコードを扱っています。後者のいくつかは、それ自体が長く、メソッドの開始時に常に try があるとは限りません。

明らかにコードをリファクタリングしようとしていますが、それまでの間、ブロックの先頭にジャンプしてそこで何が起こっているかを確認できれば、いくつかの一般的な病状を修正することがはるかに簡単になります。20 ページ以上離れている場合、CNPack のレインボー (「コード構造のハイライト」) を使用しても見つけるのは面倒です。

私は D2010 を使用しており、GExperts (DelForExp を使用)、CNPack、および DDevExtensions がインストールされていますが、try から finally または back にジャンプできるものが見つかりません。何か不足していますか?これを取得するために使用できる別のアドインはありますか?

4

2 に答える 2

0

コードをリファクタリングする場合は、各 Try Except/finally End コード ブロックに名前を付け、メイン メソッド内の別の関数/プロシージャに移動することをお勧めします。

2 番目のアドバイスは、最も内側の try except/finally end コード ブロックから始めます。

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 ;

これが問題の解決に役立つことを願っています。

于 2013-06-25T06:52:55.650 に答える