Dialetos da ECMAScript movem o RIA
Categories: Tecnologia, WEB 2.0
-
Nessa briga dos BIGPLAYERS pelo mercado de RIA um dos aspectos que mais se destacam não é a tentativa de reativar velhas idéias ou tecnologias, porque na informática os conceitos vem e vão, mas sim em algo que passa despercebido em todas as análises que leio: "Todos usam a ECMAScript". O foco sempre é direcionado à questão de que são linguagens de marcação, mas esquecem que mesmo sendo uma linguagem de marcação, todas utilizam como DSL para extender sua plataforma uma ENGINE baseada no ECMAScript.
Desde o Adobe Flex, passando pelo Laszlo, Microsoft Silverlight até à nova arma da SUN, o JavaFX, todos usam um dialeto da ECMAScript.
O poder do javascript já é reconhecido de longa data, desde STANDALONES ENGINES como Rhino (Mozilla) ou Embedded JavaScript (usado no servidor Samba 4) até o kernel do Acrobat Reader, todos os benefícios de uma linguagem dinâmica são explorados com um SUBSET da ECMAScript. A Adobe praticamente tem um porte no núcleo de todos os seus produtos para suportarem a extensão com javascript, desde o citado Acrobat, passando pelo Flash ao novíssimo Flex usando como base o ActionScript.
Sources Javascript
A SUN utilizou a linguagem F3 (Javascript + XML) no JavaFX, a Adobe vai de ActionScript, a Microsoft com seu XAML implementa usando o JScript.NET e o Laszlo usa a linguagem LZX que tem seu próprio motor, vejamos códigos entre os 4 produtos principais que se destacam nessa luta:
Silverlight:
Laszlo:
…
…
Flex:
JavaFX:
Como podem ver, apesar da diferença visual entre os códigos, eles conservam a essência da ECMAScript e possivelmente haverá uma tendência natural para que surjam idéias de integração entre as ferramentas.
Velhos problemas
Mudando um pouco de assunto nesse tema, essa nova tendência resgata velhos e incômodos problemas, que cada tecnologia é mundo fechado e a interoperabilidade é novamente descartada, a idéia de RIA não é nova, tivemos tecnologias interessantes como o XUL e até especificação com o XForms (que tentava ordenar uma forma de interface dinâmica na própria linha do XHTML) e não vingaram.
Hoje nós temos especificações organizadas pelo W3C que tentam orquestrar um ponto em comum entre as diversas plataformas no ambiente WEB. Sofremos por falta de uma estrutura dinâmica que torne a acessibilidade WEB semelhante ao ambiente DESKTOP. O RIA segue um segmento de que cada fornecedor tem suas próprias especificações, mesmo usando tecnologias semelhantes, cada uma tem seu modelo final.
A indústria sempre vai brigar pelo MARKET SHARE e um dos pontos que influencia suas receitas é a inovação que invariavelmente passa pelas tecnologias emergentes e os HYPES. Quantos produtos voces conhecem que não executam nada superior aos seus concorrentes mas que tem um plano de Marketing mais elaborado e uma visibilidade melhor?
Na minha opinião, a fragilidade desse tipo de tecnologia está justamente no ponto da interoperabilidade. Vamos e voltamos nesse mesmo ponto até que se chegue em especificações que agradem a todos.
Como eu mencionei o fato de que são linguagens de marcação e cada fornecedor tem seu próprio conjunto de tags, a interoperabilidade pode ser alcançada pelo dialeto comum que eles utilizam, no caso a ECMAScript. O caminho para essas tecnologias não morrerem, vai ser um jeito de fazer com que essas ferramentas conversem entre si, e na minha opinião a única forma seria pelo javascript.



May 9th, 2007 at 12:20 pm
Cara, realmente a briga por quem é o melhor, mais todos sabemos que pra cada problema existe uma solução, e no nosso caso uma linguagem se encaixa melhor em certos ambientes e outra se sobresai em outros.
Não existe a bala de prata.
May 9th, 2007 at 12:38 pm
Cesar, essa discussão é OT em relação a esse POST, o que escrevi é sobre as ferramentas/plataformas estarem voltando ao modelo fechado e que cada um tem sua própria especificação, o que é um retrocesso na minha opinião, a única chance dessa coisa toda dar certo é eles convergirem a um ponto em comum se quiserem que a coisa dê certo!
Mas para dizer que eu não respondi…
linguagens que são do mesmo contexto? qual a diferença prática entre Perl, Python e Ruby? e entre java e C# além do gosto pessoal?
Não existe bala de prata, mas linguagens dentro de um mesmo propósito são substituíveis sim!