Newsletter Developpez.com

Inscrivez-vous gratuitement au Club pour recevoir
la newsletter hebdomadaire des développeurs et IT pro

Le Web bientôt doté d'un nouveau langage ?
CAS s'inspire du CSS pour proposer une définition des attributs des balises HTML dans une feuille

Le , par Hinault Romaric, Responsable .NET
Tab Atkins Jr, un représentant de Google au sein du W3C (World Wide Web Consortium) vient de proposer à l’organisme un nouveau langage de script pour normalisation.

Le langage CAS pour Cascading Attribute Sheets s’inspire grandement du CSS (Cascading Style Sheets), à la différence qu’il est basé sur un concept d’attributs HTML.

L’idée de base autour de ce nouveau langage est que tout comme avec le CSS, les développeurs pourront définir dans un fichier des attributs pour les balises HTML, qui seront directement appliqués à l’ensemble d’une page lors de l’appel de ces balises.

Concrètement, le développeur pourra par exemple écrire le code CAS suivant :

Code CSS : Sélectionner tout
1
2
3
4
  
video { 
  preload: metadata; 
}

Lors de l’utilisation de la balise video dans son application Web, l’attribut « preload » sera automatiquement ajouté et sa valeur sera définie à « metadata ».

Un lien vers le fichier CAS doit au préalable être inclus dans la page HTML en utilisant la balise script <script type="text/cas">.

Selon la description d’Atkins, la grammaire de CAS est pratiquement identique à celle du CSS. La feuille d’attribut peut contenir des règles, des sélecteurs, des accolades et des déclarations.

Au niveau où le CSS a normalement un nom de propriété, CAS utilise un nom d’attribut. Tout jeton unique comme une chaine, un numéro ou un identifiant peut être utilisé pour définir la valeur d’un attribut.

Compte tenu de sa similitude avec le CSS, CAS peut être facilement pris en charge par les navigateurs qui pourront utiliser l’analyseur CSS existant en y apportant très peu de modifications.

La proposition de Tab Atkins Jr est en train d’être analysée par le W3C qui n’a pas encore pris une décision sur son adoption ou pas.

Source : W3C

Et vous ?

Que pensez-vous de CAS ? Intéressant ou le Web n'a pas besoin d'un langage de script de plus ?


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse

Avatar de Kamule Kamule - Futur Membre du Club https://www.developpez.com
le 11/09/2012 à 13:53
Un nouveau moyen de mutualiser les déclarations c'est toujours bon à prendre. Ca risque en plus de faciliter la mise en cache de ce genre de données.
Et comme dit dans l'article, c'est très proche du CSS, donc facile à ajouter aux navigateurs. Par contre, un moyen simple de gérer la compatibilité avec les anciens navigateurs ?
Avatar de grunk grunk - Modérateur https://www.developpez.com
le 11/09/2012 à 14:20
Rien que pour avoir des pages HTML qui vont à l'essentiel , ca pourrait être sympa.

D'un autre coté j'ai du mal à voir combien de fois on a besoin d'attributs qui pourraient être mutualisés dans une fichier à part ?

Parce que si c'est pour ecrire

Code : Sélectionner tout
<a id="lelien">Mon lien</a>
Code : Sélectionner tout
1
2
3
4
#lelien { 
    href : 'http://google.com'; 
    class : 'misenforme'; 
}
Ca présente quand même pas beaucoup d'intérêt.
Avatar de transgohan transgohan - Expert confirmé https://www.developpez.com
le 11/09/2012 à 14:39
Je suis tout aussi sceptique que grunk, je ne suis pas dans le métier mais lorsque je développe quelques petits sites je n'ai jamais à utiliser des attributs HTML autres que title, alt ou href (et sans doute deux ou trois que j'oublie mais bon vous voyez le nombre quoi...).
La grosse part de renseignement se trouve dans la forme du DOM et des propriétés CSS.
Avatar de gwinyam gwinyam - Membre chevronné https://www.developpez.com
le 11/09/2012 à 15:25
Dans une application riche, cela pourrait avoir un sens. Mais en fait non, puisque dans une application riche, vous utilisez un moteur de templates. Et si vous l'utilisez correctement, vous aurez rarement à répéter une balise avec les mêmes attributs.

