<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://msmvps.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Bruno Sonnino : Livros</title><link>http://msmvps.com/blogs/bsonnino/archive/tags/Livros/default.aspx</link><description>Tags: Livros</description><dc:language>en</dc:language><generator>CommunityServer 2008.5 SP2 (Build: 40407.4157)</generator><item><title>Acessando dados com Silverlight</title><link>http://msmvps.com/blogs/bsonnino/archive/2009/03/11/acessando-dados-com-silverlight.aspx</link><pubDate>Wed, 11 Mar 2009 07:16:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1677507</guid><dc:creator>bsonnino</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/bsonnino/rsscomments.aspx?PostID=1677507</wfw:commentRss><comments>http://msmvps.com/blogs/bsonnino/archive/2009/03/11/acessando-dados-com-silverlight.aspx#comments</comments><description>&lt;p&gt;Uma das cr&amp;iacute;ticas mais comuns ao Silverlight &amp;eacute; o fato que, embora a plataforma seja muito ampla e traga muitas facilidades para a cria&amp;ccedil;&amp;atilde;o de interfaces ricas para a Web, com o uso de videos, anima&amp;ccedil;&amp;otilde;es, controles, ele &amp;eacute; apenas uma &amp;quot;carinha bonita, sem conte&amp;uacute;do&amp;quot;.&lt;/p&gt;
&lt;p&gt;Nada est&amp;aacute; mais longe da verdade que esta afirma&amp;ccedil;&amp;atilde;o: o Silverlight &amp;eacute;, na realidade uma plataforma completa, com acesso &amp;agrave; rede, acesso a dados, podendo inclusive usar LINQ para acessar os dados. Como os programas rodam no browser, o acesso &amp;agrave; m&amp;aacute;quina cliente &amp;eacute; muito restrito, mas isto n&amp;atilde;o quer dizer que n&amp;atilde;o h&amp;aacute; a possibilidade de acessar dados externos: h&amp;aacute; sim, e as possibilidades s&amp;atilde;o in&amp;uacute;meras: podemos acessar dados de um servidor atrav&amp;eacute;s de um WebService, acessar servi&amp;ccedil;os REST ou mesmo consumir feeds RSS, apresentando os resultados numa interface rica, semelhante &amp;agrave; de uma aplica&amp;ccedil;&amp;atilde;o Desktop utilizando WPF.&lt;/p&gt;
&lt;p&gt;O livro &lt;a href="http://www.amazon.com/gp/product/0596523092?ie=UTF8&amp;amp;tag=delphistop&amp;amp;linkCode=as2&amp;amp;camp=1789&amp;amp;creative=9325&amp;amp;creativeASIN=0596523092"&gt;Data-Driven Services with Silverlight 2&lt;/a&gt;&amp;nbsp;vem suprir a&amp;nbsp;falta de refer&amp;ecirc;ncias que mostram o acesso a dados com Silverlight: enquanto a maior parte dos livros sobre Silverlight ensinam a criar programas com a nova tecnologia, mostrando a cria&amp;ccedil;&amp;atilde;o da interface visual, este livro passa superficialmente sobre a interface, concentrando-se no acesso a dados.&lt;/p&gt;
&lt;p&gt;O primeiro cap&amp;iacute;tulo mostra uma introdu&amp;ccedil;&amp;atilde;o aos novos recursos do Silverlight, como o LINQ ou as altera&amp;ccedil;&amp;otilde;es na linguagem introduzidas com o C# 3.0. A partir do cap&amp;iacute;tulo 2 &amp;eacute; que realmente come&amp;ccedil;a o livro: os cap&amp;iacute;tulos 2, 3 e 4 d&amp;atilde;o uma vis&amp;atilde;o bastante completa da liga&amp;ccedil;&amp;atilde;o de dados (Data binding), indispens&amp;aacute;vel para conectar o dado vindo de um servi&amp;ccedil;o &amp;agrave; interface. Em seguida, o livro entra no acesso a dados propriamente dito: o cap&amp;iacute;tulo 5 &amp;eacute; uma introdu&amp;ccedil;&amp;atilde;o a WCF e WebServices, mostrando a cria&amp;ccedil;&amp;atilde;o de servi&amp;ccedil;os com WCF ou AsmX. Este cap&amp;iacute;tulo mostra ainda como fazer chamadas &amp;quot;Crossdomain&amp;quot;, que acessam servi&amp;ccedil;os fora do dom&amp;iacute;nio onde est&amp;aacute; situada a aplica&amp;ccedil;&amp;atilde;o Silverlight: n&amp;atilde;o h&amp;aacute; restri&amp;ccedil;&amp;otilde;es para acesso a um servi&amp;ccedil;o situado no mesmo dom&amp;iacute;nio da aplica&amp;ccedil;&amp;atilde;o Silverlight, mas o acesso a outros dom&amp;iacute;nios &amp;eacute; restrito e deve ser resolvido: muitas vezes, criamos um programa Silverlight e n&amp;atilde;o conseguimos acessar os dados, devido a esta restri&amp;ccedil;&amp;atilde;o.&amp;nbsp;Aqui &amp;eacute; mostrado como solucionar o problema de acesso entre dom&amp;iacute;nios e como &amp;eacute; poss&amp;iacute;vel debugar&amp;nbsp;as requisi&amp;ccedil;&amp;otilde;es ao servidor.&lt;/p&gt;
&lt;p&gt;O cap&amp;iacute;tulo 6 mostra como serializar entidades usando o WCF. Usando o LINQ&amp;nbsp;to SQL ou o LINQ to Entities, obtemos classes para acesso aos dados, mas estas est&amp;atilde;o restritas ao servidor. Este cap&amp;iacute;tulo mostra como podemos serializar as entidades com o WCF e acess&amp;aacute;-las no programa Silverlight, consumindo-as usando o LINQ to Objects.&lt;/p&gt;
&lt;p&gt;Os cap&amp;iacute;tulos 7, 8 e 9 falam sobre cria&amp;ccedil;&amp;atilde;o e consumo de servi&amp;ccedil;os REST. Os servi&amp;ccedil;os REST utilizam comandos HTTP (PUT, GET, DELETE, POST), podendo passar par&amp;acirc;metros para o servi&amp;ccedil;o pela URL, o que facilita muito o uso do servi&amp;ccedil;o, inclusive usando o browser, sem nenhum programa cliente espec&amp;iacute;fico. O cap&amp;iacute;tulo 7 mostra como consumir servi&amp;ccedil;os REST usando o WebClient e o HTTPWebRequest, inclusive usando m&amp;uacute;ltiplas threads para obter os dados. O cap&amp;iacute;tulo 8 mostra como consumir o servi&amp;ccedil;o de acesso &amp;agrave; Amazon, pesquisando livros na livraria virtual. Com a base deste cap&amp;iacute;tulo, voc&amp;ecirc; pode inclusive estender a aplica&amp;ccedil;&amp;atilde;o, criando um carrinho de compras no seu programa Silverlight. O cap&amp;iacute;tulo 9 mostra a cria&amp;ccedil;&amp;atilde;o de um servi&amp;ccedil;o REST e o assesso ao Twitter, criando um programa que permite acessar o servi&amp;ccedil;o e postar mensagens, usando JSON&amp;nbsp;ou mesmo XML para transferir os dados.&lt;/p&gt;
&lt;p&gt;O cap&amp;iacute;tulo 10 mostra o acesso a RSS feeds, usando&amp;nbsp;a&amp;nbsp;API de Syndication. Embora esta n&amp;atilde;o esteja diretamente relacionada com o Silverlight, pois est&amp;aacute; dispon&amp;iacute;vel tamb&amp;eacute;m no .net Framework completo, n&amp;atilde;o vemos muitas refer&amp;ecirc;ncias a ela. Aqui temos uma vis&amp;atilde;o clara de como usar esta API para acessar os dados de um RSS e apresent&amp;aacute;-los em nossa aplica&amp;ccedil;&amp;atilde;o. O &amp;uacute;ltimo cap&amp;iacute;tulo mostra o acesso a dados com o ADO.NET Data Services que, associado ao Entity Framework, facilita muito o acesso aos dados remotos.&lt;/p&gt;
&lt;p&gt;Em resumo, este n&amp;atilde;o &amp;eacute; um livro para aprender Silverlight, h&amp;aacute; muitos bons livros para aprender esta tecnologia. Mas, se voc&amp;ecirc; j&amp;aacute; conhece Silverlight e quer saber como criar programas LOB, que n&amp;atilde;o sejam apenas uma &amp;quot;carinha bonita&amp;quot;, deve ter este livro em sua estante.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1677507" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/bsonnino/archive/tags/Silverlight/default.aspx">Silverlight</category><category domain="http://msmvps.com/blogs/bsonnino/archive/tags/Livros/default.aspx">Livros</category></item><item><title>Coding4Fun</title><link>http://msmvps.com/blogs/bsonnino/archive/2009/01/27/coding4fun.aspx</link><pubDate>Tue, 27 Jan 2009 22:39:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1666508</guid><dc:creator>bsonnino</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/bsonnino/rsscomments.aspx?PostID=1666508</wfw:commentRss><comments>http://msmvps.com/blogs/bsonnino/archive/2009/01/27/coding4fun.aspx#comments</comments><description>&lt;p&gt;Nestes tempos onde a Internet cont&amp;eacute;m informa&amp;ccedil;&amp;otilde;es praticamente sobre todos os assuntos, eu ainda sou um leitor &amp;agrave; antiga: ainda gosto muito de ler livros. Um livro t&amp;eacute;cnico tem diversas vantagens sobre a Internet:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;O texto sobre um deferminado assunto fica concentrado num &amp;uacute;nico lugar, n&amp;atilde;o preciso pesquisar ou procurar por ele&lt;/li&gt;
&lt;li&gt;Os dados s&amp;atilde;o cuidadosamente escritos e revisados, o que faz que as informa&amp;ccedil;&amp;otilde;es contenham (em geral) menos erros&lt;/li&gt;
&lt;li&gt;Pode ser lido em qualquer lugar ou condi&amp;ccedil;&amp;atilde;o, sem energia el&amp;eacute;trica ou conex&amp;atilde;o &amp;agrave; Internet&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Assim, postarei aqui periodicamente reviews sobre o que estou lendo, para que voc&amp;ecirc;s possam ver o que temos dispon&amp;iacute;vel e medir se vale a pena, financeiramente e quanto a gasto de tempo (que pessoalmente, acho mais caro que o pr&amp;oacute;prio custo do livro).&lt;/p&gt;
&lt;p&gt;O primeiro review &amp;eacute; sobre o livro &lt;a href="http://www.amazon.com/gp/product/0596520743?ie=UTF8&amp;amp;tag=delphistop&amp;amp;linkCode=as2&amp;amp;camp=1789&amp;amp;creative=9325&amp;amp;creativeASIN=0596520743" target="_blank"&gt;Coding4Fun&lt;/a&gt;, do Dan Fernandez e Brian Peek, publicado pela O&amp;#39;Reilly. O t&amp;iacute;tulo poderia ser traduzido por &amp;quot;Codificando por Divers&amp;atilde;o&amp;quot; e, &amp;agrave; primeira vista, poderia parecer algo sobre programa&amp;ccedil;&amp;atilde;o nas horas vagas, onde fazemos testes sobre os assuntos que nos interessam. Bem, o livro n&amp;atilde;o deixa de ser isso, mas &amp;eacute; muito mais.&lt;/p&gt;
&lt;p&gt;O livro traz 10 projetos, divididos em tr&amp;ecirc;s &amp;aacute;reas: Jogos, Software e Web e Hardware. A primeira parte traz 3 projetos ligados a&amp;nbsp;jogos: um jogo de Space Invaders (aqueles com mais de 30 anos com certeza lembram deste :-)), feito com XNA, um jogo de aventura com um soldado de Lego em Silverlight, feito com o PopFly game creator e um leitor de RSS para o WarCraft. A segunda parte traz 4 projetos, um para fazer download dos v&amp;iacute;deos do YouTube e convert&amp;ecirc;-los para tocar no computador offline ou no IPod ou Zune, um para fazer streaming peer2peer de v&amp;iacute;deos, para poder ver em um computador remoto os v&amp;iacute;deos armazenados em outro, um sistema de pesquisas de opini&amp;atilde;o usando o Twitter e um sistema Asp.net para ver em qualquer lugar o conte&amp;uacute;do da caixa postal do Outlook usando o Windows Home Server. A &amp;uacute;ltima parte cont&amp;eacute;m tr&amp;ecirc;s projetos ligados a equipamentos de hardware. O primeiro &amp;eacute; um carro de controle remoto controlado pelo WiiMote, o controle remoto do Wii. O segundo &amp;eacute; um projeto de uma tela touch screen na parede usando o WiiMote e o terceiro permite controlar luzes natalinas que acendem e apagam conforme a m&amp;uacute;sica.&lt;/p&gt;
&lt;p&gt;Como podem ver, o escopo do livro &amp;eacute; bem amplo e cobre um leque de tecnologias muito grande. Os projetos s&amp;atilde;o muito interessantes e, mesmo que voc&amp;ecirc; n&amp;atilde;o se interesse por todos, com certeza, ir&amp;aacute; gostar muito de alguns. O livro &amp;eacute; bem escrito e cont&amp;eacute;m os c&amp;oacute;digos escritos tanto em C# quanto em VB.net. Pessoalmente, eu gostei bastante do livro e ele traz um mix de muitas tecnologias que est&amp;atilde;o sendo criadas pela Microsoft. Entre elas:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;XNA&lt;/li&gt;
&lt;li&gt;PopFly Game Creator - Silverlight&lt;/li&gt;
&lt;li&gt;WPF&lt;/li&gt;
&lt;li&gt;WCF&lt;/li&gt;
&lt;li&gt;Asp.Net&lt;/li&gt;
&lt;li&gt;RSS Feeds&lt;/li&gt;
&lt;li&gt;Integra&amp;ccedil;&amp;atilde;o com Outlook&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Al&amp;eacute;m disso, mostra como interfacear com outras tecnologias, como o WarCraft, o YouTube, o WiiMote ou o Twitter. Os projetos s&amp;atilde;o muito bons e pude comprovar que funcionam, como o projeto da tela TouchScreen, que ajudou meus filhos Roberto e Eduardo a irem &amp;agrave; Fran&amp;ccedil;a em 2008 para competir na ImagineCup, na categoria Projeto de Software, com o projeto Ecologger.&lt;/p&gt;
&lt;p&gt;Em resumo, este &amp;eacute; um livro altamente recomendado para quem quer conhecer as novas tecnologias que est&amp;atilde;o sendo criadas pela Microsoft. O livro n&amp;atilde;o &amp;eacute; suficiente para ensinar a fundo os assuntos, cada um deles &amp;eacute; assunto de&amp;nbsp;diversos livros, mas muito bom para dar uma&amp;nbsp;id&amp;eacute;ia do que s&amp;atilde;o e como podem ser usados de maneira muito criativa para criar algo para as horas vagas...&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1666508" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/bsonnino/archive/tags/Livros/default.aspx">Livros</category></item></channel></rss>