Arquivo para a Categoria '.NET'

Microsoft Visual Studio 2010

Para aqueles que não tiveram a sorte de ir ao PDC, podem agora fazer download do Visual Studio 2010 CTP e da .NET Framework 4.0, e dar uma vista de olhos ao futuro IDE de desenvolvimento da Microsoft! Podem ver algumas das novidades aqui!

Para os mais destraídos, reparem que o .NET tem agora um novo logotipo! ;)

Technorati Tags: Microsoft, PDC08, Visual Studio, Visual Studio 2010 CTP

Touchless SDK

Numa altura em que se falam em interfaces baseadas no toque (Touch Based Interfaces), especialmente para dispositivos móveis, começam a surgir outras experiências de utilização que provavelmente serão o futuro das interfaces utilizar - máquina.

Uma dessas possibilidades é mesmo através de gestos reconhecidos por uma simples câmara, cuja interpretação digital poderiam efectuar comandos num dado programa. Nesse sentido, há pouco mais de uma semana apareceu no CodePlex o Touchless SDK, que serve como plataforma para o desenvolvimento de soluções baseadas no seguimento de objectos filmados por câmaras.

Juntamente com o SDK vem uma pequena aplicação que permite testar (e bem!) o conceito aplicado: basta definir um dado objecto na imagem da câmara que seja distinto entre os restantes e o próprio fundo  (normalmente pela diferença entre as cores) para que possa controlar um ponto no ecrã (ou mesmo o ponteiro do rato, porque não!)

É uma experiência interessante e que aconcelho vivamente, pois acredito que um dia as interfaces wireless (seja voz, seja gestos, ou mesmo outra coisa) venham a substituir tudo o que actualmente conhecemos. :)

Technorati Tags: CodePlex, Touchless SDK

Visual Studio 2008 SP1

Visual Studio 2008

Está disponível para download o Service Pack 1 do Visual Studio 2008!

Para além de algumas melhorias na performance no LINQ (uma delas responsável mesmo num aumento de 50% na velocidade de processamento), podemos encontrar ainda o suporte para SQL Server 2008 e ADO.NET Entity Framework, melhoramentos na performance e designers de WPF, e ainda inumeros bugs e problemas resolvidos!

Podem fazer download directamente pelos seguintes links:

Technorati Tags: .NET, Programação, Visual Studio 2008 SP1

Smart Client Software Factory - Abril de 2008

Enterprise Library

Já antes tinha aqui da Patterns and Practices Enterprise Library, um guia de boas práticas para desenvolvimento de aplicações com a .NET Framework.

Agora, falo do equivalente para a .NET Compact Framework e para dispositivos móveis, a Smart Client Software Factory.

Tal como a sua “big sister”, este é um pacote de componentes que servem de base ao desenvolvimento de aplicações móveis, e tem como fonte a própria comunidade de programadores e as suas sugestões e experiencias pessoais.

Technorati Tags: .NET Compact Framework, Mobilidade, Patterns & Practices, Programação

SQL Server Compact 3.5 SP1

SQL Server Compact 3.5

A Microsoft apresentou o Service Pack 1 do SQL Server Compact 3.5, com algumas novidades de grande valor para os programadores!

Neste Service Pack, destacam-se as seguintes alterações:

  • Provider para utilização de ADO.NET Entity Framework
  • Collations dependentes de maiusculas/minusculas
  • Suporte nativo para sistemas de 64 bits

Os seguintes downloads estão disponíveis:

@Steve Lasker’s Web Log

Technorati Tags: Mobilidade, Programação, SQL Server Compact 3.5

Instanciação e Inicialização de Objectos

A .NET Framework 3.5 trouxe muitas mudanças, mas bastante significativa no que toca a escrita de código: a inicialização de objectos!

Imaginemos que pretendemos um objecto para guardar os dados de uma pessoa, e para isso usamos uma classe como a seguinte:

Data Class

Tendo a classe definida sem qualquer tipo de construtor específico para além do herdado pré-definido (sem argumentos), basta criar uma nova instância da classe e inicializar cada uma das propriedades, da seguinte forma:

Class Instantiation with separate Initialization

Mas na framework versão 3.5 podemos fazer a instanciação do objecto e a inicialização das suas propriedades num só comando, da seguinte forma:

Class Instantiation with integrated Initialization

Este é mais um “atalho” que a nova framework disponibilizou, de forma a facilitar a vida aos programadores! ;)

Technorati Tags: .NET, Object Initialization, Programação

