Ranking: #1181
Evolução no Ranking:
-33
Categoria: Tecnologia
http://blog.xaml.com.br
http://feeds.feedburner.com/XamlBr
O mercado de R.I.A. está em constante crescimento e as empresas estão adotando cada vez mais o Flex como interface para seus sistema.
Recentemente a Adobe Liberou a especificação do AMF3 oque possibilitou uma melhor safra de middleware e um dos produtos que seguiu essa onda foi o FluorineFx, que faz a chamada de métodos remotos em aplicações dotnet.
Quem acompanha a evolução do DotNet Framework, sabe que foi adicionado na versão 3.0 um novo mecanismo de consulta denominado LINQ, cuja função é servir como camada de acesso à dados, seja ela SQL, XML, Objetos, etc.
Essa semana eu começei um projeto usando essas duas tecnologias e é claro com Flex, por isso resolvi fazer um post sobre como configurar esse projeto para ajudar quem vier a ter dificuldades.
Levando em conta que você está com todos os programas instalados vamos começar !!!
Primeira coisa que faremos é criar o projeto FluorineFx ASP.Net Web Site, que nesse caso será hosteado no IIS, mas sinta-se à vontade em usar o ASP.Net Development Server que vem embeded com o Visual WebDeveloper, nesse caso use como Location o "File System" e escolha uma pasta de sua preferência: 
Depois de criado o projeto, a seguinte tela é exibida no canto direito da tela:

Bin: Nessa pasta ficam as dlls usadas pelo site, inclusive as do FluorineFx.
Log: Armazena o logo do fluorinefx.
Templates: O FluorineFx gera vários outputs em Flex e os templates ficam nessa pasta.
WEB-INF/flex: Nessa pasta ficam os arquivos de configuração do serviço remoto.
Console.aspx: Executando esse arquivo o site mostra o Service Browser que ajuda a testar os métodos disponíveis, gerar outputs e adicionar data domains.
Gateway.aspx: Arquivo simbólico que serve de ponte entre o Flex e o FluorineFx.
Uma vez criado o projeto, basta compilar (F5) para executar o Service Browser: 
Agora vamos ao FlexBuilder, crie um projeto Flex normalmente, porém use o caminho do projeto aspnet e dentro dele crie uma pasta chamada " flex ": 
Na próxima tela sete qual a pasta que terá o output flex, eu uso apenas "bin": 
E por ultimo basta colocar a url para o Flex Builder abrir o projeto quando compilar: 
Pronto, o projeto está criado e pronto para funcionar, mas vamos entender oque o flex builder 3 criou para nós: 
.settings: Essa pasta armazena os arquivos de configuração.
bin: Depois de compilado o projeto é colocado aqui nessa pasta. É essa pasta que vai para o servidor na hora do deploy.
html-template: Templates do Flex para a geração do wrapper html.
src: Pasta onde serão criados os aquivos .mxml/.as e demais, é onde ficam os fontes do projeto.
O projeto está funcionando normalmente, basta compilar (Ctrl + F11), porém o Flex ainda não se cominica com o Fluorinex, para tal, basta adicionar alguns comandos para o compilador se localizar.
Clique com o botão direito no projeto > Properties > Flex Compiler: 
Lembrando que o parametro "context-root" é o nome do diretório virtual criado no IIS (FlexASPNet lembra ?).
Testando o FluorineFxPara testar o Fluorine basta criar uma classe no Projeto Web:
using FluorineFx;
namespace FlexASPNet {
[RemotingService("Nome do Serviço")]
public class ServicoTeste {
public ServicoTeste() { }
public string HelloWorld() {
return "Eu estou no C#";
}
}
}
Agora basta testar no Console.
No lado Flex basta fazer uma chamada mx:RemoteObject normal:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:RemoteObject id="FlexFluorine" source="FlexASPNet.ServicoTeste"
destination="fluorine" showBusyCursor="true" fault="FaultHandler(event);">
<mx:method name="HelloWorld" result="HelloWorldHandler(event);" />
</mx:RemoteObject>
<mx:Script>
<![CDATA[
import mx.rpc.events.ResultEvent;
import mx.controls.Alert;
import mx.rpc.events.FaultEvent;
private function FaultHandler(event:FaultEvent) : void {
Alert.show(event.fault.faultDetail, 'Erro no sistema: ');
}
private function HelloWorldHandler(event:ResultEvent) : void {
Alert.show(String(event.result), 'Resultado: ');
}
]]>
</mx:Script>
<mx:Button label="Chamar Fluorine" horizontalCenter="0" verticalCenter="0"
click="{FlexFluorine.HelloWorld()}" />
</mx:Application>

