• Home
  • Docker
  • Kubernetes
  • LLMs
  • Java
  • Ubuntu
  • Maven
  • Big Data
  • Archived
ColdFusion | CFScript
  1. Le langage de script de ColdFusion
  2. Utiliser les conditions (if / else / else if)
  3. Utiliser les conditions (switch)
  4. Utiliser les boucles (for)
  5. Gérer les exceptions et les erreurs (try / catch)
  6. Forcer l'initialisation des variables
  7. Afficher des données
  8. Déboguer
  9. Mettre fin à l'exécution d'un bloc du code
  10. Gérer le formatage et l'encodage de la page
  11. Gérer les threads
  12. Gérer les transactions
  13. Inclure des fichiers
  14. Développer des composants
  15. Gérer les fichiers et dossiers

  1. Le langage de script de ColdFusion
    ColdFusion définit le tag CFScript qui peut être utilisé pour écrire des scripts en utilisant une syntaxe relativement proche à celle des langages PHP ou Perl. Il est possible de coder presque tout avec le tag CFScript (voir le chapitre CFScript pour plus de détails) ; on peut utiliser les opérateurs, les structures de contrôles, les fonctions, etc.
    Voici un exemple de code avec le tag CFScript :

    ColdFusion offre aussi un langage à base de balises XML. Il s'agit, surprise, surprise, du langage CFML (ColdFusion Markup Language). Voici le même exemple en utilisant les tags CFML :

    Bien que le code CFScript puisse être acceptable pour quelques lignes de code, il peut devenir une "casse tête" pour les pages qui contiennent des centaines, voir des milliers de lignes de code.

    Il ne faut pas oublier que nous développions des pages Web qui contiennent un mix du langage statique (HTML) et du langage dynamique (ColdFusion), et donc approcher la syntaxe de ces deux langages (en optant pour CFML) va certainement rendre le code plus lisible et plus facile à développer et à maintenir. D'autant plus que le code CFML peut être "facilement" compréhensible par les non-programmeurs !

    Normalement, on ne devrait pas avoir le souci du mix des langages pour les pages qui font uniquement des calculs et des traitements des données. À noter que ColdFusion a introduit une nouveauté dans sa version 9 en offrant l'équivalent de nombreux tags CFML en CFScript, par exemple, query, storedproc, et http (voir le chapitre CFScript pour plus de détails). Mais est-ce une raison de plus (autre que la performance) pour justifier l'utilisation du tag CFScript ?

    Peut être oui, mais il y a un autre point à prendre en considération, celui de la syntaxe XML de CFML : si vous êtes amener un jour à développer un analyseur du code (éventuellement pour ajouter un traitement spécifique lors du déploiement de l'application), alors certainement vous n'allez pas regrettez votre choix si vous avez opté pour le langage CFML.

    Aussi, il faut noter que certains tags CFML permettent des traitements spéciaux, ce qui n'est pas nécessairement le cas pour leurs correspondants en CFSCript.
    Par exemple, le tag cfloop ajoute un teste implicite sur le temps d'expiration de la requête.

    Pour conclure, les deux solutions sont supportées par ColdFusion et éventuellement il devrait y avoir des cas où une solution serait plus adéquate qu'une autre. Le choix dépend complètement du jugement du développeur et des normes de programmation adoptées par la compagnie.

    Ce chapitre présente les équivalents des tags CFML en CFScript.
  2. Utiliser les conditions (if / else / else if)
    CFML
    CFScript
    cfif
    if
    cfelse
    else
    cfelseif
    elseif
  3. Utiliser les conditions (switch)
    CFML
    CFScript
    cfswitch
    switch
    cfcase
    case
    cfdefaultcase
    default
  4. Utiliser les boucles (for)
    CFML
    CFScript
    cfloop
    Boucles avec un indice : for
    Boucles conditionnelles : while, do while
    Boucles sur les structures : for in
    Il n'y a pas d'équivalent du tag cfloop en CFScript pour boucler sur les listes, les requêtes, et les objets.
    cfbreak
    break
    cfcontinue
    continue
  5. Gérer les exceptions et les erreurs (try / catch)
    CFML
    CFScript
    cftry
    try
    cfcatch
    catch
    cffinally
    finally
    cfrethrow
    Rethrow
  6. Forcer l'initialisation des variables
    CFML
    CFScript
    cfparam
    param
  7. Afficher des données
    CFML
    CFScript
    cfoutput
    writeoutput
    cfsavecontent
    savecontent
  8. Déboguer
    CFML
    CFScript
    cfdump
    writedump
    cftrace
    trace
    cflog
    writelog
  9. Mettre fin à l'exécution d'un bloc du code
    CFML
    CFScript
    cfexit
    exit
    cfabort
    abort
    cfthrow
    throw
    cflocation
    location
  10. Gérer le formatage et l'encodage de la page
    CFML
    CFScript
    cfprocessingdirective
    pageencoding
  11. Gérer les threads
    CFML
    CFScript
    cfthread
    thread
    cflock
    lock
  12. Gérer les transactions
    CFML
    CFScript
    cftransaction
    transaction
  13. Inclure des fichiers
    CFML
    CFScript
    cfinclude
    include
    cfimport
    <cfimport path=""> : import
    Il n'y a pas d'équivalent du tag <cfimport taglib=""> en CFScript
  14. Développer des composants
    CFML
    CFScript
    cfcomponent
    component
    cfinterface
    interface
    cfproperty
    property
    cffunction
    function
    cfreturn
    return
    cfobject
    createobject, new
  15. Gérer les fichiers et dossiers
    CFML
    CFScript
    cfdirectory
    DirectoryCreate, DirectoryDelete, DirectoryList, DirectoryRename
    cffile
    FileDelete, FileSeek, FileSkipBytes, FileWriteLine
© 2025  mtitek