manual de vb.net en nuestro idioma parte 2

Ver el tema anterior Ver el tema siguiente Ir abajo

manual de vb.net en nuestro idioma parte 2

Mensaje  HERNAN DARIO RODRIGUEZ el Mar 17 Ago - 10:04:39

MANUALILLO DE VISUAL BASIC.NET

En esta segunda entrega pretendo hacer una corrección de la entrega pasada porque había omitido algunos temas importantes así como también se ha hecho una mejor distribución de los mismos, igualmente se ha hecho una corrección de ortografía y presentación.

Poco a poco en los temas se va profundizando más y más debido a lo que se ha visto y los ejemplos expuestos, además que los ejemplos retoman todo lo anterior, para mayor claridad.

Espero que de alguna forma, este pequeño manual sirva para los que tratan de aprender un nuevo lenguaje. A partir de la tercera entrega se hará separada, quiero decir que ésta, la segunda, retomó la anterior pero la tercera no, será independiente siguiendo la secuencia por donde termina la segunda, espero me disculpen pero tenía que organizar y corregir la primera.

Los lenguaje de la plataforma .net soportan ahora un solo repositorio de clases y funciones llamado BCL(biblioteca de clases base), esto hace que se pueda compartir el código entre los lenguajes

Este manualillo sólo pretende ser una mera introducción a lo que es vb.net, es poca la información encontrada hasta ahora del lenguaje, no espero cubrir todo sino medianamente informar de a cuerdo a lo que he leído de diversas fuentes. Estoy aprendiendo también y creo que realizando este trabajito se aprenden muchas cosas. Cualquier error por favor me disculpan no pretendo ser un duro en esto sino como dije antes es una forma de aprender y que otros aprendan.

Tampoco se explica lo que es la plataforma .Net FrameWork, como introducción sino que a medida que se avance el usuario se dará cuenta de que es y como se usa.

Al final de cada capítulo se realizan ejemplos para que puedan usarlos de prueba, claro esta que estos ejemplos son en modo consola, posteriormente se introducirán en el entorno visual.

Este manual no es exactamente para un novato, debe tener ideas de programación, al menos haber programado en algún lenguaje.


En el primer capitulo se estudia los tipos de datos soportados por vb.net.

En el capítulo 2 se estudia los operadores

En el capítulo 3 se estudia las instrucciones básicas que comprenden las condiciones, los ciclos etc.
Aquí se realizará un estudio de los tipos de datos como objetos de clase, donde se les mostrará los métodos que poseen y además las funciones para convertir de un tipo a otro.

En el capítulo 4 se estudia el ámbito de las variables, estructuras, enumeraciones, funciones y procedimientos

En el capítulo 5 se estudia las arreglos y las matrices.

En el capítulo 6 se estudia las excepciones

En el capítulo 7 trabajo con archivos

En el capitulo 8 El entorno visual de Microsoft visual basic.net, aquí en este capítulo se verán ejemplos con algunos controles básicos como son las etiquetas, los cuadros de texto, interacción con la forma, botones, listas, combos y algunos otros.

En el capitulo 9 se estudiarán los menús, las barras de herramientas, de estado, cuadros de diálogos comunes, además se realizarán ejemplos visuales usando todo lo visto hasta el momento.

En el capitulo 10 se estudiará las clases

En el capítulo 11 se estudiará la herencia

En el capítulo 12 se estudiará el GDI+
En el capítulo 13 se estudiará ADO.net


Tipos de datos


Los tipos de datos soportados por vb.net son


Boolean
Byte
Char
Date
Decimal
Double
Integer
Long
Short
Single
String
Object

Ahora se muestra una tabla para indicar los valores que pueden almacenar

