Anubis
lundi 7 juin 2004 à 10:42
CITATION(Denis @ dimanche 06 juin 2004, 14:33)
Oui, forcément.

Mais une nouvelle question me vient à l'esprit... Dans une perspective d'internationalisation (mais aussi d'accessibilité et d'interopérabilité), ne devrions-nous pas tous utiliser
Unicode ?
Bon allez, je me lance dans mon premier billet avec des vrais morceaux d'arguments dedans.
Unicode c'est quoi ?Unicode est la norme qui permet d'écrire tous les langages avec un support informatique. Le but d'Unicode est donc de référencer toutes les écritures, puis de proposer des méthodes pour les stocker sur un ordinateur.
Le but en soit d'Unicode est donc clair, trouver un format de stockage qui permet à tous les caractères du monde d'être écrits, ceci en total contradiction avec l'ASCII qui ne permet d'écrire que les caractères américains.
Unicode devrait-il être utilisé ?Oui, il est trop souvent nécessaire de supporter plusieurs langages internationaux, notamment dans le cadre d'un outil de publication massivement international (forum de l'ONU), ou dans le cas d'un logiciel massivement international (système d'exploitation).
Unicode devrait-il être utilisé tout le temps ?Là c'est plus complexe. D'un côté, on peut trouver ceux qui défendent Unicode en disant que l'intéropérabilité est une doctrine qu'il faut toujours suivre quelqu'en soit le prix et qu'Unicode résout enfin tous les problèmes d'incompatibilité des fichiers en mode texte.
De l'autre, on trouve les gens qui décrient les inconvénients d'Unicode. En effet, être capable de stocker tous les caractères de la Terre implique un coùt en terme de place ou de calcul (ou les deux, bien souvent les deux).
Unicode aujourd'hui ?Il existe aujourd'hui le système des charsets, chacun permettant d'écrire dans une langue précise pour un moindre coùt (1 octet par caractère). Ceux-ci sont donc majoritairement utilisés sur le web aujourd'hui, même pour des langues très exotiques comme le japonais ou le chinois.
Unicode est « réservé » de part sa soit-disant lourdeur aux applications possédant plus de ressources, bien souvent les applications locales d'un ordinateur.
Mon avisMon expérience dans le domaine tent à me faire penser que l'idée des charsets, à la base fort intéressante, n'est finalement pas si bonne. En effet, dans un soucis d'économie de la ressource, il a fallu augmenter la complexité des données (devoir spécifier un charset) tout en conservant une compatibilité ASCII.
Cette compatibilité est pour moi une erreur, car bon nombre de gens confondent -- et c'est normal -- l'ASCII avec ces versions améliorées que sont les charsets.
Si l'on prend par exemple les protocoles en mode texte d'internet aujourd'hui (ftp, http, smtp), beaucoup n'ont pas cette notion de charset, et s'ils l'ont, beaucoup de clients ne songent pas à l'implémenter. Pourquoi ? Parce que cela « devrait fonctionner tout de suite » sans avoir à ajouter une information supplémentaire (le charset).
Or l'erreur la plus souvent et la plus rapidement commise est de croire en une compatibilité ASCII et une utilisation de caractères supplémentaires sans ajout d'informations supplémentaires, les applications ayant fait l'erreur de toujours disposer d'un charset par défaut, sans en avertir l'utilisateur.
Cette erreur n'aurait selon moi pas été commise si Unicode était devenu la norme de référence tout de suite, sans passer par des « bidouilles » faites sans un soucis d'intéropérabilité, pleins de charsets que les gens ne comprennent pas et ne savent pas changer.
Il faudrait une seule norme, comme à la bonne vieille époque de l'ASCII, une norme que tout le monde utiliserait sans se soucier du reste, et tout fonctionnerait.
Alors maintenant c'est décidé, je dis non au charsets, c'est mauvais pour mes fichiers. Avant ils étaient ternes et secs, maintenant avec Unicode et tous ses codages (UTF-8, UCS-2), mes fichiers sont soyeux, lisses et brillants.
Unicode c'est bon, mangez-en.