L’autocomplétion pour les classes est disponible depuis 4D v18 R4. Cette fonctionnalité simplifie l’écriture du code et limite les erreurs dans les noms de fonctions, par exemple. Mais elle ne les évite pas totalement ; il est facile d’inverser deux lettres ou d’oublier une majuscule, et de devoir ensuite passer du temps à chercher pourquoi votre code ne fonctionne pas.
Alors quoi de mieux que de demander à 4D de vérifier si les classes ou fonctions existent déjà ?
À partir de 4D v19 R4, un avertissement s’affiche dans l’éditeur de code si vous appelez une fonction qui n’existe pas.
Ce qui est vérifié
Lorsque vous déclarez ou instanciez une classe, le nom de la classe est vérifié. De même, le nom des fonctions est validé pour les classes 4D, les classes utilisateur ou les classes ORDA utilisateur.
Et où ?
L’éditeur de code
Lorsque vous écrivez votre code, si vous faites une faute d’orthographe ou utilisez la mauvaise fonction, un avertissement apparaît à gauche de la ligne.
Fenêtre du compilateur
Comme tous les autres avertissements de 4D, vous trouverez les avertissements dans la fenêtre du compilateur.
Commande Compiler le projet
Depuis la v19, vous pouvez lancer un « check syntax » par programmation grâce à la commande Compile project. L’objet status retourné par la commande contient tous les avertissements :
var $options; $status: Object
$options :=New object()
$options .targets:=New collection()
$status :=Compile project($options)
Voici le contenu de l’objet $status :
{ "success": true, "errors": [ {..}, { "message": "The function or property orderby is incompatible with the type driversSelection. (550.2)", "isError": false, "code": { "type": "projectMethod", "methodName": "Method2", "path": "Method2", "file": "[object File]" }, "line": 6, "lineInFile": 7 }] }
Et…
N’hésitez pas à faire des commentaires sur le forum 4D.