Dato Cantidad de memoria Capacidad
Boolean 2 bytes True o False
Byte 1 byte 1 Byte sin signo comprende un número entre 0 a 255
Char 2 bytes Un carácter Unicode o número sin signo comprendido con un rango de 0 y 65535
Date 8 bytes fechas comprendidas entre
el 1 de enero del año 1
y el 31 de diciembre de
9999, y horas desde las
0:00:00 (medianoche) a las 1:59:59.
Decimal 16 bytes El mayor valor posibles es de +/-79.228.162.514.264.337.593.543.950.335. Para números con 28 decimales, el mayor valor posible es de +/- 7,9228162514264337593543950335 mientras que el menor valor posible distinto de cero es +/- ,0000000000000000000000000001 (+/-1E-28).
Double 8 bytes Se almacenan como números IEEE de punto flotante de doble precisión Los valores van desde –1,79769313486231570E+308 a –
4,94065645841246544E-324 para números negativos y de 4,94065645841246544E-324 a 1,79769313486231570E+308 para números positivos.
Integer 4 bytes Valores con signo comprendidos entre –2.147.483.648 y 2.147.483.647.
Long 8 bytes valores con signo comprendidos entre –9.223.372.036.854.775.808 y 9.223.372.036.854.775.807.
Short 2 bytes - 32.768 a 32.768
Single 4 bytes Se almacenan como números IEEE de punto flotante de precisión simple con valores que van de –3,4028235E+38 a –1,401298E-45 para números negativos y de 1,401298E-45 a 3,4028235E+38 para números positivos. Los números de precisión simple almacenan aproximaciones de números reales.
String La longitud de un objeto String puede ir desde cero hasta, aproximadamente, dos mil millones de caracteres. Cada carácter es un valor Unicode de 16 bits.

Object 4 bytes Al declarar una variable como Object, puede utilizarla posteriormente para hacer referencia a cualquier objeto reconocido por la aplicación.


Para asignar a una variable un valor se procede de la siguiente manera
1. se declara la variable y
2. luego se asigna con el operador “=”. Se presentan 2 opciones

a. Dim va As Integer

va=5

b. Dim va As Integer=5

Y las constantes se declaran como

Const n as Integer=10 ‘En esta línea no usamos Dim porque es constante precisamente.

También se pueden declarar varias variables en una misma línea por ejemplo:
Dim a,b,c As Short

En la línea anterior a, b y c serán de tipo Short

Lo anterior se pudo haber escrito como:

Dim a As Short
Dim b As Short
Dim c As Short

O bien

Dim a As Short,b As Short,c As Short

No es recomendable dejar una variable sin indicar el tipo por ejemplo:

Dim i

Esto generaría un error después de declarar la Option Strict en On, porque indicaría que no se debe dejar sin declarar el tipo.

Algo que no se puede hacer es lo siguiente:

Dim i,b As short=5

Porque generaría un error indicando que no se puede inicializar varias variables al tiempo.
Lo cual se haría de la siguiente manera

Dim As Short,b As short=5
Aunque solo b tendrá un valor de 5

Igualmente
Dim a As Short,b,c As integer,d As Short=3
Sólo d tendrá un valor de 3

Todas las variables numéricas al no inicializarlas tendrán como valor inicial 0, las variables de tipo char tendrán un null o vacía.

Ejemplos 1

Module Module1

Sub Main()
Dim A As Short = 2, B As Short
B = 4
Console.Write("A={0},B={1}", A, B)
Console.Read()
End Sub

End Module

Esto da como resultado
A=2,B=4



Operadores


Los operadores se utilizan para realizar operaciones aritméticas con los datos contenidos dentro de las variables. Estos son:

* / \
+-
*= /= += -= y otros que están mostrados en una tabla más adelante

Los paréntesis indican cómo se necesita ejecutar una operación aritmética. Por ejemplo observe el resultado de las dos operaciones siguientes.

Dim i As Short=5
Dim j As Short=10

1 i* j+5

2 i* (j+5)

La línea 1 da como resultado 55

La línea 2 da cómo resultado 75