Enterprise Library 4.0 – Maio de 2008

Enterprise Library

Já está disponível a versão 4.0 da Enterprise Library!

A Patterns and Practices Enterprise Library é um conjunto de componentes reutilizáveis de software (blocos aplicacionais) desenvolvidos para facilitar certas desafios aos programadores (como os de logging, validação, tratamento de excepções, e muitas outras). Estes blocos são um tipo de “guia” sob a forma de código fonte.

Technorati Tags: .NET, Enterprise Library, Patterns & Practices

“Overloading” de Operadores

Na continuação dos artigos que venho a publicar sobre algumas características que mais me atraem no .NET Framework, apresento hoje o “Overload” de Operadores!

Suponhamos que para um dado projecto, temos que registar para uma equipa o total de golos marcados e golos sofridos no decurso de um conjunto de jogos. Para tal, podemos usar uma classe como a seguinte para representar os dados:

Data Class

Assim, basta então criar uma instância da nossa classe para guardar os resultados e outras tantas para os jogos, e depois somar tudo!

Para efeitos de demonstração, suponhamos que pretendemos registar o resultado de 3 jogos e depois apresentar o resultado final:

Main Program without Operator Overloading

Neste caso, vamos precisamos de somar os valores das propriedades separadamente à nossa instância “total”, como podemos ver dentro do ciclo For; mas podemos evitar este passo, simplesmente indicando ao compilador como é que ele pode somar instâncias da nossa classe!

Introduzimos assim na classe de dados um “overload” ao operador de soma:

Data Class with Operator Overloading

De notar que este “overload” é um método estático (Static) e tem a indicação do tipo de dados e do operador a implementar (operator +).

Finalmente, temos apenas de actualizar o nosso código para passar a usar o operador agora criado:

Main Program using Operator Overloading

O resultado final é exactamente o mesmo, mas em termos práticos mostra-se uma solução muito mais agradável de implementar do que simplesmente somar as propriedades isoladas!

Existem algumas regras que devem saber antes de se lançaram a criar operadores para tudo o que é classe que usam, pelo que a sua leitura é aconselhada! ;)

Technorati Tags: .NET, Operator Overloading, Programação

Extensões em .NET

Nos últimos tempos tenho vindo a dar bastante uso ao Microsoft Visual Studio 2008 bem como à framework .NET 3.5! Assim, nos próximos posts pretendo falar de algumas das novidades que apareceram e como elas podem facilitar a vida dos programadores!

Começo hoje esta rúbrica falando de Extension Methods, ou “métodos de extensão”.

Estes métodos de extensão permitem aos programadores adicionar métodos aos tipos e classes da framework, sem ter que fazer uma nova classe por herança (sub-classing ou inheritance), ou mesmo recompilar a classe original. Estes métodos ficam como que “colados” ao tipo de dados referenciado, ficando disponível para toda e qualquer instância do objecto.

suponhamos que no meu código eu tinha um método que me permite verificar se uma dada cadeia de caracteres contém apenas dígitos, poderia ser algo do género:

Static Method

Assim, bastava fazer OnlyDigits(myString) para saber se a string é ou não composta apenas de números! Um método de extensão equivalente seria o seguinte:

Extension Method

A diferença é que agora, podemos fazer algo do tipo myString.OnlyDigits() para obter exactamente o mesmo resultado! Na verdade, até algo tipo “a minha string”.OnlyDigits() funcionará na perfeição.

Estendemos assim o tipo de dados string com o nosso método OnlyDigits, que fica disponível em toda e qualquer instância deste tipo de dados!

Os métodos de extensão funcionam desde a framework 3.0, mas penso que apenas o Visual Studio 2008 os suporta.

Para mais informações podem consultar o MSDN.

Technorati Tags: .NET, Extension Methods, Programação

DinnerNow.net - Demonstração Tudo-em-um!

DinnerNow.netO DinnerNow.net é uma solução tipo “starter-kit”, que pretende demonstrar uma série de tecnologias da Microsoft, utilizando para isso um modelo referente a uma lista de restaurantes, nos quais podemos encomendar refeições a serem entregues em casa ou no escritório.

No seu desenvolvimento podemos contar com tecnologias como o IIS7, ASP.NET AJAX Extensions, Linq, WCF, WWF, WPF, Windows Powershell e .NET Compact Framework, como pode ser constatado consultando o código-fonte.

Technorati Tags: .NET, DinnerNow.net, Microsoft