Flash ou Silverlight ? Ou nenhum dos dois?

Por: em 07/03/08 na(s) categoria(s): Internet, Web 2.0


O Flash reinou soberano por anos a fio nos browser de todos, e era a primeira (e única) opção para provimento de recursos que extrapolassem o hipertexto estático e sem graça na internet.
Passou por várias fases: Do início conturbado e lento, passando pela ascensão meteórica quando suportado pelo IE5, a chegada do Action Script no Flash5, a evolução da interface, a compra pela Adobe. Em nenhum momento desta história houve algum concorrente para o Flash, se tratando de animações para a web.

Claro que neste meio termo, a internet evoluiu. Os computadores evoluíram. A banda disponível saltou, a potência do hardware cresceu, e, acima de tudo, a web 2.0 chegou. E mesmo assim, o flash continuava lá, intacto, liderando, sem concorrência alguma.

Foi neste cenário que a Microsoft resolveu desenvolver o Silverlight. E, não obstante a concorrência da Bill & Ballmer’s, as alternativas feitas no próprio browser, sem necessidade de plugins específicos, desde o surgimento do AJAX e da evolução do Javascript, também se tornam uma opção viável no desenvolvimento de aplicações web 2.0.

Dada esta liberdade de escolha, que os desenvolvedores para web nunca possuíram, qual a melhor opção para aquele trabalho específico?

Silverlight, o ‘Flash Killer’?

Em hipótese alguma. O Flash continua sendo a única alternativa viável para o desenvolvimento via GUI de animações e banners. Para animar coisas no Silverlight, usa-se código (XAML), e as ferramentas de design que a MS nos proporciona hoje não batem a robustez do Flash CS3. O Silverlight vem bater de frente com o Flash na área das RIA (Rich Internet Applications), área que, querendo ou não, o Flash nunca fez muito sucesso, nem com o advento do Flex.

Nesta área, do desenvolvimento de aplicações web, o Silverlight tem realmente uma boa vantagem. O Visual Studio 2008 proporciona desenvolvimento de aplicações em Silverlight, os próprios recursos do produto da MS são mais robustos do que os da Adobe, e o ActionScript3, embora seja uma linguagem legal de se trabalhar, ainda perde para o C#, no meu ponto de vista. Some a isso o anúncio do Symbian e os Tablets Nokia rodando Silverlight, e o gigantismo da empresa responsável, é uma opção bem viável, para início imediato.

Uma terceira força.

Embora sejam insuperáveis pelos recursos apresentados, tanto Flash quanto Silverlight usam plugins. A possibilidade de se encontrar um browser sem Flash é remota, mas, existe. Além disso, o Flash é um programa caro, o Visual Studio também, e um desenvolvedor freelancer ou uma empresa pequena não costumam ter condições de arcar com tais custos. E ai, parte-se para o ‘HTML sem graça’?

Não. Frameworks de animação, efeitos e recursos de carregamento dinâmico como (não restritos a) o Mootools, jQuery e Scriptaculous, são gratuitos, open source, e não exigem conhecimentos avançados para sua utilização. Animações simples, transições, efeitos de menu e carregamento assíncrono de documentos que normalmente só seriam possíveis com a utilização do Flash, agora são viáveis sem o uso do mesmo. E estas opções para fuga dos plugins são extendidas ao mercado empresarial também: Alternativas ainda mais robustas, de construção de GUI e aplicativos dinâmicos rodando em um navegador web usando apenas javascript estão disponíveis: O Backbase, o Bindows e o open source Qooxdoo, para citar alguns. Quaisquer delas rodam em qualquer servidor web, e podem ser dinamizadas com qualquer linguagem server-side a sua escolha, o que expande seus tentáculos sem limitações. E ainda deixa o webdesigner freetard feliz, porque é possível trabalhar usando apenas ferramentas de código escancarado.

E o Java ?

É, e o Java. Um plugin de mais de 10mb, que gera aplicações pesadas e não possui recurso para animações. Bom, o Java é um cara legal, nunca fez mal a ninguém, gente boa…

Brincadeiras a parte, a Sun não é tonta e já está tomando suas providências.

