Tech-Ed, WPF, MVC e Adobe AIR

Tech-Ed 2007

Hoje eu fui no Tech-Ed, evento da Microsoft onde são apresentadas palestras com novidades e dicas do mundo Microsoft.Uma palestra que me fez soltar aquele “oooohhhh!!” frente a uma inovação tecnológica foi a do WPF (Windows Presentation Foundation).

Em 1979 (eu ainda nem era nascido), Trygve Reenskaug propôs o conceito de MVC (model-view-controller) para o projeto do Smalltalk (influenciador do Java), nos já míticos laboratórios da Xerox, em Palo Alto (lá foram inventados a Ethernet, a impressora à laser, o mouse e a interface gráfica – hoje conhecida popularmente como Windows, apenas para citar alguns). O conceito é bem simples: separar a apresentação (view) da camada de negócio/dados (model), utilizando para isso uma “ponte” (controller).

Ainda hoje é um parto fazer um site web cuja apresentação está desacoplada do conteúdo, sendo que é 100% viável implementar dessa forma utilizando CSS com HTML ou CSS com XML e XSLT ou DHTML… imagina isso então em uma aplicação desktop!

O WPF coloca o MVC em prática (sem citar essa sigla, como é natural em produtos MS), incluindo inúmeras facilidades (que só funcionam no Windows, como é natural em produtos MS), mas o grande pulo está na possibilidade do mesmo código rodar tanto no desktop quanto na web.

O processo é bem simples:

  1. através do Microsoft Expression Blend (uma mistura de Corel Draw, Adobe Ilustrator, Macromedia Flash e Microsoft Visual Studio .NET) um designer desenha ricamente a interface gráfica (que gera um arquivo XAML) – view
  2. no Visual Studio o desenvolvedor cria toda a lógica de negócio, manipulação de dados, tratamento de eventos, etc. (que gera um arquivo .cs, no caso do C#) – model
  3. o Framework .Net (utilizando o WPF) se encarrega juntar o XAML com o código – controller

Dessa forma, a mesma aplicação pode ser acessada tanto pelo browser, na Internet, como localmente no computador, pelo Windows, de acordo com a forma como foi compilado. Para alterar o layout, basta alterar o arquivo XAML (manualmente ou de forma transparente pelo Expression Blend) e pronto!

Pela mais pura coincidência, hoje li sobre o Google Analytics AIR, que é o já famoso Google Analytics, no desktop. Para isso, ele usa o Adobe AIR, que segundo o site:

Adobe® AIR™ is a cross-operating system runtime that allows web application developers to use their existing web development skills (HTML, Javascript, Adobe Flash®, Adobe Flex™, Ajax) to build and deploy rich Internet applications to the desktop.

Muito parecido com a definição do WPF no site:

Windows Presentation Foundation (WPF) provides developers with a unified programming model for building rich Windows smart client user experiences that incorporate UI, media, and documents.

Resumindo, Windows Presentation Foundation e Adobe AIR são quase o mesmo produto, desenvolvidos por empresas diferentes.

A Microsoft criou o Silverlight para competir com o Flash (agora Adobe Flash) e pelo visto a briga não parou por alí…

Deixe um Comentário

1 Comentários.

Não fique de fora, dê sua opinião!

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.