Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #57 da revista programar. Faz já o download aqui!

taviroquai

xml2css

Mensagens Recomendadas

taviroquai    61
taviroquai

Viva,

Antes de ser um "projecto" venho perguntar o que vocês acham sobre a sua viabilidade.

Estava aqui a olhar para SASS... e considerando que a identação é baseada em yaml... sendo que yaml é um formato bastante usado como xml... e lembrei-me: "Porque raio não se usa um formato mais standard para gerar css? Porque não xml?!?"

Acho que não preciso enumerar as vantagens do formato XML... uma das desvantagens é o tamanho dos ficheiros xml que normalmente para representar a mesma informação são bem maiores do que yaml ou json.

Pegando no 1º exemplo que está no site sass:

$blue: #3bbfce
$margin: 16px

.content-navigation
  border-color: $blue
  color: darken($blue, 9%)

.border
  padding: $margin / 2
  margin: $margin / 2
  border-color: $blue

Em XML seria:

<root>
    <variable>
        <item name="blue">#3bbfce</item>
        <item name="margin">16px</item>
    </variable>
    <class>
        <item name="content-navigation">
          <properties>
            <property name="border-color">$blue</property>
            <property name="color" type="expression">darken($blue, 9%)</property>
          </properties>
        </item>
        <item name="border">
          <properties>
            <property name="padding">$margin/2</property>
            <property name="border">$margin/2</property>
            <property name="border-color">$blue</property>
          </properties>
        </item>
    </class>
</root>

Agora... para processar sass temos Ruby com o gem Sass... e uma das grandes vantagens de se usar Sass é podermos vigiar um ficheiro ou pasta e quando esse ficheiro ou pasta sofrem alterações, automaticamente o Gem aplica as alterações...

Esta operação de vigiar pastas e ficheiros já é outra coisa...

Basicamente seria algo que transformasse xml em css... o que acham?

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
mjamado    47
mjamado

Este tópico passou pelos pingos da chuva... B)

Em primeiro lugar, nota que essa notação do SASS está a ser descontinuada - agora o formato oficialmente suportado é o SCSS, que tem as chavetas e os ponto e vírgulas.

Em segundo... porquê?

O SASS foi criado para as CSS serem mais fáceis de criar e gerir, escrever menos código, além de acrescentar funcionalidades que há muito que fazem falta às CSS, sem se afastar muito da sintaxe da própria, o que trás benefícios aos designers que estão habituados a ela.

O que estás a propor é um afastamento dessa sintaxe, e, ainda por cima, aumentando a quantidade de código a introduzir, sem nenhuma vantagem visível... É de mim, ou isto não faz sentido nenhum?  :hmm:

Nota que eu uso SASS (e Compass) há mais de um ano, e a minha opinião pode já estar enviesada, um bocado ao nível de "hey, não mexas no meu queijo" - mas penso que não está.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
taviroquai    61
taviroquai

Ok... enumeraste algumas desvantagens desta ideia:

1. sintaxe muito diferente de sass/scss (uma desvantagem para quem já trabalha com sass/scss)

2. tamanho de ficheiros xml maior

Vou enumerar as vantagens do xml:

1. É fácil fazer parse a XML. Existem vários parsers em inúmeras linguagens de programação.

2. XML é usado em inúmeras frameworks.

3. Existe muita documentação sobre xml.

4. XML é extensível e podem se definir esquemas com XSD.

5. XML é fácil de ler e escrever para um humano, mais do que JSON, Yaml ou SASS.

6. XML é popular. Toda a gente sabe xml... até o meu papagaio. A grande vantagem para toda a gente; tanto para programadores como para não programadores...

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
yoda    139
yoda

"XML is cool" não é uma vantagem, é uma opinião. Não vejo a utilidade de andar a criar mais camadas em algo que em si já é simples.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
KTachyon    272
KTachyon

5. XML é fácil de ler e escrever para um humano, mais do que JSON, Yaml ou SASS.

Isto depende de muitas coisas... e, na minha opinião, considero que JSON e Yaml consegue ser mais legível que XML em muitos casos. Pelo menos se pegar em alguém que não perceba muito de informática, parece-me que é mais fácil de ler JSON que XML B)

Obviamente que depende da forma como formatares a coisa.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
mjamado    47
mjamado
1. sintaxe muito diferente de sass/scss (uma desvantagem para quem já trabalha com sass/scss)

O que eu digo é que é um afastamento ainda maior do CSS convencional. A sintaxe do SCSS é natural para quem está habituado a CSS; XML, não.

1. É fácil fazer parse a XML. Existem vários parsers em inúmeras linguagens de programação.

Não é fácil fazer parsing de XML, pelo contrário. Os parsers de XML são bichos muito complexos. É fácil de usar porque existem parsers para todas as linguagens e mais algumas, mas isso é outra conversa.

2. XML é usado em inúmeras frameworks.

INI files também, e não me vês advogar o seu uso... B)

3. Existe muita documentação sobre xml.

Vá lá, isto nem sequer é um argumento... :smoke:

4. XML é extensível e podem se definir esquemas com XSD.

SCSS também (via mixins), assim como LESS, e até a própria especificação CSS - tens é que esperar que os browsers suportem.

5. XML é fácil de ler e escrever para um humano, mais do que JSON, Yaml ou SASS.

Isso é relativo. CSS (e SCSS) é extraordinariamente fácil de ler para um humano - tem blocos, esses blocos têm regras. No caso do SCSS, ainda melhor, porque o nesting ajuda a entender o próprio cascading das regras. XML, neste caso em concreto, só introduz mais bloat.

6. XML é popular. Toda a gente sabe xml... até o meu papagaio. A grande vantagem para toda a gente; tanto para programadores como para não programadores...