Los operadores += y –= se utilizan para sumar o restar la unidad a una variable por ejemplo

Dim i As Short
i+=1
i-=1
sin embargos se pueden usar de la manera normal o sea
i=i+1
ó
i=i-1
Los otros operadores se usan de igual forma

El siguiente cuadro resume los operadores de vb.net

Acción Elemento del lenguaje
Aritméticos ^, –, *, /, \, Mod, +, =

Asignación =, ^=, *=, /=, \=, +=, -=¸ &=

Comparación =, <>, <, >, <=, >=, Like, Is

Concatenación &, +

Operadores lógicos/bit a bit Not, And, Or, Xor, AndAlso, OrElse

Varias operaciones AddressOf, GetType


Por ejemplo si usamos una variable string

Dim var1 As String = "10"
Dim var2 As String = "3"
var1 += var2 ' El valor de var1 ahora es "103".



Sería una buena practica de programación si se activa la opción Option Strict o sea que esté en On y no en Off para que obligue a que los tipos de datos que se usen sean del tipo adecuado. Además de Option Explicit en On para que todas las variables sean declaradas

Cuando está activa esta opción no se puede realizar la siguiente asignación

Dim carácter As Char=”A”

Porque generaría un error indicando que no se puede convertir un tipo string a char lo mejor sería definirla como

Dim carácter As Char=”A”c

Ejemplo 2
Option Strict On
Module Module1

Sub Main()
Dim A As Char = "E"c, B As Char = "A"c
Dim union As String
union &= A
union &= B
Console.Write("union={0}", union)
Console.Read()
End Sub

End Module

Esto da como resultado

Union=EA


Instrucciones básicas



Las instrucciones básicas de todo lenguaje comprende las condiciones y los ciclos.

Entre ellas veremos:

If

Esta se usa para preguntar por ejemplo

Dim i As Short=5

If i > 0 then
‘Haga cualquier cosa
End if
Como también se puede evaluar la parte negativa

If i > 0 then
‘Haga cualquier cosa
else
‘Tambien haga cualquier cosa
End if


Cómo también se puede evaluar varias alternativas cómo

If i =1 0 then
‘Muestre el valor
elseif i=2 then
‘Muestre el valor
else
‘Tambien haga cualquier otra cosa
End if


También podemos usar la función IIF, que funciona de la siguiente forma

iif(i=1,”uno”,”otro”) o iif(i>0,”Positivo”,”Negativo”), si tuviéramos el siguiente caso

if B=5 then
A=1
Elseif B<=0 then
A=-1
Elseif B>5 then
A=1
Else
A=0
End if

Lo llevaríamos a la función iif de la siguiente forma

A=iif(B=5,1,iif(B<=0,-1,iif(B>5,1,0)))

Sin embargo tenemos otra opción, la función Switch

A=Switch(B=5,1,B<=0,-1,B>5,1)

Como observará el primer elemento de cada pareja es la expresión a evaluar.

También se puede anidar las instrucciones if
Por ejemplo

If A>0 then
If (A mod 2 )=0 then
‘Número par
Else
‘Número impar
End if
Else
‘Nùmero negativo
End if

Select case

Esta instrucción permite evaluar múltiples valores por ejemplo:
Dim B As Short =30


Select case B
Case 5
‘Si fuera igual a 5
Caso Is < 10
‘Si fuera menor a 10
Case Is> 20
‘Si fuera mayor a 20
Case 23 to 25
‘Si fuera mayor o igual a 23 y menor e igual a 25
Case 1 to 2
‘Si fuera 1 o 2
Case 26 to 28,31
‘Si fuera mayor o igual a 26 y menor e igual a 28 o si es 31
Case else
‘Si no es ninguna de las anteriores
End select


Do While

