Revista MSDN Magazine - Edição 25- Nas Bancas de todo Brasil - Fórum DevMedia
Revista MSDN Magazine - Edição 25- Nas Bancas de todo Brasil
[size=18:7989785c57][b:7989785c57]Revista MSDN Magazine - Edição 25 - Nas bancas de todo Brasil
Confira aqui o resumo desta Edição[/b:7989785c57][/size:7989785c57]
[b:7989785c57]MSDN Brasil
Windows – 20 anos
MIGUEL FERREIRA[/b:7989785c57]
Neste artigo, Miguel Ferreira comenta um pouco sobre a história e os 20 anos de lançamento do Windows. Comenta sobre o Windows Vista, nova versão do sistema operacional da Microsoft, previsto para ser lançado em 2006. Destaca as novidades do "Longhorn Server", agendado para o início de 2007, que trará novidades para os usuários corporativos além, claro, de melhorias já embutidas no Windows Vista.
[b:7989785c57]Encarando o desenvolvedor
MAURO SANT'ANNA[/b:7989785c57]
Em sua coluna, Mauro Sant'Anna fala sobre ética no desenvolvimento de software, mostrando como muitos desenvolvedores utilizam práticas ilegais e criminosas. Algum sistemas, por exemplo, instalam rootkits e softwares potencialmente prejudiciais, como mecanismo de proteção contra cópia, informando o que você fez no seu computador a um servidor central, funcionam usando a sua conexão Internet e o seu computador, sem que você seja diretamente beneficiado, lêem o seu e-mail etc.
[b:7989785c57]Personalizando os controles
DetailsView e FormView
Dino Esposito[/b:7989785c57]
O ASP.NET 1.x introduziu alguns controles data-bound poderosos e úteis. Porém, nenhum foi especificamente projetado para gerenciar a visualização (view) de um único registro. Quando você constrói views "master/detail", você precisa exibir os conteúdos de um único registro. Então quando o usuário selecionar um registro mestre de uma lista ou em um grid, você tipicamente desejará que a aplicação mostre todos os campos disponíveis. Você pode usar o DataGrid e outros controles para exibir um único registro, mas essa abordagem é apenas um "quebra-galho". Para um verdadeiro controle "record-view" em ASP.NET 1.x, você tem que comprar um ou construir o seu próprio.
Atenta para esse problema, a Microsoft acrescentou alguns novos controles no ASP.NET 2.0 que permitem criar views de um único registro. Especificamente, você pode usar os controles DetailsView e FormView junto com o DataGrid e GridView para atingir essa funcionalidade. Funcionalmente falando, FormView e DetailsView são quase idênticos. Eles diferem principalmente no layout da saída gerada. O FormView permite o total controle do layout, possibilitando a definição de um formulário personalizado contendo controles para exibir e editar valores de campos. Por outro lado, DetailsView é restrito a um layout tabular com duas colunas: cabeçalho e valor. Porém, a célula de valor pode ser personalizada com templates.
Essas características provêem uma importante funcionalidade que antes estava faltando. E apesar de ainda serem um pouco limitadas, sempre existe um jeito de contornar essas limitações. Nesta coluna, nos aprofundaremos na interface de programação dos controles DetailsView e FormView, para explicar as mudanças que irão tornar estes controles mais versáteis.
[b:7989785c57]10 Add-Ins para tornar seu trabalho mais produtivo no Visual Studio
JAMES AVERY[/b:7989785c57]
Neste artigo preparei uma lista de ferramentas disponíveis disponibilizadas na forma de add-ins para o Visual Studio. A IDE disponibiliza um modelo rico e extensível, do qual os desenvolvedores Microsoft e a comunidade tem tirado vantagem para prover uma variedade de add-ins de qualidade. Alguns add-ins contribuem significativamente para prover a funcionalidade "how-did-I-live-without-this" ("como posso viver sem isto"), enquanto outros só ajudam a automatizar pequenas tarefas redundantes que executamos freqüentemente.
[b:7989785c57]Programação .NET
Gerando controles em runtime com Reflection e CodeDOM
MORGAN SKINNER[/b:7989785c57]
Uma das características freqüentemente negligenciadas do Microsoft .NET Framework é a habilidade para gerar, compilar e executar código personalizado em tempo de execução (runtime). Isso é feito, por exemplo, durante a serialização dos dados XML e no uso de expressões regulares, onde a função de avaliação de expressões é gerada em tempo de execução.
Este artigo descreve outra área na qual a geração de código em tempo de execução pode ser usada: na criação de controles de IU (interface de usuário). Gerar esses controles uma única vez e então reutilizá-los quando necessário é muito mais eficiente que gerá-los cada vez que um formulário ou página são requisitados.
Isso se aplica a qualquer aplicação que tem campos configuráveis pelo usuário (por exemplo, quando o usuário final pode selecionar itens de dados a serem exibidos na tela). Geralmente definem-se formulários personalizados usando XML. Esses são analisados gramaticalmente em tempo de execução para a construção dinâmica da IU quando a página for carregada. Porém, essa análise gramatical freqüentemente acontece cada vez que o formulário é exibido, ou, em um cenário de servidor, para cada usuário, criando uma sobrecarga desnecessária para a aplicação.
Neste artigo, forneceremos exemplos detalhados de como usar a geração de código de tempo de execução para construir, carregar e executar controles em runtime. Os exemplos que descreveremos podem ser igualmente aplicados ao .NET Framework 1.x e 2.0. Existem alguns acréscimos significativos no namespace Reflection na versão 2.0 do framework, mas essas mudanças não invalidam nem prejudicam de forma alguma, as soluções aqui apresentadas.
[b:7989785c57]Perguntas e Respostas BigInteger, GetFiles e mais
STEPHEN TOUB[/b:7989785c57]
Pergunta - Preciso trabalhar com números grandes, maiores que os tamanhos permitidos por UInt64. O Microsoft® .NET Framework tem algum suporte para isso?
Pergunta - Tenho um atributo que uso nas classes, para auxiliar no processo de desenvolvimento, mas não desejo que essa informação fique exposta ao público. Para tal, tenho encapsulado todas as aplicações do atributo com a diretiva de compilação DEBUG:
[MySecretAttribute(´dado privado´)]
Esse é o melhor modo?
Pergunta - Estou trabalhando em um utilitário e, como parte desse, preciso exibir os conteúdos de um arquivo de um modo agradável, preferencialmente em hexadecimal. Quais são minhas opções?
Pergunta - Gostaria de usar DirectoryInfo.GetFiles para enumerar todos os arquivos em uma hierarquia de pastas, mas tenho algumas preocupações. Primeiro, GetFiles parece que só enumera os arquivos na própria pasta especificada e não dentro dos subdiretórios. Segundo, só preciso fazer um pequeno trabalho para cada um dos arquivos, mas em alguns dos meus diretórios tenho milhares de arquivos, e me parece um desperdício carregar todos em um array antes de processá-los. Sugestões?
[b:7989785c57]Windows Forms 2.0
ALEXANDRE FERNANDES CHAUD TARIFA [/b:7989785c57]
O desenvolvimento de aplicações Windows Forms está presente em diversas empresas principalmente pela facilidade no desenvolvimento e a produtividade do usuário final. Normalmente as aplicações Windows Forms estão ligadas às atividades operacionais / administrativas dos sistemas nas empresas.
Com o lançamento do Visual Studio 2005 e da plataforma .NET 2.0, muitos novos recursos foram adicionados, com novos controles, recursos de design, facilidade de distribuição etc. A produtividade é o principal ganho para o desenvolvedor, agilizando ainda mais o desenvolvimento desse tipo de aplicação. Unindo os recursos do Visual Studio 2005 e a tecnologia Windows Forms 2.0, temos um poder imenso com uma produtividade fenomenal.
A partir de agora apresentaremos esses novos recursos divididos por categorias. Todos os exemplos serão realizados utilizando o Visual Basic Express 2005 e podem ser feitos da mesma maneira em qualquer versão do Visual Studio 2005.
[b:7989785c57]Introdução ao MSF Agile
FÁBIO CÂMARA[/b:7989785c57]
Quando analisamos o sucesso das implementações internas da Microsoft, percebemos uma semântica totalmente orientada ao resultado. Em outras palavras, em cada projeto, todos os membros do time sabem que não existe nada mais importante do que o próprio projeto. Essa semântica presente nos projetos da Microsoft é aderente aos valores e princípios de metodologias baseadas em modelagem ágeis. Pensar desta forma seria o mesmo que afirmar que já usávamos MSF Agile antes dele ser documentado como metodologia.
Primeiramente vamos compreender a diferença entre propostas ágeis como o MSF Agile e propostas prescritivas como o UP – Unified Process, criado pela famosa empresa Rational. A diferença mais gritante, na minha leitura, é que as metodologias prescritivas preocupam-se mais com a forma, e as ágeis com o conteúdo. Na verdade, as duas propostas defendem o uso de artefatos específicos em determinadas iterações, entretanto a formalidade exigida é diferente e a quantidade de artefatos também.
Outro ponto de destaque, negativo na minha compreensão, é a "crença" por parte dos prescritivos de que as pessoas são facilmente substituíveis se você possui e pratica essa formalidade exigida. Minha experiência pessoal me ensinou que somente as pessoas medíocres são facilmente substituíveis nos projetos e que não existe processo indolor para a substituição de competentes. Portanto neste tópico, sou favorável aos valores ágeis.
[b:7989785c57]Aplicações Multidatabase com .NET Framework 2.0
ANDREY SANCHES[/b:7989785c57]
Você já precisou desenvolver uma aplicação que precisasse funcionar com diferentes bancos de dados (multidatabase)? Tenho certeza que a maioria dos desenvolvedores já sentiu essa necessidade.
No ADO.NET 1.x isso já era possível através do uso de interfaces, disponíveis para criação de objetos, mas ainda demandava algumas boas linhas de código. No ADO.NET 2.0 temos um grande conjunto de novas classes de acesso a dados, inclusive classes especializadas para factory de objetos, facilitando o desenvolvimento e ganhando produtividade nessa tarefa cada vez mais comum: criar aplicações multidatabase.
Este artigo tem a missão de mostrar como é feita a "fábrica de objetos" (factory), utilizada para tornar sua aplicação multidatabase. Vamos utilizar os bancos de dados SQL Server e Access para simular esse processo, onde ficará simples e clara sua aplicabilidade.
[b:7989785c57]ASP.NET 2.0
POO com ObjectDataSource
GUINTHER PAULI[/b:7989785c57]
O ASP.NET 2.0 introduziu um novo e importante conceito de acesso a fontes de dados, o que chamamos de Data Sources. Um Data Source é uma entidade que centraliza todo o acesso a dados no ASP.NET, facilitando a vinculação com controles de tela e reduzindo drasticamente o código necessário para criar a funcionalidade da página, como veremos neste artigo.
O ASP.NET 2.0 oferece alguns Data Sources padrão, como o AccessDataSource, DataSetDataSource, SqlDataSource e ObjectDataSource, este último tema deste artigo. Nada impede que você crie seu próprio DataSource, bastando para isso criar uma classe que implemente a interface IDataSource.
Este artigo é um tutorial passo a passo que vai mostrar como criar uma aplicação Web que faça uso desse novo modelo de acesso a dados, onde aproveitarei para apresentar alguns novos recursos do ASP.NET 2.0 e do Visual Studio 2005. Caso queira, você também pode utilizar o Visual Web Developer 2005 Express para criar este exemplo.