Opiniões de partidários do Silverlight, e partidários do Flash, bem como dos partidários das alternativas em javascript.

  • http://melinka.net Rocky

    Ótimo texto, eu sempre fui inimigo nº1 do flash, e agora sou do silverlitgt, digamos que sou uma w3ctardad…. :D

    Já desenvolvi alguns teste com o silverlight, pra web não me serviu pra nada.
    _____________________

    Muita Pimenta para sua vida!

    Primeiro Pro-Commenter da Blogosfera Brasileira.

  • http://serathiuk.com serathiuk

    O Silverlight vem bater de frente com o Flash na área das RIA (Rich Internet Applications), área que, querendo ou não, o Flash nunca fez muito sucesso, nem com o advento do Flex.

    Realmente o Flash(não sei o CS3, que não usei direito) nunca foi bom para RIA. O Flex é, mas o Flash não. Mas vou “brincar” com o Silverlight qualquer dia, aproveitando que estou aprendendo mais sobre C# e ASP.NET(programo só em PHP e Java). Mas a Microsoft lançou ou vai lançar algum plugin do Silverlight para Linux e outros SO’s?

    Ricardo Serathiuk

  • Caravana

    Melhor alternativa para Flash/Silverlight sem plugins é JavaScript + SVG, e futuramente HTML5 (áudio e vídeo).

    É uma pena que a Microsoft insista em não implementar SVG no IE (o único navegador que não suporta nada de SVG).

    • srafaeu

      É uma pena mesmo, fiz meu TCC com SVG, Java (Server, precisava ser rapido o desenvolvimento, sabe, sindrome de estudante) e Javascript. Mas com a compra da Macromedia pela Adobe o único projeto que tinha na época para renderizar SVG no IE acabou, agora com Silverlight então, nem da própria MS virá algo.

      Então agora é descobrir.. wth irá conseguir atingir os usuários?

  • Dennes

    Oi, Fabio !

    [quote]
    as ferramentas de design que a MS nos proporciona hoje não batem a robustez do Flash CS3
    [/quote]

    Quando você diz ferramentas de design da MS, você chegou a fazer essa comparação entre o CS3 e o Expression Blend ?

    Não sou designer e não trabalho com flash, por isso não posso comparar, mas adoraria se pudesse dar detalhes dessa comparação…

    []‘s

    Dennes

    ———————
    CidadaoCarioca
    BufaloInfo

    • http://www.fabiocardoso.com.br Fabião

      Cheguei.

      No caso, é uma opinião pessoal, sujeita a discrepâncias.

      Trabalhar com animações, com efeitos, tal qual filmes, o Flash ainda é bem superior, devido a sua interface.

      PORÉM, o fato do Silverlight trabalhar com animação por tempo, e não por frame, é um EXCELENTE prenúncio que o traseiro do flash até pra isso será chutado em breve.

      Um dos maiores problemas do Flash é o fato de ser frame based. Uma animação roda rápida num Core 2 Duo, e se arrastando num P3, e não há nada que se possa fazer quanto a isso. Time based, como no Silverlight, é muito mais interessante.

      E outra… o Blend é o primeiro trabalho da microsoft neste segmento. O Flash está ai a anos… Neste caso, deve-se contar também a nova curva de aprendizado.

  • Dennes

    Oi, Fábio !

    [quote]
    Além disso, o Flash é um programa caro, o Visual Studio também
    [/quote]

    O Visual Web Development Express, Visual Basic Express e Visual C# Express são gratuitos.

    []‘s

    Dennes

    ———————
    CidadaoCarioca
    BufaloInfo

    • TheDarkMaster

      Gratuitos porém “capados” como o XP Starter Edition… :P

      Se você consegue ler esta mensagem então o seu computador irá se auto-destruir em dez segundos, tenha um bom dia :)

      • Dennes

        Oi, Dark !

        O Framework .NET é gratuito.

        O Visual Studio é uma IDE, assim como suas edições express. As edições Express não possuem alguns recursos, na forma de IDE, mas se desejar tais recursos basta codificar.

        Você só perde alguma coisa em produtividade quando for utilizar estes recursos para os quais a express não foi feita. Se deseja maior produtividade, compre uma versão acima.

        []‘s

        Dennes

        ———————
        CidadaoCarioca
        BufaloInfo

  • http://rrmanzke.blogspot.com Tuco

    Apenas quero acrescentar que o Adobe Flex é usado apenas para camadas de apresentação de RIAs. O back-end pode ser Java, C#, ColdFusion, PHP, etc… com possibilidade de data-push via BlazeDS, LCDS e outros. Além disso temos o Adobe AIR, o framework da Adobe para aplicações desktop muito elogiado e usado por empresas como Nasdaq, AOL, eBay, etc…
    Atualmente este framework está disponível para Windows e Mac mas deve sair uma versão Linux em breve até porque existe um Flex Builder para Linux em desenvolvimento pela adobe.

    http://www.adobe.com/air

    • Bruno Gama

      [quote=Tuco]Apenas quero acrescentar que o Adobe Flex é usado apenas para camadas de apresentação de RIAs. O back-end pode ser Java, C#, ColdFusion, PHP, etc… com possibilidade de data-push via BlazeDS, LCDS e outros. Além disso temos o Adobe AIR, o framework da Adobe para aplicações desktop muito elogiado e usado por empresas como Nasdaq, AOL, eBay, etc…
      Atualmente este framework está disponível para Windows e Mac mas deve sair uma versão Linux em breve até porque existe um Flex Builder para Linux em desenvolvimento pela adobe.

      http://www.adobe.com/air/quote
      Justamente isso que iria falar, para exemplificar o flash como camada de apresentacao temos o framework lazlo (ou openlazlo) no qual codifica-se em Java e eh renderizao em Flash, ainda nao fiz testes com o mesmo, porem afirmar que o Silverlight tomara conta em RIA acho precipitado, olha o que tem de gente com certificao em action scripting da adobe, esse pessoal certamente ira fazer uso intenso do Flez e o AIR (assim que sair uma versao linux irei fazer alguns testes)
      +——————————– —-
      | There’s no place like 127.0.0.1

      • xymor

        Fiz uns testes com Silverlight ontem e achei muito bom especialmente o suporte a graficos 3D, uma coisa que sempre faltou no flash.

        Mas como tambem conheço lazlo, flex e Air tenho quase certeza que silverlight nao vai ganhar muito espaço como soluçao RIA.

        O que pode impulsionar é o acordo com a Nokia para portar SL para Symbian, parece ser perfeito como plataforma para jogos e programas mobiles, ainda assim, java a flash tem um enorme mindshare nesse departamento e Adobe e Sun estão correndo atras.

        • Dennes

          Oi !

          Curiosidade : Qual ferramenta usou para desenvolver ?

          []‘s

          Dennes

          ———————
          CidadaoCarioca
          BufaloInfo

          • xymor

            VS2008 com o addon beta do SL2.1b

    • http://www.fabiocardoso.com.br Fabião

      Aí, no caso, todas as alternativas são apenas camadas de apresentação.

      Principalmente as em AJAX, que são puramente javascript. Silverlight é XAML no visual e qualquer coisa de backend.

      O AIR é uma excelente alternativa. Porém, eu acho que o Google Gears, para variar, é o que vai se sobressair.

      Pode-se, perfeitamente, trabalhar com Backbase, Qooxdoo ou Bindows + Google Gears + qualquer linguagem server side para disponibilizar RIA, e com a vantagem de ‘zero plugin’.

      Porém, é tudo uma questão de gosto. Eu só quis ‘apresentar’ uma terceira via.

  • renattolima

    Tuco, bem colocada suas observações.

    Mais algumas considerações:

    …área que, querendo ou não, o Flash nunca fez muito sucesso, nem com o advento do Flex.

    Bom, a primeira vez em que ouvi falar de RIA (2003/2004 + ou -) foi justamente sobre o Flex, um grande problema naquela época é que o Flex era muito caro, ficando limitado apenas a grandes corporações que se dispusessem a pagar seu alto preço.

    …o Flash é um programa caro, o Visual Studio também, e um desenvolvedor freelancer ou uma empresa pequena não costumam ter condições de arcar com tais custos…

    De lá pra cá muito se evoluiu, hoje o framework do Flex é gratuito e opensource e uma licença do Flex Builder está bem mais em conta em relação até mesmo ao Visual Studio. Não sei quando custa o Visual Studio, mas acho que não é menos do que isso.
    Uma boa alternativa é o Flash Develop(é gratuito e opensource), que excluindo-se a questão do debugger, não deixa muito a desejar em relação ao Flex Builder.

    Acho interessante a idéia do SilverLight, até porque não me agrada a idéia do Flex “reinar sozinho” no mundo RIA, a concorrência estimula melhorias.

    Pouca gente conhece, mas existe uma outra ferramenta interessante na mesma linha do Flex e SilverLight, é o OpenLaszlo. Esta ferramenta é um bom exemplo de que a “propaganda é alma do negócio, no nosso peito bate um alvo muito fácil…” (Engenheiros do Hawaii). ;)

    Na minha humilde opinão, ainda fico com o Flex, até o SilverLight e/ou AJAX alcançar uma certa maturidade e me possibilitar fazer coisas que hoje ainda só consigo com Flex (Flash Player).

    Renato Lima

    • http://www.contraditorium.com Carlos Cardoso

      Visual Studio Express: Gratuito.

      Satisfeito?

    • http://www.bizness.com.br sricanesh

      De lá pra cá muito se evoluiu, hoje o framework do Flex é gratuito e opensource e uma licença do Flex Builder está bem mais em conta em relação até mesmo ao Visual Studio. Não sei quando custa o Visual Studio, mas acho que não é menos do que isso. Uma boa alternativa é o Flash Develop(é gratuito e opensource), que excluindo-se a questão do debugger, não deixa muito a desejar em relação ao Flex Builder.

      Por apenas 100 dolares a mais, assino um Empower ISV que me dá direito, além de 5 cópias do Visual Studio, 5 licenças do Vista, 5 licenças do Office, 1 licença do Windows 2003 Server/Sql server/Sharepoint Server/Exchange Server e acesso a todos os programas disponíveis no MSDN (que sáo praticamente todos da microsoft com excessão do Money e dos Jogos ;) )

      Cassio R Eskelsen

      • renattolima

        Poxa Cassio, humilha não pô! Dessa eu não sabia. hehehe

        Abraço,

        Renato Lima

  • tomboderider

    Fala fabio!
    No seu texto vc deixou as palavras em vermelho de proposito ou ali deveria haver links para o Backbase, o Bindows e etc??

    [vendo]Memória corsair 2×512 DDR2 667

    g1.globo.com/tecnologia

    • http://www.fabiocardoso.com.br Fabião

      Deveriam ter os links sim.

      Mas, sumiram. Inclusive o do javaFX, que seria a resposta da SUN.

      O texto tinha tanto link, que devo ter me perdido.

      Enfim: Isso acha no google em dois palitos.

      • meirellez

        Desculpa a minha preguiça, Fabio, mas eu tenho um carinho especial por Java, e gostaria de saber qual a posição atual do FX. Se está amadurecendo como o promissor SilverLight, ou está a mais tempo na luta, ou até mesmo é o mais novo de todos.

        E qual a sua expectativa sobre ele?

        —————————————
        Só a mudança é permanente.

        • http://www.fabiocardoso.com.br Fabião

          JavaFX está engatinhando ainda. Nem lançado oficialmente foi.

          Minhas expectativas: Eu ainda acho os programas gerados pelo JavaFX grandes demais, e os problemas de performance do Java ainda continuam.
          Porém, pelo pioneirismo e certa competência da SUN, eu boto fé no projeto. Só que não creio que o javafx será usado fora do mercado corporativo: Projetos para websites/services/RIA não dentro das empresas tenderão a usar flash/silverlight mesmo.

          • http://www.worldorg.net flaviotomazio

            Parece que semestre que vem a Sun vai trazer várias novidades ao Java, devido as reclamações dos usuários.
            Entre elas pode estar o desempenho, um suposição minha, também é que eles podem lançar o Java 1.7.

            WorldOrg

          • Caravana

            Ahh.. isso eh previsao da Mae Dinah… ja que eles lancam versoes nova do java a cada 14 meses, se nao me engano. :P

            A proxima sera a primeira versao do Java 100% opensource. Stallman comemora.. \o/

          • meirellez

            Muito obrigado, sua resposta elucidou e ajudou bastante.

            Abraços

            ——————————————-
            Só a mudança é permanente.

  • http://www.worldorg.net flaviotomazio

    Os frameworks AJAX são realmente uma ótima alternativa para o Flash. Nunca tive interesse no Flex, mas fiquei interessado foi depois no Adobe AIR, mas nunca consegui fazer funcionar em meus computadores, então desisti dele.

    WorldOrg

  • alsimoes

    Li que a Sun não está alheia a essa briga e tem suas apostas nesta área também e para concorrer com o Silverlight há o projeto OpenFX.

    Quanto ao download de 10 MiB do plugin, a Sun está finalizando Update N para o Java SE 6. Não sei em detalhes como funcionará mas o novo plugin Java terá 1.1 MiB na instalação, e dependendo das classes necessárias ao aplicativo em execução ele acessará a Internet para carregar o resto. Segundo os desenvolvedores os aplicativos mais comuns usariam no máximo 2.3 MiB, o resto só é usado em aplicações corporativas ou software mais elaborados tais como: Azureus, LimeWare, etc…

    Esse Update N também possibilitará aos desenvolvedores Java e criar interfaces vetoriais aos moldes das novas tecnologias implementadas no Vista (WPF) e no MacOS.

    É esperar pra ver…

    » André Luiz

  • danilotecoliveira

    Trabalho com ambas as ferramentas.
    O flash é legal, bom pra impressionar clientes e essas coisas…
    O silverlight é mais flexível porque não depende de uma única linguagem para desenvolvimento. Vc pode manipular suas animações em C#, javascript, vb.net. Enquanto no flash vc só tem o actionscript.

    Mas prefiro evitar essas tecnologias em meus projetos.
    Pra quem gosta de animações e, como eu, evita essas ferramentas dê uma olhadinha no ExtJS.

    É mais trabalhoso? Sim!. Mas o resultado do puro javascript é infinitamente superior.

  • maniacs

    Cada “coisa para sua coisa”, java applet só é usado por min se precisar algum controle de hardware no lado do cliente
    activeX não mesmo…
    Flash e Silverlight tbm não usaria para sistema de biometria ou senha por ex, que é o caso de alguns clientes meus, ai sim eu uso java applet, de resto flash mesmo, que eu axo muito mais amigavel de trabalhar, coisa que faço a alguns anos com ele….
    claro, depende em que, sistemas eu não uso flash (flex) e sim Ajax
    no servidor depende a grandeza do projeto, podendo ser em php/ruby/java/coulfusion…


    Pra min fanboysismo é igual religião e futebol, não se discute

  • meirellez

    Hmm… SilverLight pra lá…. SilverLight pra lá….

    Acho que tenho que testar né? abraços

    —————————————
    Só a mudança é permanente.

  • kotter

    alguém lembra o nome do programa de animação lançado na suíte corel 11?
    eu não consigo lembrar de jeito nenhum.

    aquele PODERIA ter sido um dos concorrentes do flash, mas era tão ruim, TÃO RUIM, que acabou sendo lançado em duas versões apenas, e nem existe mais. e se não me engano não tinha como ‘programar’, usar script’s, etc. era apenas pra fazer animações simples.

    a única coisa boa era a qualidade das ferramentas de desenho vetorial. mesmo que todo mundo deteste o corel draw, não tem como negar que pra desenho vetorial ele ganha do flash.

    enfim, nunca usei o silverlight, não faço idéia de como ele funciona, então não posso dar minha opinião sobre ele.

    e o flash é detestado por alguns devido ao seu mau uso pelos “webdesigners”, “webdevelopers”, “webqualquercoisa” (tudo entre aspas mesmo).
    mas, quando bem utilizado, eu considero o flash uma ferramenta quase indispensável para a internet atualmente.

  • kotter

    o programa era o COREL RAVE, lembrei agora!

  • http://www.jsfalcao.blogspot.com jadersonfalcao

    Ótimo post.
    Parabéns!

  • tcelestino

    Por isso que na agência que eu trabalho, os designers estão pouco usando o Flash, já que nós do desenvolvimento já sabemos que muita coisa pode ser criada usando os frameworks em JS. :D

    Tiago Celestino – http://tcelestino.com.br/blog