Trucs d’optimisation des pages asp
25+ ASP Tips to Improve Performance and Style
Les trucs suivants sont simples et faciles à utiliser :
Tip 10: Use Option Explicit
Force la déclaration des variables (avec dim) et nous évite ainsi de faire des erreurs dû à une faute de frappe dans le nom des variables. De plus, les variables déclarées sont plus rapides que celles qui ne le sont pas.
Tip 11: Use Local Variables in Subroutines and Functions
Également, les variables locales sont plus rapides que les variables globales et le code est plus clair.
Tip 12: Copy Frequently-Used Data to Script Variables
C’est plus rapide lire une variable que lire la valeur d’un item dans une collection donc si on a l’intention de l’utiliser plusieurs fois, on l’affecte à une variable.
idItem = RS("idItem")
nomItem = RS("nomItem")
Tip 15: Batch Inline Script and Response.Write Statements
Un exemple vaut mille mots :
<table>
<% For Each fld in rs.Fields %>
<th><% = fld.Name %></th>
<%
Next
While Not rs.EOF
%>
<tr>
<% For Each fld in rs.Fields %>
<td><% = fld.Value %></td>
<% Next
</tr>
<% rs.MoveNext
Wend %>
</table>
C’est plus efficace de faire :
<table>
<%
For each fld in rs.Fields
Response.Write ("<th>" & fld.Name & "</th>" & vbCrLf)
Next
While Not rs.EOF
Response.Write ("<tr>")
For Each fld in rs.Fields %>
Response.Write("<td>" & fld.Value & "</td>" & vbCrLf)
Next
Response.Write "</tr>"
Wend
%>
</table>
Tip 18: Use TypeLib Declarations for ADO and Other Components
Au lieu d’inclure le fichier adovbs.txt, utiliser les valeurs des constantes.
Tip 20: Avoid String Concatenation in Loops
Faire un response.write() dans une boucle à la place de concaténer des strings.
s = "<table>" & vbCrLf
For Each fld in rs.Fields
s = s & " <th>" & fld.Name & "</th> "
Next
While Not rs.EOF
s = s & vbCrLf & " <tr>"
For Each fld in rs.Fields
s = s & " <td>" & fld.Value & "</td> "
Next
s = s & " </tr>"
rs.MoveNext
Wend
s = s & vbCrLf & "</table>" & vbCrLf
Response.Write s
Éviter :
s = ""
For i = Asc("A") to Asc("Z")
s = s & Chr(i)
Next
Tip 23: Use Trailing Slashes in Directory URLs
Toujours mettre un dernier / lorsque l’url pointe sur un dossier. Lorsqu’il n’y a pas de /, le browser fait 2 requêtes au serveur une sans le / et la seconde avec.
Ex. : www.radio-canada.ca/nouvelles/dossiers/