1

XPath式の代わりにxsl変数を使用すると、XSLTのパフォーマンスは向上しますか?更新:処理にXalanを使用しています。

4

2 に答える 2

3

XPath 式の代わりに xsl 変数を使用すると、XSLT のパフォーマンスは向上しますか?

これは、使用されている XSLT プロセッサによって異なります。XSLT プロセッサに優れたオプティマイザがある場合、多くの場合、XSLT プロセッサ自体が因数分解を実行し、これを手動で実行しても実際の速度は向上しません。

でも:

  1. 評価結果を変数に「保存」すると、コードが短くなり、読みやすくなります。

  2. これは、DRY (Don't Repeat Yourself) のベスト プラクティスをうまく適用したものです。

  3. オプティマイザーに頼ってもうまくいくとは限りません。

  4. 関数/テンプレートのライブラリを作成する場合など、複数の異なる XSLT プロセッサによって実行されることを意図した移植可能なコードを作成する場合、オプティマイザに依存するべきではありません。

Saxon などの一部の XSLT 2.0 プロセッサでは、xsl:function関数メモ化を有効にすることで実行を最適化することもできます。Saxon の場合、これは extension 属性saxon:memo-functionを に設定することによって行われます"yes"

于 2013-01-23T13:11:44.350 に答える
0

それは私の経験ですが、より重要なのは、コードの可読性を向上させることです。また、コードの再利用がより簡単になります。

于 2013-01-23T12:53:35.053 に答える