Novas Tecnologias Microsoft http://formacao.rumos.pt/ Rich Internet Applications (RIA) Carlos Lima [email protected] Agenda • • • • • Objectivos da sessão O que é uma RIA O que é o Silverlight Software necessário O que é o XAML • Demonstração Objectivo • Desenvolvimento de uma aplicação RIA em Silverlight. • Interligação entre Designer e Developer • Comunicação Cliente / Servidor RIA • RIA - Rich Internet Applications • Aplicação Web com características e funcionalidades de uma aplicação desktop • Tipicamente, é transferida para o cliente no primeiro pedido; • Comunica com o servidor para receber dados apenas. Silverlight • Cross-platform & Cross-browser Plugin • Permite a designers e developers criar: – Rich media experiences – .NET based RIAs for the web • Versões: – Final: Silverlight 1.0 – Beta: Silverlight 2 Beta 2 Silverlight • Plugin Cross-platform & cross-browser – Browsers: Safari, Firefox e IE (em Mac & Windows) – Previsto: FireFox, Konquerer e Opera (em Linux) – Processo de instalação fácil e rápido de 4.3MB • Framework de desenvolvimento altamente produtiva – Suporte a múltiplas linguagens: VB, C#, JavaScript, Python, Ruby – Sunset da Class Library da Framework .NET • Excelentes ferramentas – Microsoft Visual Studio & Microsoft Expression Silverlight e o .NET • Silverlight é um subset da .NET Framework – Suporte especial para aplicações RIA e Multimédia • Modelo de desenvolvimento comum ao .NET – APIs comuns – Modelo de programação comum com o UI do WPF – Ferramentas de desenvolvimento e de design comuns • UI é um subset da framework do WPF – Compatível O que irão necessitar: • A instalar: – Silverlight 2 Beta 2 runtime – Silverlight Tools Beta 2 for Visual Studio 2008 – Expression Blend 2.5 June Preview • Tudo o que precisa em silverlight.net – Links para downloads & docs – Tutoriais, Webcasts e Hands-on Labs Silverlight Files User Interface Code XAML File CS, VB,… File Page.xaml Page.xaml.cs Designer Expression Blend Developer Visual Studio 2008 XAML • XAML = eXtensible Application Markup Language • Linguagem baseada em XML • Descreve os componentes do UI, propriedades e eventos • Faz parte do WPF • Gerada por ferramentas de design – Ex. Expression Blend • Pode ser editada manualmente • É a ferramenta do Designer 5/11/2015 Exemplo XAML <Canvas xmlns="http://schemas.microsoft.com/client/2007" > <TextBlock FontSize="32" Text="Hello world" /> </Canvas> Hello world Código • C# , VB.Net, Javascript ,... • Define a lógica da aplicação • Desenvolvido no Visual Studio • Essencialmente para Programadores 5/11/2015 Demo • Desenvolver uma aplicação simples de Chat • Criação do Layout, Grafismos e Animações no Expression Blend • Programação da lógica da aplicação no Visual Studio 5/11/2015 Estrutura da Demo Aplicação Cliente de Chat - Silverlight Page.xaml (User Interface) ChatBalloon.xaml (User Control) Aplicação Servidor ChatServer.exe (Recebe e distribui as mensagens) SocketClient.cs (Comunicação com o servidor) DEMO Comunicação Cliente / Servidor • ASP.NET Web Services (asmx) • Windows Communication Foundation (WCF) Services – WCF Duplex Services • Sockets Na Demo Cliente Connect() SendMessage() Servidor Listener (Porta 4532) ReceiveMessage() StartReceiving() Broadcast() Recursos • SilverLight – http://silverlight.net/ – http://msdn.microsoft.com/en-us/library/bb404700(VS.95).aspx • Expression Blend – http://www.microsoft.com/expression • Blogs – Michael Schwarz • http://weblogs.asp.net/mschwarz/default.aspx – Scott Guthrie • http://weblogs.asp.net/scottgu/default.aspx – Tim Heuer • http://www.timheuer.com/blog/ Cursos • Silverlight – Silverlight 1.0: Silverlight 1.0 for Designers – Silverlight 2.0: Developing RIA Applications Using Silverlight 2 • Windows Presentation Foundation – 6460: Visual Studio® 2008: Windows® Presentation Foundation Obrigado Carlos Lima [email protected] Formador Áreas Microsoft e Adobe