Desenvolvimento - Visual Studio

Várias Linguagens e Troca de tags rápidas - Novidades do Visual Studio 2011

Caro(a) Leitor(a), hoje gostaria de abordar novas funcionalidades e melhorias da ferramenta de desenvolvimento chamada Visual Studio 11 da empresa Microsoft. Lembrando que com ela, você pode programar em várias linguagens dentro de uma mesma plataforma, dentro do mesmo projeto e gerar interface rapidamente.

por Mauricio Junior



Primeira dica

Note que na figura 1, tenho dois projetos separados. Um criado utilizando a linguagem VB e outro criado na linguagem C#. O projeto do tipo ClassLibrary vira dll e o aplicativo WebApplication feito em C#, referencia a dll e utiliza os métodos específicos. No final vira tudo linguagem de máquina.

Essa independência de linguagem é muito boa, pois existem desenvolvedores melhores em VB e outros melhores em C#, que podem trabalhar no mesmo projeto.

Separação de Projetos

Figura 1. Separação de Projetos.

Segunda dica

Depois de migrar pelo menos dois projetos para a versão do Visual Studio 11, percebi que as melhorias na ferramenta estão cada vez melhor; tanto na parte de HTML como na parte de linguagem.

Um exemplo real e significativo é a troca automática da tag. Vou tentar explicar melhor sobre isso. Tenho um código dentro da tag <div>, posso mudar a tag <div> para

e automaticamente a ferramenta detecta o final da tag <div> e muda para

.

Listagem 1. Troca automática de tag.

  <div>
    <asp:TextBox ID="txtTeste" Runat="server" Rows="10" Columns="4" 
     TextMode="MultiLine" Text="teste" Height="101px"    
     Width="382px"></asp:TextBox>
    </div>

Se eu alterar a tag <div> para <p>, automaticamente a tag </div> é alterada para </p> sem qualquer problema ou lentidão.

Listagem 2: Aleteração automática de tag.

<p>
   <asp:TextBox ID="txtTeste" Runat="server" Rows="10" Columns="4" 
      TextMode="MultiLine" Text="teste" Height="101px" 
      Width="382px"></asp:TextBox>
</p>

Isso funciona para qualquer tag na parte HTML. O processo de mudança é bem rápido e simples, altera na mesma hora.

Terceira dica

A terceira dica é sobre gerar uma interface. Agora existe no menu Refactor a opção chamada Extract Interface... que gerar uma nova interface de acordo com o nome existente da sua classe.

A ferramenta Visual Studio 11 detecta o nome da classe e coloca um I na frente. Na versão antiga, não existia essa opção, era preciso criar na mão.

Gerando Interface

Figura 2. Gerando Interface.

Depois de clicar com o botão direito em cima da minha propriedade chamada _minha Vida, escolhe extrair para uma interface. Apareceu a tela.

Extract Interface

Figura 3. Extract Interface

Automaticamente aparece o nome da classe com o I na frente, gera um nome do arquivo e pede que seja selecionado os membros da interface. Depois de marcar o meu único membro e clicar no botão OK, a minha classe principal foi estendida. A ferramenta já colocou isso pra mim.

Listagem 3: Criando Classe.

    public class Class1 : WebApplication1.IClass1
    {
        public int _minhaVida { get; set; }

        private void teste()
        {
            _minhaVida = 12;
        }
    }

A interface foi criada perfeitamente.

Listagem 4: Interface.

using System;
namespace WebApplication1
{
    interface IClass1
    {
        int _minhaVida { get; set; }
    }
}

Para finalizar, ele gerou a classe respeitando a mesma estrutura de diretório. Veja na figura 4 como a interface IClass1.cs está.

Estrutura da Classe

Figura 4.Estrutura da Classe.

Bom, eu fico por aqui e espero que tenha gostado.

Mauricio Junior

Mauricio Junior - Formado pela Faculdade Anhanguera, Especialista pela FGV (Fundação Getúlio Vargas), Pós-Graduação em Docência Superior e cursando Mestrado na UNB Engenharia Elétrica; . Tenho 29 anos e possuo sete livros publicados pela editora Ciência Moderna e sou editor do Linha de Código.
Sou Certificado Microsoft MCP, MCAD e MVP, faço parte da comunidade ASPNETI.COM, onde publico artigos, vídeos, ebooks e livros Publico artigos, vídeos e podcast em outras comunidades. Trabalho como Analista de Sistemas / Desenvolvedor na empresa ATP S/A.
Blog:
blog.mauriciojunior.org
Site pessoal: www.mauriciojunior.org