Bom galera, tá ai, ta configurado e funcionando, agora é so programas suas classes em C# normalmente e utilizá-las no Flex, sempre lembrando que cada tipo de dados retornado do C# deve ter um equivaliente no Flex.
Peraí ? E onde está o LINQ ???
O Linq já está referenciado no seu projeto Web por ser ASP.Net 3.5, na parte 2 eu vou fazer um C.R.U.D. com LInq e usar ele no Flex.
fontes do projeto: http://blog.saintbr.com.br/code/FlexASPNet.rar
[]'s
SaintBr. =]
Quarta-feira passada (30/04/08) estive participando no Podcast Digital Paper Web #15 com o tema R.I.A ou Não, onde discutimos tecnologias como Flex, Ajax e Silverlight.
Para quem gosta do assunto ou quer ouvir um podcast divertido está ai a deixa, acesse agora http://digitalpaperweb.com.br/ezine/evento/podcast-15-ria-ou-nao baixe, ouça e comente.
Definitivamente a Microsoft está tratando muito bem os developers que estão utilizando as novas tecnologias da empresa como ASP.Net, Silverlight, WPF.
No site da MIX08 pode ser encontrada uma área bem interessante chamada MIX08 University onde estão disponíveis diversos vídeos de treinamentos para as novidades do evento.
Podemos destacar o Silverlight 1.0 FireStarter que conta com diversos tópicos relacionados, ainda temos também BootCamp WPF que tem 3 dias de treinamento em vídeo e um bom material sobre ASP.Net Ajax, além de varios outros videos e tutoriais.
Visite hoje mesmo e incremente seus conhecimentos!
[]'s
SaintBr. =]
Novos vídeos de Silverlight 2.0 e tutoriais já estão disponíveis no site oficial do Silverlight.
São 4 tutoriais sobre: DataBinding, Controls, Templates, Styles e um Road Map. [LINK].
Os 3 vídeos são sobre Canvas, Grid, Stack Panes e implementação de Carousel. [LINK].
Material não falta e só não se atualiza quem não quer.
[]'s
SaintBr. =]
Com o lançamento do Silverlight 2.0, diversos parceiros da Microsoft começaram a mostrar as cartas que estavam na manga.
A AOL revelou o seu novo webmail baseado no Silverlight, a Nokia mostrou em publico seus novos aparelhos com suporte ao Silverlight Mobile, o Memorabilia do Hard Rock e agora o Yahoo disponibiliza para a comunidade de desenvolvimento o Silverlight Developer Center.
Nessa área do site do Yahoo, voltada para desenvolvedores, pode-se obter informações sobre a plataforma desejava e também como integrar com as APIS do Yahoo.
No site ainda é possível baixar o poster do Silverlight 1.0 Class Diagram [PDF], [XPS], [XAML] sendo esse ultimo um bom exemplo do que pode ser feito com XAML.
O site já conta com diversos exemplos, tutoriais e videos de como usar e integrar o Silverlight com a plataforma Yahoo. Vale a pena a visita.
[]'s
SaintBr. =]
Hoje foi lançado na MIX08 o Silverlight 2.0 que até então era chamado de 1.1 Alpha Refresh, mas com os novos controles o nome oficial foi designado e diversas ferramentas foram disponibilizadas para download.
Já é possivel baixar a runtime (plug-in) para navegador com a nova versão pelo endereço http://www.microsoft.com/silverlight/resources/installationFiles.aspx?v=2.0 e as principais mudanças podem ser conferidas no link http://silverlight.net/GetStarted/overview.aspx.
Além da runtime a principal noticia é com relação às ferramentas para desenvolvimento de projetos Silverlight 2.0:
- Microsoft Silverlight Tools Beta 1 for Visual Studio 2008: Além da toolbar com os componentes SL 2.0 foi adicionado o suporte a Code/Design/Split à IDE tornando a criação de aplicações mais produtiva.
- Expression Studio Beta 2 e Blend 2.5 March Preview: As ferramentas de design da linha Expression ganharam hoje mais um beta da versão 2 e foi liberado também o Blend 2.5 March 2008 Preview com suporte a projetos Silverlight 2.0.
Estarei testando as novas ferramentas e farei um post sobre os novos controles do Silverlight 2.0 semana que vem.
[]'s
SaintBr. =]
Mal começou a MIX 2008, realizada em Las Vegas e os primeiros KeyNotes já trazem notícias quentissimas.
Para começar já foi anunciado o Internet Explorer 8 Beta 1, que já pode ser baixado e já vem causando um certo barulho no cenário web, uma vez que o mesmo será compatível com os padrões existentes.
Outro KeyNote que trouxe excelentes notícias foi do ScottGu que apresentou as inovações do Silverlight 2.0 e do WPF e principalmente trouxe a publico o Silverlight Mobile que virá com o Windows Mobile 6, os demos mostraram exemplos funcionais criados por empresas parceiras que já utilizam o SL Mobile e teve ainda um video do vice-presidente da Nokia falando sobre a parceria e que os novos aparelhos da empresa já contam com o WMobile 6.
Hoje também foi apresentado um preview do SQL Server Data Services (SSDS) e também o novo release do Expression Studio 2 Beta que já pode ser baixado.
Como ir na MIX08 não é para qualquer um, eu estou aqui acompanhando online as sessions, mas um grande amigo meu, o Daniel da DuploD, também criador do blog ExpressionBlend, está tendo o privilégio de estar presente no evento e estará trazendo com exclusividade as novidades e os bastidores deste evento.
Só para salientar o Daniel ganhou essa viagem para Las Vegas como prêmio por ser o vencedor do Concurso Microsoft Expression (LATAM).
Vamos aguardar as proximas sessions e ver oque está por vir!
[]'s
SaintBr. =]
Precisando de uma ajuda visual para entender melhor o Silverlight ? Esse poster pode ser bem útil para entender como funciona o que compreende o Silverlight 1.1:
[]'s
SaintBr. =]
Uma das features mais aguardadas pela comunidade Open Source e pelos usuários de linux é que o Silverlight será compatível com a plataforma aberta e o Projeto Mono está tornando isso possível com o Moonlight, um porte do silverlight para linux e não se trata apenas do plugin, mas da SDK também já que o projeto é tornar o .Net Framework portável para linux.
O desenvolvimento no Mono pode ser feito usando uma ferramenta chamada MonoDevelop que está bem interessante, e já vi ela em ação em um dos projetos que fizemos na Fundação de Ação Social (Curitiba) onde compilamos um programa C# 2.0 para rodar no Mono.
Para conhecer melhor essa ferramenta, onde também será possível criar conteudo Silverlight vá até o site do projeto e obtenha mais informações:

