Novas Funcionalidades C# 3.0 – Extensions Methods

Mudámos de casa – visitem o novo site em www.istomesmo.com

Artigo Principal – As Novas Funcionalidades do C# 3.0

Esta é sem dúvida umas das funcionalidade que mais gostei no C# 3.0. Com ela podemos extender tipos existentes (string, int, etc…) ou tipos construídos (client, car, person, etc…) com métodos adicionais. Estes métodos estáticos podem ser invocados com a mesma sintaxe que os métodos de instância.

Esta funcionalidade pode ser extremamente útil no desenvolvimento, e tornar o código muito mais limpo e reutilizável. De seguida vou mostrar um exemplo, de como podemos capitalizar as primeiras letras das palavras que constituem uma determinada string. Para isso vamo criar um Extension Method ao tipo string:

public static class IstoMesmoExtensions
{
public static string ProperCase(this string s)
{
string[] words = s.Split(‘ ‘);
string result = string.Empty;

foreach (string i in words)
{
result = result + i.Substring(0, 1).ToUpper() +

i.Substring(1).ToLower() + ” “;
}
result = result.Substring(0, result.Length – 1);
return result;
}
}

Continuar a ler

Visual Studio 2008 – PowerCommands Extension

Mudámos de casa – visitem o novo site em www.istomesmo.com

image A Microsoft lançou recentemente o site Visual Studio Gallery para agregar todas as extensões para o Visual Studio.

No dia 3 de Março, foi lançada a extensão PowerCommands para o Visual Studio 2008. Esta extensão adiciona um conjunto de funcionalidades a várias áreas do Visual Studio, tornando mais simples certas tarefas.

 

De seguida apresento a lista das principais funcionalidades disponiblizadas por esta extensão:

  • Colapsar Projectos – Este comando permite colapsar os nós da hierarquia de um projecto, de uma solução ou de pastas.
  • Copiar Class – Copia o conteúdo de uma Class para o Clipboard.
  • Copiar Referências – Permite copiar referências para o Clipboard.
  • Colar Referências – Permite colar as referências no local adequado do projecto.
  • Copiar Projecto como Referência – Copia um projecto como referência para o Clipboard.
  • Editar Ficheiro de Projecto – Abre o ficheiro MSBuild do Projecto do projecto seleccionado.
  • Abrir Pasta – Permite abrir no Windows Explorer a pasta onde está o ficheiro seleccionado.
  • Abrir linha de comandos – Abre uma janela da linha de comandos do Visual Studio, a apontar para a pasta do item seleccionado.
  • “Unload Projects” – Como o nome indica, permite fazer unload dos projectos da solução.
  • “Reload Projects” – Permite efectuar reload dos projectos da solução.
  • Remover e Organizar os Usings – Remove os usings não usados, e organiza-os por ordem. Pode ser usado numa Class ou globalmente na Solução ou Projecto.
  • Extrair Constante – Criar uma constante para o texto seleccionado.
  • Limpar Lista de Ficheiros Recentes – Limpa a lista de ficheiros utilizados recentemente pelo Visual Studio.
  • Limpar Lista de Projectos Recentes – Limpa a lista de projectos utilizados recentemente pelo Visual Studio.
  • Transformar Templates
  • Fechar Todos – Fecha todos os documentos abertos no Visual Studio.

Podem efectuar download da extensão PowerCommands para o Visual Studio 2008 através do link seguinte:

http://code.msdn.microsoft.com/Release/ProjectReleases.aspx?ProjectName=PowerCommands&ReleaseId=559

O código fonte também está disponível. Se quiserem investigar como estas extensões são construídas, podem analisá-lo. Mas para isso necessitam de ter o SDK do Visual Studio 2008, que poderão descarregar a partir do site:

Visual Studio Extensibility Developer Center

Está também disponível um documento word com imagens onde podem ver as funcionalidades disponbilizadas.

Sem dúvida uma extensão a manter nas nossas Developers Tools.

Se gostaram deste artigo subscrevam a feed RSS do istomesmo, para ficarem actualizados sobre os últimos artigos.

Subscrevam aqui a fedd RSS

As Novas Funcionalidades do C# 3.0

Marcas Technorati: ,,,

Mudámos de casa – visitem o novo site em www.istomesmo.com

image O C# 3.0 trouxe à plataforma .Net um conjunto de novas funcionalidades que tornam a mesma mais robusta ,completa, e ao mesmo tempo permitem poupar tempo em determinadas rotinas de programação. As novas funcionalidade encaixam-se na platataforma como uma extensão ao C# 2.0.