Este ciclo es mejor mostrarlo con un ejemplo supongo que con eso es suficiente
Se ciclo se realiza mientras la condición sea verdadera o para este caso mientras i sea mayor que 0, observe que si i no fuera mayor que cero al ingresar no realizaría el ciclo
Option Strict On
Module Module1
Sub Main()
Dim i As Integer = 5
Do While i > 0
Console.WriteLine(i)
i -= 1
Loop
Console.Read()
End Sub
End Module

Debe generar como resultado
5
4
3
2
1

Do
Loop While

Igual que el anterior es mejor mostrarlo con un ejemplo
Este ciclo se realiza mientras i sea mayor que 0, observe que si i fuera menor que cero al menos ingresaría una vez al ciclo


Option Strict On
Module Module1
Sub Main()
Dim i As Integer = 5
Do
Console.WriteLine(i)
i -= 1
Loop While i > 0
Console.Read()
End Sub
End Module

Debe generar como resultado
5
4
3
2
1

El ciclo for se analizará cuando veamos arreglos


Ejemplo 3

Option Strict On
Module Module1

Sub Main()
Dim B As Short = 6, A As Short
If B = 5 Then
A = 1
ElseIf B <= 0 Then
A = -1
ElseIf B > 5 Then
A = 1
Else
A = 0
End If
Console.Write("A={0}", A)
Console.Read()
End Sub

End Module

Esto da como resultado
A=1

Ejemplo 4

Option Strict On
Module Module1

Sub Main()
Dim B As Short = 30
Select Case B
Case 5
'Si fuera igual a 5
Console.Write("B={0}", B)
Case Is < 10
'Si fuera menor a 10
Console.Write("B={0}", B)
Case Is > 20
'Si fuera mayor a 20
Console.Write("B={0}", B)
Case 23 To 25
'Si fuera mayor o igual a 23 y menor e igual a 25
Console.Write("B={0}", B)
Case 1 To 2
'Si fuera 1 o 2
Console.Write("B={0}", B)
Case 26 To 28, 31
'Si fuera mayor o igual a 26 y menor e igual a 28 o si es 31
Console.Write("B={0}", B)
Case Else
'Si no es ninguna de las anteriores
Console.Write("ninguna de las anteriores")
End Select
Console.Read()
End Sub

End Module

Esto da como resultado
B=30

Ejemplo 5

Option Strict On
Module Module1
Sub Main()
Dim i As Integer
Dim j As Integer
Dim c As Char
i = Console.Read()’aqui lee un carácter
c = Microsoft.VisualBasic.Chr(i)’Lo convierte a carácter
j = Microsoft.VisualBasic.Val(c)’Lo convierte a integer
j += 5
Console.WriteLine("j: {0}", j)’Muestra el resultado
Console.ReadLine()
End Sub
End Module

Si le digitamos 5 para el valor de i

Esto da como resultado

J:10
Observe que en este ejemplo se usan las funciones de la versión anterior de visual basic.net

TIPOS DE DATOS COMO OBJETOS DE CLASE


Antes de introducirnos en este tema se debe aclara que es una clase, objeto,

Clase: Son tipos de datos a partir de los cuales podemos crear objetos, estos pueden contener miembros, métodos, propiedades etc.

Objeto: Es una instancia de una clase

Los tipos de datos en visual basic.net con objetos de clase, cada vez que se crea un objeto bien sea short, integer o cualquier otro se crea un objeto de clase short, integer o cualquier otro tipo de datos.

Las clases numéricas

En esta sección veremos la siguiente clase:

La clase Integer

Esta y las siguientes (Short, byte, double, boolean ,decimal, single,long char, string y objecto), clases comparten todas casi los mismos métodos salvo en algunas que tienen menos métodos y en otras que tienen más de las mostradas.


Esta clase almacena un datos de tipo entero. Alguno de sus métodos son:

• CompareTo Compara esta instancia con un objeto especificado y devuelve una indicación de los valores relativos.

• Equals Devuelve un valor que indica si la instancia equivale a un objeto especificado.