De plus, ça fera un fichier de plus à charger, pas terrible pour le chargement doux. Vous allez charger la structure du site (HTML simple), puis la description précise (CAS) de la structure puis l'apparence de la structure (CSS) puis son comportement (JS). Sans compter les nombreux médias et annexes de scripts. Ça va pas alléger les sites ça.

Comme grunk, je suis très sceptique. Je demande à voir.
Avatar de zeyr2mejetrem zeyr2mejetrem - Membre chevronné https://www.developpez.com
le 11/09/2012 à 16:16
C'est moi ou tous les 2 jours, quelqu'un sort un "nouveau" langage qui doublonne fonctionnellement les existants ??

Franchement, mis à part contribuer à la fragmentation des langages (qui est déjà un bord*l apocalyptique), à quoi sert ce truc ?
Avatar de thelvin thelvin - Modérateur https://www.developpez.com
le 11/09/2012 à 16:53
À la limite j'ai rien contre l'architecture proposée par ce truc.
Simplement... Bon, moi je veux bien croire que cela puisse possiblement servir à quelque chose.
Mais j'aimerais un exemple. Parce que, désolé, mais des balises <video>, dans les rares cas où j'en ai plus d'une par page, ben elles ne font justement pas la même chose.
Avatar de air-dex air-dex - Membre émérite https://www.developpez.com
le 11/09/2012 à 17:19
Ca ressemble à du QML.
Avatar de vanquish vanquish - Membre éclairé https://www.developpez.com
le 11/09/2012 à 17:39
Même si l'intérêt reste très limité, dire que tout mes href de telle classe sont des popup ou tous mes bouton de telle classe sont de type "button" (et pas submit) ça peut être utile.

Mais déjà que l'intérêt reste très limité, à la base ; tant que 100% des navigateurs de le supporteront pas, ça n'aura pas d'intérêt du tout.
Qui va se faire suer à gérer 2 types de navigateurs pour si peu ?
Il va avoir du mal à s'imposer.
Avatar de la.lune la.lune - Membre chevronné https://www.developpez.com
le 11/09/2012 à 18:09
Citation Envoyé par grunk  Voir le message
Parce que si c'est pour ecrire

Code : Sélectionner tout
<a id="lelien">Mon lien</a>
Code : Sélectionner tout
1
2
3
4
#lelien { 
    href : 'http://google.com'; 
    class : 'misenforme'; 
}
Ca présente quand même pas beaucoup d'intérêt.

D'abord le facteur important ça permettra de factoriser plusieurs attributs qui sont les même dans plusieurs balise. et ça c'est un +10.

D'autre part toute personne ayant fait du html5 sait très bien que les balises sont trop long parce que les attributs sont nombreux alors du coup on a un gain et modularise nos attributs aussi.

Et pourquoi pas comme ça :

Code : Sélectionner tout
<a>Mon lien</a>
Si par exemple ta balise a étant le 3e on peut avoir ceci
Code : Sélectionner tout
1
2
3
4
5
 
a:nth-child(3){ 
    href : 'http://google.com'; 
    class : 'misenforme'; 
}
N'est ce pas un gain et au cas ce même lie repète dans d'autre balise. En tout cas je dis oui pour ce projet et merci pour la personne ayant réfléchi sur ça +100
Avatar de Lutarez Lutarez - Membre chevronné https://www.developpez.com
le 11/09/2012 à 19:49
Dans le cas d'un site exploitant cette techno à 200%, ça va bien simplifier la vie des aspirateurs de site ! J'ouvre le fichier .cas et hop ! Plus qu'à se servir

Bref, n'étant pas très dev web, je ne vois pas l'intérêt pour le moment (comme dit plus haut, les templates, c'est marche très bien), mais j'espère que cela verra le jour pour les personnes qui peuvent en tirer profit (au moins ils nous ont pas encore réinventer un langage ce coup-ci !)
Offres d'emploi IT
Data scientist senior H/F
Safran - Ile de France - Magny-les-Hameaux (Saclay)
Ingénieur H/F
Safran - Ile de France - Moissy-Cramayel (77550)
Architecte et intégrateur scade/simulink H/F
Safran - Ile de France - Vélizy-Villacoublay (78140)

Voir plus d'offres Voir la carte des offres IT
Contacter le responsable de la rubrique Accueil