XSLT-Leistung

Ich arbeite für ein Projekt, das viele XSLT-Transformationen.
Die Transformationen werden so schnell wie möglich.

Zur besseren Lesbarkeit, die ich schrieb, viele von Ihnen teilen "business-Logik" und
"Ausgang". Zum Beispiel

<!-- Business Logic -->
 <xsl:variable name="myLocalVar">
      <xsl:value-of select="func:whateverComputation(params)" />
</xsl:variable>

<!-- more buss logic here -->

<!-- Output -->
<xsl:element name="mytag">
    <xsl:value-of select="$myLocalVar" />
</xsl:element>

Natürlich kann dies geschrieben werden, in einer kompakten form

<xsl:element name="mytag">
      <xsl:value-of select="func:whateverComputation(params)" />
</xsl:element>

Ist die erste form langsamer als der zweite?

  • Es gibt keinen Weg, wir können diese Antwort. Wir wissen gar nicht, was XSLT-Prozessor Sie verwenden. Der einzige Weg, um sicher wissen, ist, benchmark-it-yourself. (Auch setzen business-Logik in Ihren Vorlagen an alle, scheint unklug.)
  • Ich Stimme mit Avila. Aber bitte beachten Sie das xsl:variable-Deklaration weist einen gemeinsamen Fehler: ändern Sie es zu <xsl:variable name='x' select='f:comp(params)'/>. Ich habe gesehen, dies zu ändern, wird auf ein stylesheet geben eine 3-fache Geschwindigkeit-up, nicht zu erwähnen, die den code übersichtlicher und lesbarer.
InformationsquelleAutor Luixv | 2012-02-22
Schreibe einen Kommentar