Il est tout à fait possible d'éliminer certains bogues récurrents du code ASP en adoptant des méthodes d'écriture simples et efficaces.
L'indentation du code permet de déceler facilement diverses étourderies comme le montre l'exemple ci-dessous.
<%
Set obj_Recordset = Server.CreateObject("ADODB.Recordset")
obj_Recordset.Open "Select * from Fiche","DSN=personnel"
With Obj_Recordset
Compteur = .Fields.Count - 1
Dim i
Do While Not .EOF
For i = 0 To Compteur
.Fields.Item(i)
%Next
.MoveNext
Loop
.Close
Set obj_Recordset = Nothing
%>
<%
Set obj_Recordset = Server.CreateObject("ADODB.Recordset")
obj_Recordset.Open "Select * from Fiche","DSN=personnel"
With Obj_Recordset
Compteur = .Fields.Count - 1
Dim i
Do While Not .EOF
For i = 0 To Compteur
.Fields.Item(i)
Next
.MoveNext
Loop
.Close
End With
Set obj_Recordset = Nothing
%>
L'adoption de méthodes de convention pour nommer des variables peut être utile afin d'éviter des erreurs de nommage.
Dim Compteur Dim CompteurOk Dim CompteurNom Dim IntCompteur Dim BoolCompteur Dim StrCompteur
La déclaration Option Explicit permet d'éviter les dysfonctionnements dûs à des variables déclarées implicitement, c'est-à-dire sans avoir utilisé auparavant l'instruction Dim.
Option Explicit
Dim IntCompte_total, IntTVA
IntCompte_total = 1000000
'Le calcul provoque une erreur d'exécution critique
'dûe à deux variables mal orthographiées.
'Autrement, le résulat aurait été 0 à lap lace de 196000
Response.Write "Le taux de TVA permet de récupérer la somme de " _
& IntCompte_total & " Francs : " _
& (IntCompt_total * inttva) / 100 & " Francs" |
La conversion des variables dans des types de données adéquats au moyen de fonctions VBScript, donne le moyen de se prémunir contre les erreurs relatives aux affectations avec de mauvais types de données étant donné le type de variable courant dans les langages de script, soit Variant.
Dim IntResultat, BoolResultat, Chaine IntResultat = Cint(Variable_Variant) BoolResultat = CBool(Variable_Variant) Chaine = CStr(Variable_Variant)
Une lecture attentive et réfléchie de son code afin de détecter toutes les erreurs éventuelles dûes à la saisie de l'utilisateur ou à la transmission de valeurs de pages en pages ou encore à l'existence des pages ou fichiers pointées par des instructions demeure la meilleure solution d'éradication des erreurs.
<!-- Une erreur évidente s'est glissée dans le script -->
<%
Dim objError
Dim objConnection
Dim objRecordset
Set objConnection = Server.CreateObject("ADODB.Connection")
Set objRecordset = Server.CreateObject("ADODB.Recordset")
objConnection.Open strConnection
objRecordset.Open "select Nom, Prénom from Personnel", objConn
objRecordset.Close
objConnection.Close
Set objRecordset = Nothing
Set objConnection = Nothing
%> |
Enfin, la dernière étape avant de mettre l'application à la disposition des clients, reste essentielle est impérative. Elle consiste à tester rigoureusement l'ensemble de l'application en se mettant à la place de l'utilisateur final en se soumettant au parcours que ce-dernier aura à subir. Par la même occasion, cela donnera un aperçu de la convivialité et de l'ergonomie du site...