• [^] # XML pour les fichiers conf? c'est pas la panacéee non plus

    Posté par . En réponse à la dépêche Clickodrome vs. ligne de commande. Évalué à 1.

    Bof, un fichier XML peut vite devenir un trés trés gros bordel, même avec une indentation automatique et colorée.

    A la limite je préfére un fichier à la Apache, ou au moins, on a pas a s'ennuyer pour savoir si on a pas oublier de fermer une balise.

    Parce qu'avec le XML, selon la taille du fichier, fini l'édition facile avec "vi", ça devient de la programmation, et il faut l'outils de correction syntaxique et de validation pour vérifier la cohérence du fichier XML avant d'essayer de le soumettre à l'appli.

    Si on compare un fichier de conf classique et un fichier XML on a les points suivants

    - Fichier de conf découpé plus facilement en unités logiques pour du XML, les options d'une même unité sont géographiquement groupée. Contrairement ua fichier conf classique ou on peut mettre les infos n'importe où.

    - Par contre, simplicité et plus grande lisibilité d'un fichier conf classique, evite de surcharger le fichier avec trop d'information parasite comme en XML (toutes les balises ouvrantes/fermantes), pas besoin d'un outils de validation.

    Quand je vois que tout le monde gueule pour continuer à changer ses fichiers de conf avec "vi", et bien ne soyez pas trop pressé d'avoir un standard XML.
    Parce que le XML, c'est typiquement le genre de fichier qu'on génere automatiquement pour pas oublier un détail qui foutrait en l'air la cohérence du XML.
    Sans compter que pour parcourir un fichier XML pour rechercher une info, on passe par un "parser" sax ou "dom", ce qui alourdirait inutilement de petites applications par rapport à un simple lecturre ligne à ligne du fichier de conf.

    Sans compter la "surcharge" en nombre de caractéres frappés, c'est pas rare d'avoir des fichiers XML qui contiennent plus de balises que d'info a exploiter par ex:

    fichier conf apache classique :
    # commentaire
    toto=valeur1
    titi=valeur2


    fichier xml le plus simple possible
    <?xml version="1.0" standalone="yes"?>
    <!-- commentaire -->
    <racinne>
    <toto>valeur1</toto>
    <titi>valeur2</titi>
    </racinne>


    Et encore je ne gére pas les attributs dans cet exemple.

    L'utilisation de fichiers conf XML peut se défendre à conditin d'avoir en standard en ligne de commande les outils pour éditer et valider les XML et les API "sax" et "dom" intégrée à l'OS pour éviter d'avoir 36 libs (1 par appli) qui font la même chose sur le HD.
    Autrement, c'est un peu comme écrire un programme C sans un outils de vérification de syntaxe et de l'envoyer directement à un compilateur qui part du principe que le code est déjà testé.