• [^] # Re: YAML vs INI

    Posté par . En réponse à la dépêche YAML 1.2 est disponible !. Évalué à 4.

    À mon travail, quand je suis arrivé, on m'a demandé de définir un format de messages réseaux. L'unique contrainte était que les messages soient lisibles par un humain.

    Deux formats étaient pressentis : INI ou XML. D'un côté, j'avais donc un format simple, mais mal défini et peu puissant ; d'un autre : un format rigoureux et puissant, mais plutôt complexe - et faire un parser XML sur un petit powerpc avec 16 Mo de flash et 64Mo de RAM, je ne le sentais pas.

    Ben franchement, je suis bien content d'avoir trouvé yaml (et kwalify pour la partie schémas et validation). Résultat : le format des messages est parfaitement bien défini, sans ambiguïté, et ils sont triviaux à lire :
    - et par un humain à l'œil nu ;
    - et par un programme : il fut facile en effet, à partir des schémas kwalify, de faire un programme qui génère le code C++ pour charger n'importe quel message dans un objet et produire les bons messages d'erreurs si nécessaire (champ manquant, pas du bon type, etc.).

    NB : malheureusement il est hors de question de libérer tout ce code qui appartient à mon employeur peu accoutumé au logiciel libre :-( mais peut-être quand je serai au chômage, je le referai chez moi en GPL...