Download grátis: Microsoft Press E-Books (Novamente)

18.10.2008

É isso ai.
No final do ano passado anunciei alguns e-books que a Microsoft disponibilizou para download de algumas partes.

Recentemente, foi liberado para download capítulos dos livros de LINQ, Silverlight 2 e ASP.NET 3.5.

  

São ótimos livros.
Recomendo!

Abraço!

Rodrigo Kono
MVP [ASP.NET]
MCP – MCTS (WEB – SQL) – MSP
DevGoiás.NET Lead
INETA Brasil Board


Interoperabilidade: Google Maps + ASP.NET

31.08.2008

Está disponível no CodePlex um projeto chamado GoogleMap Control, que é na verdade um ASP.NET Custom Control que utiliza as APIs do Google Maps. O controle é licenciado com o Microsoft Permissive License (Ms-PL).

Porém, já relatado aqui no meu blog, temos uma alternativa que oferece recursos muito interessantes para trabalhar com mapas nas aplicaçõea ASP.NET que é o Virtual Earth ASP.NET Control (Virtual Earth Interactive SDK), sem contar a integração com os componentes do Windows Live Tools. Confira.

Interoperar aplicações e serviços de plataformas e ambientes distintos é a onda da vez. Cada vez mais veremos projetos e aplicações trabalhando juntas (Windows com Linux, .NET com Java, Microsoft com Google, etc). 

Dê sua opinião! Vamos que vamos…
Yo!

Rodrigo Kono
MVP [ASP.NET]
MCP – MCTS (WEB – SQL) – MSP
DevGoiás.NET Lead
INETA Brasil Board


Novo release do Virtual Earth ASP.NET Control

01.08.2008

Olá pessoal.
Lembram quando anunciei o Virtual Earth Control for VS2008?
Pois é, temos uma nova release com os bugs corrigidos e novos controles e agora adicionado ao Windows Live Tools for Microsoft Visual Studio (CTP) que pode ser adicionado ao Visual Studio 2008 e ao Visual Web Developer 2008.

image  image

image  image

Você pode fazer o download aqui.
E fique a vontade, caso queira dar o feedback do produto ao time do Live Dev.