[]'s
SaintBr. =]
Procurando treinamento de WPF em vídeo ? Então no site Lynda.com você irá encontrar o "Getting Started with Expression Blend" que irá te mostrar como desenvolver interfaces matadoras para aplicações WPF usando xaml.
Se seu foco é Silverlight nesse mesmo site você irá encontrar o "Silverlight Essential Training" com duração de 4:50 horas de duração.
Ambos os treinamentos são excelentes e são uma ótima fonte de aquisição de conhecimento.
[]'s
SaintBr. =]
Com o lançamento do Silverlight 1.1 Alpha Refresh, foram implementadas novas features e algumas já existentes foram melhoradas.
Para acompanhar essa evolução e conhecer melhor essa versao do produto, veja o quadro abaixo:
Como podemos ver nesse comparativo, as mudanças são muitas e acredito que as mais importantes delas é poder usar o .Net (C#, VB, IronRuby, IronPython) como linguagem e não apenas o JavaScript, LINQ, IO, WebServices, Ajax, Generics, etc.
O Silverlight 1.1 Alpha foi nomeado para Silverlight 2.0, porém sem os Controles, que virão com o Beta 1.
[]'s
SaintBr. =]
Com o lançamento do .Net Framework 3.5, surgiram novos termos e tecnologias que se confundidos podem complicar o aprendizado de quem está pegando o barco agora e nessa sopa de letrinha podemos destacar 3 que são de interesse direto do blog: XAML, Silverlight e WPF.
Então é hora de apresentar cada um e e definir onde eles se encaixam.
XAML: É uma linguagem de marcação muito parecida com XML e que lembra o XUL (os fanboys ficam loucos nessa hora). É a base de uma aplicação rica usando os novos recursos do framework. Com ela é possível criar aplicações para web e desktop. Maiores informações: http://msdn2.microsoft.com/en-us/library/ms747122.aspx
Silverlight: É a parte do framework que se destina a criar conteúdo rico para web e ela representa apenas uma parte do Windows Presentation Foundation. O JavaScript pode ser usado para fazer uma aplicação com Silverlight, assim como C#, IronPython, VB.Net e IronRuby. Maiores informações: http://silverlight.net.
WPF: Sigla para Windows Presentation Foundation e representa dentro da nova versão do framework toda a nova estratégia para interfaces de sistemas.
Para desenvolver com ele é usado o XAML e é largamente utilizado para sistemas desktop. Maiores informações: http://msdn2.microsoft.com/en-us/netframework/aa663326.aspx.
Fazendo uma comparação grosseira o WPF é o WindowsForms, o XAML é o C# e o Silverlight é o ASP.Net.
Definidas o que são e para que servem vou elencar algumas features:
- WPF é composto de 1 arquivo .xaml e um arquivo .cs (code) assim como no ASP.Net;
- Com o WPF é possivel criar aplicações usando 3D, multimedia com audio e vídeo, acesso a dados e demais recursos do .Net Framework;
- O Silverlight veio para competir com o Adobe Flash sim e conta muitos recursos de animação e ao mesmo tempo também compete com o Adobe Flex pois seu uso se encaixa no contexto de interface para aplicação rica para web;
- O Silverlight foi criado para ser usado como solução multi-plataforma, ou seja, vai ser compatível com Mac, Linux a nível de plataforma e com Firefox, Safari, etc a nível de browser.
- Na versão 2.0 o Silverlight irá ganhar uma série de novos controles para se identificar mais com aplicativos ricos para web e o lançamento dessa versão está previsto para o início de 2008;
Apesar de serem tecnologias novas, o XAML, Silverlight e o WPF estão muito maduras e demonstram estar prontas para encarar o mercado e bater de frente com seus concorrentes.
[]'s
SaintBr. =]
Realmente não faltam opções para IDE's para XAML e hoje testei mais uma: Kaxaml.
Muito leve, intuitiva, essa ide permite que o desenvolvedor crie suas aplicações XAML com uma tela split, onde se vê o codigo e o output com um excelente auto-complete e parse em até 1 segundo e o melhor, com direito á debug instantâneo.
Segue abaixo uma tela do Kaxaml:
Baixe hoje mesmo a sua cópia dessa ide, é free !
http://www.kaxaml.com
[]'s
SaintBr. =]
Para quem anda sedento por Silverlight (xaml) segue um link bem interessante de um podcast sobre o assunto.
Detalhe é o primeiro do mundo sobre xaml e o melhor é Brasileiro!!
Vale a visita: http://xamlcast.net/
[]'s
SaintBr. =]
A Microsoft está realmente apostando forte no Silverlight e uma das frentes de ataque é disponibilizar conteúdo grátis para estudo.
Pois bem, foi liberado hoje no site Lynda.com o treinamento "Silverlight Essential Training" totalmente grátis.
Dei uma olhada meio por cima no conteudo e é uma ótima referência para começar a estudar ou aprimorar o Silverlight.
A notícia veio do blog do Mike Harsh e pode ser conferida no link.
Está ai a deixa, basta pegar uma skol, colocar seu fone de ouvidos e incrementar seus conhecimentos!
[]'s
SaintBr. =]
Já está disponível para download via Windows Update o plugin do Silverlight 1.0.
Com essa ação a Microsoft estará distribuindo o plugin na esfera dos usuários e aumentando consideravelmente o número de pcs com o Silverlight.
[]'s
SaintBr. =]
Sejam bem vindos ao novo blog escrito em lingua portuguesa sobre XAML, WPF/E, Silverlight onde irei abordar temas sobre essa nova tecnologia que está chegando para entrar no mercado RIA e competir junto com o Adobe Flex, JavaFX, Ajax, Laszlo entre outras.
Além do ambiente web o XAML também é usado para aplicações Desktop com C# (C Sharp), VB.Net, IronRuby e IronPython, portanto também estarei abordando áreas relacionadas.
Espero que esse blog possa servir para difundir o XAML, ajudar a comunidade e servir de base de conhecimento em português.
Para quem não me conheçe, me chamo Júlio Ricardo (aka SaintBr) e tenho um outro blog onde o assunto principal é desenvolvimento web usando Adobe Flex e também sou moderador da lista Flex-Brasil e administrador do blog da lista.
Sinta-se à vontade se tiver dúvidas e se quiser ajudar a melhorar esse blog, contate-me em saintbr [at] gmail [dot] com, afinal esse blog é da comunidade !
[]'s
SaintBr. =]