Visual Basic em Português

Página pessoal de Jorge Paulino sobre o Visual Basic (VB.NET, ASP.NET, VB6, VBA) e algumas noticias de tecnologia

VB.NET: Namespace Microsoft.VisualBasic

O Visual Basic.NET (VB.NET) é uma sucessão do Visual Basic 6.0 (VB6) e por uma questão de compatibilidade, e facilidade de migração dos programadores e das aplicações, muitas das funções e objectos, que estavam disponíveis no VB6, estão também disponíveis no VB.NET.

Estas funções e objectos estão agrupadas no namespace Microsoft.VisualBasic e fazem parte do conjunto de referências base de cada projecto, ou seja, quando é criado um novo projecto, já existe uma referência a este namespace, que poderá ser utilizado em todo o projecto.

Existem no entanto alternativas para essas funções e objectos, que estão disponíveis em alguns namespaces da plataforma .NET.

Por uma questão de boas práticas de programação é bom utilizar as funções e objectos mais recentes, pois estas são as que irão prevalecer (nunca se sabe se as outras serão descontinuadas e removidas de edições futuras).

Para desactivar esta referência do projecto e obrigar desta forma à utilização dos novos métodos (pessoalmente recomendo que se faça), pode-se fazer o seguinte:

1 - Duplo clique em My Project ou menu Project – Properties
2 - Seleccionar a TAB References. Aqui estão as referências que estão adicionadas ao projecto.

Podemos ainda, e dentro das referências, clicar em “Unused References” para verificarmos que referências não estão a ser utilizadas no nosso projecto. Isto não irá reduzir o tamanho do ficheiro mas reduzirá o número de dependências do projecto.

3 - Finalmente, nos namespaces importados para o projecto, retiramos a selecção do namespace Microsoft.VisualBasic.

Isto irá obrigar a usar as novas funções no projecto!

Além disso existem funções que estão disponíveis em diferentes namespaces e que poderão provocar alguns problemas, como é o caso de Left(), Len(), etc.

 
Alguns exemplos de conversão funções de VB6 para VB.NET

Formatar números:

        ' VB6
        Dim num As Integer = 12345
        Debug.WriteLine(Format(num, "#,00"))

        ' VB.NET
        Dim num As Integer = 12345
        Debug.WriteLine(num.ToString("#,00"))

Retirar X caracteres à esquerda:

        ' VB6
        Dim num As Integer = 12345
        Debug.WriteLine(Microsoft.VisualBasic.Left(num, 2))

        ' VB.NET
        Dim num As Integer = 12345
        Debug.WriteLine(num.ToString.Substring(0, 2))

Retirar X caracteres do meio de uma string:

        ' VB6
        Dim num As Integer = 12345
        Debug.WriteLine(Microsoft.VisualBasic.Mid(num, 1, 1))

        ' VB.NET
        Dim num As Integer = 12345
        Debug.WriteLine(num.ToString.Substring(0, 1))

Verifica qual o código ascii de um caracter:

        ' VB6
        Debug.WriteLine(Asc("A"))

        ' VB.NET
        Debug.WriteLine(Convert.ToByte("A"c))

Converte um código ascii no seu caracter:

        ' VB6
        Debug.WriteLine(Chr(65))

        ' VB.NET
        Debug.WriteLine(Convert.ToChar(65))

Mostra a data/hora actual:

        ' VB6
        Debug.WriteLine(Now.ToString)

        ' VB.NET
        Debug.WriteLine(DateTime.Now.ToString)

Mostra uma mensagem no ecrã:

        ' VB6
        MsgBox("teste!")

        ' VB.NET
        MessageBox.Show("teste!")

Converte para Inteiro:

        ' VB6
        Debug.WriteLine(CInt("123"))

        ' VB.NET
        Debug.WriteLine(Integer.Parse("123"))

Converte para String:

        ' VB6
        Dim num As Integer = 12345
        Debug.WriteLine(CStr(num))

        ' VB.NET
        Dim num As Integer = 12345
        Debug.WriteLine(num.ToString)

Verifica se uma expressão é numérica:

        ' VB6
        Dim num As String = "12345"
        If IsNumeric(num) Then
            ' verdadeiro
        End If

        ' VB.NET
        Dim num As String = "12345"
        Dim result As Integer
        If Integer.TryParse(num, result) Then
            ' verdadeiro e a variável result
            ' fica com o resultado em inteiro
        End If

Verifica se uma expressão é uma data válida:

        ' VB6
        Dim data As String = "5-2-2010"
        If IsDate(data) Then
            ' verdadeiro
        End If

        ' VB.NET
        Dim data As String = "5-2-2010"
        Dim dt As DateTime
        If DateTime.TryParse(data, dt) Then

            ' verdadeiro e a variável dt
            ' fica com o resultado como DateTime
        End If

Existem muitos mais exemplos, mas estes servem para mostrar algumas das formas de como podemos substituir as antigas funções do VB6 e começar a programar à “.NET way”

Espero que ajude!

0 comentários:

Mensagens Recentes



Microsoft Office Especialist

Membro da Comunidade
Experts-Exchange


Administ. da Comunidade
Portugal-a-Programar



Twitter

Artigos no CodeProject

Artigos no CodeProject

Subscrever Novidades

Endereço de Email:

Delivered by FeedBurner

Seguidores

Histórico