• GetHashCode Devuelve el código hash de esta instancia.

• GetType Obtiene el tipo de objeto de la instancia actual


• Parse Convierte la representación en forma de cadena de un número en el entero de 32 bits con signo equivalente.

• ToString Convierte el valor numérico de esta instancia en la representación de cadena equivalente.

• MinValue Se obtiene el valor mínimo del tipo de dato correspondiente

• MaxValue Se obtiene el valor máximo del tipo de dato correspondiente

Ahora se realizarán ejemplos para mostrar cada uno de los métodos anteriores

CompareTo Este método lo que hace es una comparación con otro objeto o consigo mismo verificando si es igual en su contenido.

Por ejemplo

Este ejemplo compara dos objetos de tipo integer verificando el contenido.

Hay 3 posibilidades

Si el resultado es =0 indica que el contenido en el objeto es igual que el contenido almacenado en el objeto pasado como parámetro
Si el resultado es >0 indica que el contenido en el objeto es mayor que el contenido almacenado en el objeto pasado como parámetro
Si el resultado es >0 indica que el contenido en el objeto es menor que el contenido almacenado en el objeto pasado como parámetro





Module Module1
Sub Main()
Dim i As Integer = 5
Dim j As Integer = 4
Dim r As Integer
r = i.CompareTo(j)
If r > 0 Then
Console.Write("i={0} es mayor que j={1}", i, j)
ElseIf r < 0 Then
Console.Write("j={0} es menor que i={1}", j, i)
Else
Console.Write("i={0} es igual a j={1}", i, j)
End If
Console.Read()
End Sub
End Module

Dará como resultado
i=5 es mayor que j=4

Equals compara dos objetos del mismo tipo retorno true o false
Por ejemplo

Module Module1
Sub Main()
Dim i As Integer = 5
Dim j As Integer = 4
Dim r As Boolean
r = i.Equals(j)
If r = True Then
Console.Write("i={0} es igual a j={1}", i, j)
Else
Console.Write("i={0} es diferente de j={1}", i, j)
End If
Console.Read()
End Sub
End Module

Dará como resultado
I=5 es diferente de j=4

Si j tuviera 5 el resultado sería
I=5 es igual a j=4

GetHashCode Devuelve el código hash de esta instancia (Realmente no sé la utilidad)

Ejemplo
Module Module1
Sub Main()
Dim i As Integer = 5
Console.Write("Código hash para i:{0}={1}", i, i.GetHashCode())
Console.Read()
End Sub
End Module

Dará como resultado
i:5=5

GetType indica el tipo de objeto
Ejemplo

Module Module1
Sub Main()
Dim i As Integer = 5
Console.Write("i es un Tipo de dato {0}", i.GetType())
Console.Read()
End Sub
End Module

Dará como resultado
i es un Tipo de dato System.Int32

Se preguntarán porque System.Int32 lo que pasa es que ése es el verdadero nombre que tiene el tipo de dato Integer en la plataforma .net framework y ahora se llama Integer para conservar la compatibilidad con las versiones anteriores, es simplemente el nombre

Parse convierte una cadena que representa un número Integer a un número de tipo Integer

Ejemplo

Module Module1
Sub Main()
Dim i As Integer
Dim valor As String
valor = 31000
'Primera opción
i = Integer.Parse(valor)
'Segunda opción
' se coloca en comentario
'si quiere coloca en comentario la línea de
'la primera opción y quita el comentarió de l
'la segunda
'i = i.Parse(valor)
Console.Write("i={0}", i)
Console.Read()
End Sub
End Module

ToString Este método convierte a cadena el número especificado

Ejemplo

Module Module1
Sub Main()
Dim i As Integer = 31550
Dim valor As String
valor = i.ToString()
Console.Write("valor={0}", valor)
Console.Read()
End Sub
End Module

MinValue y MaxValue Con este ejemplo creo que es suficiente