E quê? Terias de saber CSS à mesma, para introduzir as propriedades e valores dos elementos em XML. Se já sabes CSS, mais vale usá-lo directamente, ou algo que tenha uma sintaxe similar como... SCSS.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
taviroquai    61
taviroquai

O que eu digo é que é um afastamento ainda maior do CSS convencional. A sintaxe do SCSS é natural para quem está habituado a CSS; XML, não.

E quê? Terias de saber CSS à mesma, para introduzir as propriedades e valores dos elementos em XML. Se já sabes CSS, mais vale usá-lo directamente, ou algo que tenha uma sintaxe similar como... SCSS.

XML serve para representar qualquer tipo de informação. Se quiser representar legumes é claro que tenho que conhecer os legumes...

Não é fácil fazer parsing de XML, pelo contrário. Os parsers de XML são bichos muito complexos. É fácil de usar porque existem parsers para todas as linguagens e mais algumas, mas isso é outra conversa.

Sim, o seu uso é outro ponto. O importante aqui a reter é que existem muitos parsers XML em várias linguagens, mais do que para sass/scss.

INI files também, e não me vês advogar o seu uso... B)

Sim, mas isso não torna o XML menos importante.

SCSS também (via mixins), assim como LESS, e até a própria especificação CSS - tens é que esperar que os browsers suportem.

Tudo bem mas XML é mais largamente usado/suportado do que acabaste de referir.

Isso é relativo. CSS (e SCSS) é extraordinariamente fácil de ler para um humano - tem blocos, esses blocos têm regras. No caso do SCSS, ainda melhor, porque o nesting ajuda a entender o próprio cascading das regras. XML, neste caso em concreto, só introduz mais bloat.

Isto depende de muitas coisas... e, na minha opinião, considero que JSON e Yaml consegue ser mais legível que XML em muitos casos. Pelo menos se pegar em alguém que não perceba muito de informática, parece-me que é mais fácil de ler JSON que XML :cheesygrin:

Obviamente que depende da forma como formatares a coisa.

Sim, é um pouco subjectivo... mas factos são de que xml é bastante mais usado que sass/scss.

Sobre o cascading de regras, xml é óptimo para representar informação em cascata, hierarquias ou árvores.

"XML is cool" não é uma vantagem, é uma opinião. Não vejo a utilidade de andar a criar mais camadas em algo que em si já é simples.

Em geral, os argumentos que apresentaram fazem-me lembrar a "inércia" em usar xml no tempo em que xml apareceu... "se isto já funciona assim para que vou agora usar isso?".

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
yoda    139
yoda

Pedes opiniões mas depois tentas descredibilizá-las .. O que vale é que já sei que és assim B)

Se acreditas no projecto, o que te impede de ir em frente? Se é bom, fá-lo e mostra :cheesygrin:

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
taviroquai    61
taviroquai

Pedes opiniões mas depois tentas descredibilizá-las .. O que vale é que já sei que és assim B)

Se acreditas no projecto, o que te impede de ir em frente? Se é bom, fá-lo e mostra :cheesygrin:

Admira-me é vocês não acreditarem... não me digam que não usam xml... ou será que o problema é a ideia não vir de um programador reconhecido mundialmente B)

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
taviroquai    61
taviroquai

Vejam por outro ponto de vista...  B)

<html>
    <head>
        <style>
              <var name="blue">#0000FF</var>
              <class name="azul">
                  <property name="color">$blue</property>
              </class>
        </style>
    </head>
    <body class="azul"></body>
</html>

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
mjamado    47
mjamado
Pedes opiniões mas depois tentas descredibilizá-las .. O que vale é que já sei que és assim B)

Isso é o decurso normal de uma discussão...

XML serve para representar qualquer tipo de informação. Se quiser representar legumes é claro que tenho que conhecer os legumes...

(...)

Tudo bem mas XML é mais largamente usado/suportado do que acabaste de referir.

(...)

Sim, é um pouco subjectivo... mas factos são de que xml é bastante mais usado que sass/scss.

Estás a comparar o incomparável. SASS (e LESS) são sintaxes com um objectivo bastante concreto, que é facilitar e agilizar o CSS; XML é uma linguagem que serve para tudo e um par de botas. Comparar a base de utilizadores de um e de outro não é possível, e é intelectualmente desonesto.

Sobre o cascading de regras, xml é óptimo para representar informação em cascata, hierarquias ou árvores.

Sinceramente, tal como o KTachyon, prefiro JSON. E o CSS (e, por extensão, o SCSS) é muito semelhante ao JSON.

Em geral, os argumentos que apresentaram fazem-me lembrar a "inércia" em usar xml no tempo em que xml apareceu... "se isto já funciona assim para que vou agora usar isso?".

Se não há vantagens, mudar só porque sim dá, geralmente, maus resultados. O que estás a propor não traz nenhuma vantagem ao que já é oferecido por numerosos outros métodos, sejam linguagens como o SASS ou LESS, seja por geração de CSS on-the-fly de atributos numa BD, por exemplo (é mais ou menos o que faz a plataforma LiveJournal).

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
taviroquai    61
taviroquai

Só o footprint disso já começa a parecer assustador, comparado com as alternativas.

Sinceramente, tal como o KTachyon, prefiro JSON. E o CSS (e, por extensão, o SCSS) é muito semelhante ao JSON.

Na verdade, também gosto mais de JSON do que xml para representar dados... iniciei a discussão com xml porque penso que seja mais utilizado do que JSON.

E reconheço que xml torna-se enorme, logo mais susceptível a erros quando produzido pelo humano.

Mas não descarto de um todo a hipótese de xml2css ou json2css.

EDIT: um japones ja fez json2css  B) em perl

http://d.hatena.ne.jp/hyuki/20061219/json2css

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita a nossa Política de Privacidade