Preparando a migração para o VB.NET - uma visão Geral
O que é o Visual Basic .NET ? (Este artigo foi escrito em 2000/2001)
O VB.NET é a próxima versão do Visual Basic. E desta vez a Microsoft foi fundo. Mais do que acrescentar alguns recursos ao Visual Basic 6.0 a Microsoft reestruturou completamente o VB com o objetivo de tornar a tarefa de escrever e distribuir aplicações para a WEB ou para sistemas com n-camadas muito mais fácil e simples.
O Visual Basic.NET vem com dois novos pacotes para formulários : Windows Forms e Web Forms; uma nova versão da ADO para acesso a fonte de dados desconectadas além de novas características que abrem novas portas para quem utiliza o Visual Basic como ferramenta de desenvolvimento. Com Web forms e ADO.NET pode-se desenvolver rapidamente sites escaláveis; com a incorporação da herança finalmente o VB se torna uma linguagem orientada a objetos.
A versão oficial do Visual Basic.NET ainda não foi lançada. O produto ainda esta na sua versão Beta. O VB.NET vai abrir e atualizar as aplicações desenvolvidas com o Visual Basic 6.0 (tem até um assistente que lhe ajudará na migração) , mas mesmo assim , em muitos casos, será necessário realizar ajustes nos projetos antigos. Você fica com duas opções : ou faz a adaptação para a nova plataforma ou reescreve sua aplicação aproveitando os novos recursos disponíveis. (Os projetos feitos com o VB.NET não podem ser abertos no Visual Basic 6.0).
Ao abrir o seu projeto antigo e fazer a atualização , a linguagem é modificada para a nova sintaxe e os formulários do VB 6.0 são convertidos para Windows Forms.
Trabalhando em conjunto com o Visual Basic 6.0 e o Visual Basic.NET .
Se você possui qualquer projeto escrito nas versões 1.0 a 5.0 do Visual Basic , carregue o projeto usando o Visual Basic 6.0 (atualizando os controles ActiveX) , compile e salve o projeto antes de atualizar para a versão VB.NET.
O VB 6.0 e VB.NET podem ser instalados no mesmo computador e executados ao mesmo tempo; as aplicações escritas na versão 6.0 e na verão .NET podem ser instaladas e executadas também no mesmo computador. Os componentes escritos na versão .NET podem interagir com os componentes COM escritos em versões anteriores do VB e de outras linguagens.
Recomendações
1-) Aplicações para Internet
2-) Projetos Cliente/Servidor
3-) Aplicações Desktop
4-) Atualização do código
Ao migrar o seu código para a versão .NET , o VB cria um novo projeto atualizado e realiza a maioria das alterações necessárias na linguagem e nos objetos para você. Vejamos alguns exemplos:
- Variant -> Object
No VB.NET um novo tipo de dados substitui o tipo Variant , com o mesmo comportamento. É o tipo de dados Object. Durante a migração do código todas as variáveis declaradas como Variant são alteradas Object.
- Integer -> Short
O tipo de dados Integer é alterado para Short . E o tipo de dados Long é alterado para Integer.
é atualizado para:
|
- Propriedades da Sintaxe com Get/Set
O VB.NET introduz uma sintaxe mais intuitiva para as propriedades com grupos Get e Set agora juntos:
é atualizado para:
|
- Formulários do VB para Formulários do Windows
O VB.NET tem um novo editor para formulários - Windows Forms - com suporte a acessibilidade e um editor. Os formulários das versões anteriores são atualizada para Windows Forms.
- Relatório de atualização e comentários
Depois que um projeto é atualizado , um relatório de atualização é incluído em se projeto, descrevendo cada alteração que você precisa fazer para migrar o seu código. Além disto, comentários são adicionados ao código para alertá-lo sobre possíveis problemas.
Recomendações para programação
Veremos agora algumas recomendações sobre como escrever código para minimizar as alterações que serão necessárias em uma possível migração de seu projeto para a versão Visual Basic 7.0.
- Para armazenar datas use o tipo de dado Date
Nas versões anteriores você podia usar o tipo de dado Double para manipular datas. O VB.NET não suporta isto. Vejamos um exemplo
Dim
dbl As Double |
- Utilização dos propriedades padrão dos objetos
No VB 6.0 muitos objetos expôe as propriedades padrão , e , podem ser omitidas no código. Assim TextBox tem Text como propriedade padrão , logo podemos fazer o seguinte:
MsgBox Form1.Text1.Text pode ser escrito como MsgBox Form1.Text1
Assim podemos também usar o seguinte código:
Dim obj As Object
Set obj = Form1.Text1
MsgBox obj
O VB.NET não suporta a omissão dos parâmetros nas propriedades padrão. Veja exemplo a seguir:
prefira usar o código abaixo
|
- Comparações Boleanas com AND/OR/NOT
O VB.NET possui um novo conjunto de operadores para realizar operações Lógicas com BIT.
São eles : BitAnd , BitOr , BitNot e BitXor. Os operadores AND , OR e NOT realizam somente operações lógicas. Para permitir a compatibilidade esteja certo ao usar
AND , OR e NOT somente para comparações Booleanas.
Por questões de compatibilidade o VB.NET inclui as funções VB6.And , VB6.Or e VB6.Not que avaliam os operadores AND , OR e NOT da mesma forma que o VB6. Veja o exemplo a seguir:
|
|
Visual Basic 6.0 -
Resultado : False
|
Usando
a função de compatibilidade VB6.And para obter o mesmo resultado. |
Um melhor tratamento seria:
Após a migração o código será mais familiar:
|
- Evite usar a propagação do Null
As versões anteriores do VB permitem a propagação do Null.
Esta propagação é baseada na premissa que quando Null é usado em uma expressão o resultado da expressão será Null.
Assim temos que no código abaixo o resultado de V será Null:
|
O VB.NET não suporta a propagação do Null. Assim Null +1 irá gerar um erro de incompatibilidade de tipos (Type Mismatch ) no VB.NET.
Assim o VB 6.0 possui duas versões para a função Left : Left$ - retorna uma string e Left - retorna uma variant que pode ser um Null.
O VB.NET possui somente uma versão para Left a qual retorna sempre uma string. No VB.NET as seguintes funções não retornam mais um Null:
Chr | Mid |
Command | Oct |
CurDir | Right |
Date | RTrim |
Environ | Space |
Error | Str |
Hex | Time |
LCase | Trim |
LTrim | UCase |
No VB.NET os vetores tem como índice inicial o valor zero e não permitem o uso de REDIM para variaveis array , a menos que a variável tenha sido previamente declarada usando o DIM. Assim temos:
|
- Procure usar as constantes aos invés de seus valores
|
E prefira usar True e False ao invés de -1 e 0.
- Evite usar as seguintes palavras chaves
As palavras chaves a seguir foram removidas na versão .NET
|
- O que mudou na utilização das APIs
Muitas APIs podem ser usadas exatamente como na versão 6.0 , com pequenos ajustes nos tipos de dados. (Lembre que o tipo Long agora é Integer e que Integer agora é Short).
Durante a migração as mudanças devem ser feitas por você. Exemplo:
Muda para:
|
Já no seguinte código temos:
|
é atualizado para :
|
- Controles e formulários
A versão .NET traz como novidade o Windows Forms que embora seja compatível com os antigos formulários traz as seguintes diferenças:
Bem , depois desta teoria toda , espero que 2001 seja melhor que 2000 para todos.
Com certeza teremos muitas novidades com a chegada da versão 7.0 do VB.
E vou ficando por aqui ...
Até 2001
Veja os
Destaques e novidades do SUPER DVD Visual Basic (sempre atualizado) : clique
e confira !
Quer migrar para o VB .NET ?
Quer aprender C# ??
Quer aprender os conceitos da Programação Orientada a objetos ? Quer aprender o gerar relatórios com o ReportViewer no VS 2013 ? Quer aprender a criar aplicações Web Dinâmicas usando a ASP .NET MVC 5 ? |
Gostou ? Compartilhe no Facebook Compartilhe no Twitter
Referências:
Super DVD Vídeo Aulas - Vídeo Aula sobre VB .NET, ASP .NET e C#
Visual Studio - Dica de produtividade - Quick Launch - Macoratti.net
Visual Studio - Dica de produtividade - Nuget - Macoratti.net
.NET - Dicas de site com livros gratuitos para estudo - Macoratti.net
NET - Visual Studio - 10 atalhos que você deve conhecer - Macoratti.net
ASP .NET 5 . NET Core - Lançamento da versão ... - Macoratti.net
O ASP .NET 5 - Morreu ! Viva o ASP .NET Core 1.0 - Macoratti.net
https://channel9.msdn.com/Events/ASPNET-Events/ASPNET-Fall-Sessions/Introducing-the-dotnet-CLI