Module Module1
Sub Main()
Dim i As Integer
Console.WriteLine("el valor minimo de este tipo de dato es {0}", i.MinValue)
Console.WriteLine("el valor máximo de este tipo de dato es {0}", i.MaxValue)
Console.Read()
End Sub
End Module

Sin embargo también se puede realizar de la siguiente manera, donde no es necesario declarar ninguna variable para verificar el mínimo y máximo de un tipo de dato.

Module Module1
Sub Main()
Console.WriteLine("el valor minimo de este tipo de dato es {0}", Integer.MinValue)
Console.WriteLine("el valor máximo de este tipo de dato es {0}", Integer.MaxValue)
Console.Read()
End Sub
End Module


Ahora se verán los otros métodos

Todos estos métodos son de la clase Decimal sin embargo no son todos, los demás los
deben Investigar.

Module Module1
Sub Main()
Dim i As Decimal
Dim j As Decimal
i = 1500
j = 2500
Console.WriteLine("Valor de i={0} , Valor de j={1}", i, j)
Console.WriteLine("La suma de estas dos variables es {0}", Decimal.Add(i, j))
Console.WriteLine("La división de estas dos variables es {0}", Decimal.Divide(i, j))
Console.WriteLine("La multiplicación de estas dos variables es {0}", Decimal.Multiply(i, j))
Console.WriteLine("El valor multiplicado por -1 {0}", Decimal.Negate(i))
Console.WriteLine("Resta el primer valor del segundo {0}", Decimal.Subtract(i, j))
Console.Read()
End Sub
End Module

IsNaN Este método lo usan algunas clases como double, single y otros que no me acuerdo.
Este método se usa para determinar que el resultado de la variable no corresponde a un
número. Ejemplo

Module Module1
Sub Main()
Dim i As Double
Dim j As Double
Dim x As Double
i = 0
j =
x = i / j
If Double.IsNaN(x) = True Then
Console.WriteLine("El objeto no almacena un número")
End If
Console.Read()
End Sub
End Module


De las clases numéricas existen otro métodos que se dejan para que el lector pueda investigar como
redondear un número, convertir a otros tipos de datos por métodos implícitos

La clase char

Con el siguiente ejemplo se muestran varios de los métodos pero son muchos más.

Module Module1
Sub Main()
Dim ch8 As Char, letra As Char = "n"c
ch8 = "8"c
Console.WriteLine("ch8={0} y letra={1}", ch8, letra)
Console.WriteLine("ch8 es un digito ", Char.IsDigit(ch8))
Console.WriteLine("ch8 es un número", Char.IsNumber(ch8))
Console.WriteLine("ch8 es un carácter alfabético", Char.IsLetter(ch8))
Console.WriteLine("la variable llamada letra tiene una letra minúscula", Char.IsLower(letra))
Console.WriteLine("la variable llamada letra tiene una letra mayúscula", Char.IsUpper(letra))
Console.Read()
End Sub
End Module

Es importante no olvidar la instrucción Option Strict On y OPTION Explicit On en cada uno de los ejemplos.


En la siguiente entrega continuaremos con la clase String.

avatar
HERNAN DARIO RODRIGUEZ

Mensajes : 14
Puntos : 45
Fecha de inscripción : 04/08/2010
Edad : 35
Localización : cali

Ver perfil de usuario

Volver arriba Ir abajo

Todo tiene un orden

Mensaje  Admin el Sáb 21 Ago - 0:57:59

Te felicito por tus aportes pero recuerda que programacion

Admin
Admin

Mensajes : 9
Puntos : 14
Fecha de inscripción : 03/08/2010

Ver perfil de usuario http://programacion2.foro-mexico.net

Volver arriba Ir abajo

Ver el tema anterior Ver el tema siguiente Volver arriba

- Temas similares

 
Permisos de este foro:
No puedes responder a temas en este foro.