Dos seis novos controles ASP.NET do Live Tools temos:

  • Map Control *novo!*
  • Contacts Control (reference)
  • IDLogin Control (reference)
  • IDLoginView Control (reference)
  • MessengerChat Control (reference)
  • SilverlightStreamingMedia Control (reference)

    obs.: veja o vídeo de demo no Channel9.

    Para outras informações acesse: http://dev.live.com/tools
    Quem estiver testando, por favor dê o seu feedback aqui também sobre suas impressões.

    Abraço!

    Rodrigo Kono
    MVP [ASP.NET]
    MCP – MCTS (WEB – SQL) – MSP
    DevGoiás.NET Lead
    INETA Brasil Board


  • Virtual Earth Control for Visual Studio 2008

    26.05.2008

    A Microsoft anunciou hoje no evento Remix na Austrália o Virtual Earth control for Visual Studio 2008. É o que bastante pessoas já esperavam: um controle ajax fácil de inserir na página e ágil para implementar. É possível criar uma página com o Virtual Earth escrevendo 0 linha de código javascript (nenhuma novidade para quem já usa o framework ajax da Microsoft e não gosta dos saudosos js).

    O controle herda todas as funcionalidades de zoom, perspectivas, visualizações por foto, orientações pelo clique do mouse etc. Também possui todas suas propriedades para utilização do javascript ou pelo código gerenciado. Se limitando apenas em alguns eventos para não prejudicar a performance do map (algo como onmouseover, imagine o "estrago" que um cara pode fazer com isso?! hehe)

    VEMap_2
    Virtual Earth sendo utilizado em uma página ASP.NET no Visual Studio 2008

    Será que isso será surpresa ou falado no MIX Essential aqui no Brasil?
    Eu achei demais! Vamos aguardar.

    Rodrigo Kono
    MCP – MCTS (WEB – SQL) – MSP
    DevGoiás.NET Lead
    INETA Brasil Board


    DICA: Trabalhando com CACHE no ASP.NET

    04.02.2008

    Quando trabalhamos com cache de dados no ASP.NET grande parte dos programadores utilizam o código bem parecido com o descrito abaixo:

     protected void Page_Load(object sender, EventArgs e)
        {
            if (Cache["SomeData"] != null)
            {
                string name = ((SomeClass)Cache["SomeData"]).Name;
            }
    
            //...
        }

    Este código não é suficientemente seguro e segundo a documentação da Microsoft, essa declaração pode gerar uma NullReferenceException. Dessa forma não existe nenhuma garantia de que um objeto em cache irá ficar na memória e após a primeira chamada o objeto pode ser suprimido pelo garbage colector ou por outra thread com dados em cache.

    Para não termos problemas com isso, podemos reescrever o código acima da seguinte forma:

    protected void Page_Load(object sender, EventArgs e)
        {
            SomeClass someClass = Cache["SomeData"] as SomeClass;
            if (someClass != null)
            {
                string name = someClass.Name;
            }
            //...
        }

    Leia mais sobre como adicionar itens em cache no ASP.NET.
    É isso ai.

    Rodrigo Kono
    MCP.NET 2.0 – MCTS (WEB – SQL) – MSP
    DevGoiás.NET Lead
    INETA Brasil Board


    Yes! Mais uma! Dessa vez MCTS WEB

    04.01.2008

    Salve salve pessoal.
    Comecei o ano com o pé direito. Hoje passei na prova 70-528 (Microsoft .NET Framework 2.0 – Web-Based Client Development).

    mctsweb

    A princípio é uma prova bem tranquila. Pra quem já trabalha freqüentemente com o ASP.NET não tem mistério. Mas tem que ficar ligado nas interpretações das questões, é claro =). Bom, caiu bastante sobre user controls, custom web controls (criação, uso, utilização dinâmica), themes, trace, deploy, web parts, master pages, autorização e autenticação de usuários e também a parte do membership, roles e provider. Ah! E caiu umas duas questões sobre app web mobile também.

    Pra quem vai fazer a prova, além de fazer os treinamentos, é muito bom que estude o Self-Paced da Microsoft Press. Tem um conteúdo de primeira. Essa dica foi dada no mês passado pelo Glebe Jr de Natal através do seu blog. Confira o post completo.

    É isso ai.
    A próxima prova é a 70-547, rumo ao MCPD!

    Abraços.

    Rodrigo Kono
    MCP.NET 2.0 – MCTS (SQL – WEB) – MSP Lead
    INETA Board – DevGoiás.NET Lead


    Disponível para download o guia do teste de performance para apps web

    16.11.2007

    Ao pessoal. Ai vai mais uma dica: a documentação que está disponível no MSDN pelo link http://msdn2.microsoft.com/en-us/library/bb924375.aspx agora está disponível para download em pdf. Muito legal.

    Abraço.

    Rodrigo Kono
    MCP.NET 2.0 – MCTS – MSP Lead
    DevGoiás.NET


    ASP.NET AJAX com EXTjs

    23.10.2007

    Vai ai mais uma boa dica.
    Um brasileiro, Rodrigo Diniz, agregou o ASP.NET AJAX Control Toolkit com o framework EXTjs e criou o ExtJs Extender Controls. O resultado é muito bom e vale a pena essa mistura.

    Veja os exemplos aqui e saiba mais no Codeplex.

    Para saber mais sobre EXT, visite o site da Comunidade Brasileira de EXT.

    []‘s

    Rodrigo Kono
    MCP.NET 2.0 – MCTS – MSP Lead
    DevGoiás.NET


    XHTML válido no ASP.NET

    15.05.2007

    Hoje a internet não está apenas o nosso querido computador desktop. Ela está presente nos Celulares, PDAs, WebTVs, Vídeo-games e até mesmo em geladeiras. Se já não bastasse temos n browsers, com diferentes versões no mercado que não entram em consenso com o layout do website e tiram o sono de qualquer designer.

    Por isso a utilização do XHTML deixa com que esse tipo de dispositivo possa acessar a web de forma mais rápida e simples.

    XHTML é o HTML, baseado no XML e por isso será muito mais rápido e simples que o HTML. O HTML, que era baseado no SGML, é muito complexo para os novos meios de acessar a web.

    Recomendo tentar o XHTML, ele é bem simples e mais fácil que o HTML. Mas tentem também não usar tabelas pro layout, ajuda muito e economiza muito mais banda e tempo de carregamento.

    No desenvolvimento do novo site do DevGoiás.NET (a versão xhtml ainda não está no ar) tivemos certas dificuldades para que ter na saída um XHTML 100% válida. Isso porque alguns controles, geram um código “não enxuto”.

    Por exemplo, usando o asp:DataList, eu tenho na saída do browser:
    <div>
         
    <span id="UcHomeNoticias1_DataList1">
              <span>
                      <p><strong><a id="UcHomeNoticias1_DataList1_ctl00_hlkNoticia"class="Titulo" href="noticia.aspx?ID=43"><span id="UcHomeNoticias1_DataList1_ctl00_lblTitulo">Microsoftnomeia novos Students Partner em Goiás</span></a></strong></p><br/>
                      
    <span id="UcHomeNoticias1_DataList1_ctl00_lblPreviewNoticia"></span>
              
      </span>
                <br />
          <span>
    </div>

    O que era pra ser:
    <p><strong>Microsoft nomeia novos Students Partner em Goiás </strong><br /></p>

    E no caso dos JavaScripts a tag CDATA não é inserida nos scripts criados.
    Para o XHTML ser válido, em alguns casos (principalmente quanto contém caracteres especiais ou ‘>’ ‘&’), as funções Javascript devem vir entre o CDATA. Por exemplo:

    <script type="text/javascript">
           // <![CDATA[
           alert("ASP.NET -> AJAX")
           // ]]>
    </script>

    Para as definições principais e primárias, a tabela abaixo é o guia para um website dentro das conformidades:

    Padrão

    Descrição

    Validade do código

    Os sites da Web devem usar XHTML e CSS válidos de acordo com os padrões W3C e ser bem formados. Isso garante o suporte máximo do navegador, um processamento mais rápido e um código mais fácil de entender.

    Navegação do site

    Os sites da Web devem ter uma estrutura hierárquica com um mapa do site e URLs amigáveis para o usuário. Os usuários devem determinar sua localização dentro do site com base no URL.

    Acessibilidade

    Os sites da Web devem estar disponíveis para usuários com deficiência e para uma ampla variedade de navegadores e dispositivos.

    Separação entre design e conteúdo

    Os sites da Web devem usar uma folha de estilo para definir o layout e a apresentação com o conteúdo representado em XHTML


    WebStandards – Aplicar é fundamental!

    03.05.2007

    Se você não se preocupa e não dá a mínima importância para os padrões web, é bom começar a prestar atenção nas suas próximas aplicações web.

    Para programadores WEB vindos do mundo WinForm, é muito bom clicar, arrastar e sair formatando em modo design. Já para nós programadores ASP.NET os recursos de layout sempre estão em 2º, 3º ou no n plano. Quem de vocês já parou para analisar o código gerado pelo GridView? E me diga quantos já se preocuparam com o código criptografado do ViewState que fica na tag INPUT HIDDEN?

    São problemas pertinentes quanto às questões de padrão aplicadas pela W3C e agregadas no conceito WebStandard. Mas você vai me dizer: "Isso não vai mudar a funcionalidade do meu site! Não vou perder tempo com isso.". E eu te digo novamente: "é bom começar a prestar atenção…".

    A internet mudou. Hoje ela não é apenas acessível em desktops, mas já acessível de outros dispositivos como PDAs, celulares, WebTVs, até geladeiras. Tudo isso com uma freqüência menor, mas a tendência é crescente. Para essa mesma visão falamos dos browsers que são vários e com suas particularidades específicas. É preciso prover a informação e acesso ao seu usuário da melhor forma.

    Você conhece Design Pattern? Todas essas questões envolvendo os WebStandards é uma espécie de Design Pattern.

    Para isso irei falar de WebStandards em outros posts focando bastante no ASP.NET e XHTML.

    No post de hoje vou falar um pouco de WebSemântica, Microformatos, Usabilidade e qual é a posição da Microsoft sobre os padrões.

    WebSemântica

    Web Semântica é uma proposta para tornar o conteúdo da internet interpretável por máquinas, o que facilitaria a integração de sistemas e bancos de dados na Internet.

    Um bom exemplo, apontado pelo Alexandre do Acorda pra Web, é o da âncora anoréxica seria essa:

    <a href="http://www.acordapraweb.com">site interessante</a>

    Vamos ver agora uma âncora saudável, corada e em boa forma:

    <a href="http://www.acordapraweb.com" title=”Acorda pra Web! – Web Semântica” hreflang=”pt-br”>site interessante</a>

    Uma das âncoras mais encorpadas são âncoras de arquivos para download. Por exemplo:

    <a href="http://www.acordapraweb.com/compatibilidade.html" title=”Acorda pra Web! – Tabela de Compatibilidade CSS” hreftype=”text/html” hreflang=”pt-br” rel=”enclosure”>Compatibilidade CSS em navegadores</a>

    O atributo hreftype define o tipo de arquivo do link. Nesse caso foi text/html, mas você pode especificar application/zip para arquivos compactados em zip por exemplo.

    Outro atributo interessante é o rel com valor enclosure.

    Esse é um dos microformatos essenciais, que define que o conteúdo daquele link deve ser tratado como um download.

    Microformatos

    São uma extensão do (X)HTML, que cria semânticas próprias aplicáveis a casos específicos. Existem hoje microformatos para a descrição de informações pessoais (hCard), aplicação de licenças a conteúdos publicados na web (rel-license), tags (rel-tag), reviews (hReview), calendários de eventos (hCalendar), etc.

    Numa explicação bem simplista, os microformatos são marcações específicas, utilizando elementos (X)HTML com valores predeterminados para os atributos CLASS, REL e REV que podem ser interpretados por meios automatizados (aplicações, robôs, etc).

    Recomendo a leitura de:

    Algum dos MicroFormatos

    hCalendar Creator – microformats.org/code/hcalendar/creator
    hCards Creator – microformats.org/code/hcard/creator
    hResume Creator – hresume.weblogswork.com/hresumecreator
    hReview Creator – microformats.org/code/hreview/creator
    XFM 1.1 Creator – gmpg.org/xfn/creator
    iCal Generator – technorati.com/events
    vCard Generator –technorati.com/contacts

    Existem microformatos para os mais variados tipos de dados, como:
    (Ref: http://marcogomes.com/blog – Marco Gomes)

    1. Localização geográfica (latitude longitude)
    2. Programa de e-mail que o usuário usa para enviar suas mensagens (!)
    3. Definição da logomarca de uma empresa
    4. Categorização de conteúdo (tag)
    5. Autor do texto
    6. Contato de redes de mensagens instantâneas (instant messengers)
    7. Link para profile pessoal em sites como flickr, blogger.com, del.icio.us
    8. Menus de sites
    9. Listas retráteis (como os FAQ comuns nos nossos sites)
    10. Currículos profissionais.

    Clique aqui e veja o vídeo do Bill Gates dizendo que precisamos dos Microformatos

    Recomendo a impressão desses dois "mapas" para sua orientação. =)


    http://neosite.ilogic.com.br/dicas/wp-content/uploads/2007/04/microformats_cheat_sheet.png

     
    http://neosite.ilogic.com.br/dicas/wp-content/uploads/2007/04/microformats.png

    Microsoft assumindo de vez os padrões web

    O WaSP (Web Standards Project) e a Microsoft se uniram
    para alertar os desenvolvedores aos Web Standards.

    O gerente de produtos para plataformas web da Microsoft – Brian Goldfarb, disse:

    Standards are of increasing importance as Web developers strive to make their sites work across all browsers and accessible by the broadest set of customers.

    Ferramentas como o VS2005 e o Microsoft Expression Web estão no caminho.
    O IE 7.0 corrigiu uma série de inconsistências de padrões que o IE6.0 possuia. Agora basta o Pocket IE melhorar um pouco quanto aos padrões.

    Leiam mais sobre isso no site do WaSP:

    Usabilidade

    O site http://www.feng-gui.com oferece uma ferramenta on-line gratuita de grande utilidade para desenvolvedores web. Utilizando um sistema de inteligência artificial e simula a visão humana, indicando que regiões do seu site chamam mais atenção. Formas, cores e posicionamento de cada elemento do site são analisados. O gráfico indica através de cores as regiões mais quentes (avermelhadas que chamam mais atenção) e mais frias (escuras ou azuladas que chamam menos atenção) do site.

    Veja o teste que fiz do meu blog:

     
    Parece que o meu cabelo e o TOP do blog chamam mais
    atenção que o próprio conteúdo (como assim?!? hehehe).

    É isso pessoal.
    Em outro post eu falo mais sobre WebStandards, usabilidade, Microformatos entre outros.

    Nós fazemos a web.
    Grande abraço!

    Rodrigo Kono
    MCP.NET 2.0 – MCTS – MSP
    DevGoiás.NET – www.devgoias.net