As principais novas funcionalidades presentes nesta extensão (C# 3.0) são as seguintes:

  • Implicitly typed local variables – permitem que o tipo de uma variável local seja determinado a partir da expressão utilizada para a inicializar.
  • Extension methods – permitem extender os tipos existentes ou tipos construídos com métodos adicionais.
  • Lambda expressions – são uma evolução dos métodos anónimos que possiblitam uma melhoria na determinação dos tipos e nas conversões para “delegates” e “expression trees“.
  • Object Initializers – facilitam a construção e inicialização de objectos.
  • Anonymous types – são tipos/objectos determinados e criados automaticamente a partir de “Object Initializers“.
  • Implicitly typed arrays – permitem a criação e inicialização de arrays que determinam automaticamente o tipo dos elementos do array através da inicilalização do mesmo.
  • Query expressions – disponibilizam uma sintaxe integrada na própria linguagem que permite efectuar queries de modo semelhante ao SQL e XQuery.
  • Expressions tree – possibilitam que as “Lambda expressions” sejam representadas como dados em vez de código (“delegates”).

Nos próximos artigos vou explicar cada uma destas funcionalidades mais detalhadamente. Vamos começar já pela nova palavra do C# 3.0, a palavra “var”…

Continuar a ler

Hotfix para o Visual Studio 2008

Marcas Technorati: ,,

Mudámos de casa – visitem o novo site em www.istomesmo.com

A Microsoft lançou recentemente um hotfix para a versão 2008 do Visual Studio e do Visual Web Developer Express.

Este hotfix vem corrigir essencialmente alguns problemas de performance do editor, algumas falhas na edição HTML, melhor o suporte Javascript e aumentar a performance de compilação quando temos várias dlls na pasta bin.

O download do hotfix pode ser efectuado através do link seguinte:

https://connect.microsoft.com/VisualStudio/Downloads/DownloadDetails.aspx?DownloadID=10826

Se gostaram deste artigo subscrevam a feed RSS do istomesmo, para ficarem actualizados sobre os últimos artigos.

Subscrevam aqui a fedd RSS

Silverlight 2.0 beta 1

Marcas Technorati: ,,,

Mudámos de casa – visitem o novo site em www.istomesmo.com

image A versão beta 1 do Silverlight 2.0 está prestes a ser disponibilizada ao público, muito provavelmente durante o evento MIX 08. O ScottGu colocou recentemente no seu blog uma série de artigos com um tutorial para construir um cliente digg utilizando a verão beta do Silverlight 2.0.

Nos últimos dias apareceu na internet uma imagem com os supostos controlos que constituirão esta versão beta. Na imagem existe um total de 29 controlos que variam desde a simples Textbox até à Grid.

Vejam a imagem em baixo:

Continuar a ler

ASP.NET 3.5 Extensions Preview

Technorati Tags: ,,,

Mudámos de casa – visitem o novo site em www.istomesmo.com

image A Microsoft disponibilizou hoje para download uma preview das ASP.NET 3.5 Extensions. Este pacote inclui um conjunto de novas funcionalidades que extendem o ASP.NET 3.5 e o ADO.NET. Entre as principais funcionalidades salientam-se:

ASP.NET MVC

Plataforma de desenvolvimento utilizado o modelo model view controler (MVC), proporcionado um modelo mais limpo, com suporte para teste unitários e workflow TDD.

ASP.NET Dynamic Data

Acesso a dados simplificado, através da disponibilização de uma plataforma de “Scaffolding” que permite criar as tarefas mais simples de acesso a dados, de uma forma muito rápida com a geração de métodos CRUD (Create, Update, Delete).

Silverlight Controls para ASP.NET

Integração de controlos silverlight para visualização de videos em aplicações ASP.NET muito mais simples.

ADO.NET Data Services

Plataforma para criação de modelos conceptuais de dados, e também um conjunto de serviços para disponibilizar dados através de REST (nome de código ASTORIA).

Entity Framework runtime

Plataforma de acesso a dados através de entidades geradas automaticamente. O LINQ inclui-se nesta plataforma.

Novas funcionalidades ASP.NET AJAX

Melhorias no suporte do botão retroceder do browser, incluindo histórico.

Para efectuar o download deste pacote naveguem até ao endereço:

Download ASP.NET 3.5 Extensions Preview

De todas estas novas funcionalidades, para mim a mais interessante é o novo modelo de programação MVC, que tenta aproximar o ASP.NET de linguagens como o Ruby, que tanto sucesso têm tido ultimamente, pela sua facilidade e simplicidade de desenvolvimento.

Vou fazer alguns testes com estas extensões, e espero publicar brevemente mais alguns posts sobre estas novidades.

Se já começaram a utilizar estas extensões deixem os vossos comentários às mesmas.

Download do Visual Studio 2008 versão RTM

Marcas Technorati: , ,

Mudámos de casa – visitem o novo site em www.istomesmo.com

image Desde o inicio desta semana que a Microsoft disponibilizou para download a versão RTM (Release to Manufacter) para download aos subscritores do MSDN.
Se não são subscritores, não desesperem, podem efectuar download de um Trial. Por enquanto só está disponível a versão Team Suite, espera-se que na próxima semana já esteja disponível o Trial da versão Professional, que será um ficheiro mais pequeno.
O link para download do trial da versão Team Suite é:

Download Trial 90 dias Visual Studio 2008 Team Suite

As versões gratuitas deste novo IDE, denominadas de express editions, também já estão disponíveis para download. Existem quatro versões distintas:

 

Na página das versões express também é possível fazer download de uma imagem de um DVD com todas as versões Express Edition:

Download da imagem do DVD

A versão 3.5 da framework .NET também está disponível para download no endereço:

http://go.microsoft.com/?linkid=7755937