.NET
En ste tutorial vamos a ver la Programacin Orientada a
Objetos(POO) de Visual Basic.NET, con la utilizacin y creacin de
clases, de una forma mas o menos, sencilla. Recuerda descargar
Visual Basic .NET y ver el tutorial bsico de Visual Basic .NET antes
de empezar.
Primero har una explicacion sobre la POO , y veremos un poco lo
bsico. Luego empezaremos a usar lo aprendido poco a poco.
Todo .NET Framework est basado en clases (u objetos). A
diferencia de las versiones anteriores de Visual Basic, la versin
.NET de este lenguaje basa su funcionamiento casi exclusivamente
en las clases contenidas en .NET Framework, adems casi sin
ningn tipo de limitacion.
La POO es una evolucin de la programacin por procedimientos
llamada tambin estructurada. Se basaba en funciones y
procedimientos y el cdigo que controlaba el flujo de las llamadas a
estos. En Visual Basic, sobre todo en versiones anteriores se sigue
programando mucho as. A veces por desconocimiento y otras por
"miedo" no se da el salto a la POO, aunque un programador con
experiencia en VB puede hacer magnficas aplicaciones sin utilizar
la POO (y sin aprovecharse de sus ventajas) , y sobre todo, en un
tiempo relativamente reducido.
Herencia
Encapsulacin
Polimorfismo
Herencia
Qu es una clase?
Los programas de Visual Basic se generan con objetos como
formularios y controles. Los objetos tambin se pueden utilizar para
representar cosas reales como personas, equipos informticos o
incluso algo ms abstracto, como una cuenta bancaria.
Una clase es simplemente una representacin de un tipo de objeto.
Pensad en ella como un plano que describe el objeto. As como un
plano puede utilizarse para construir varios edificios, una clase
podemos usarla para crear varias copias de un objeto.
Aunque puede que no os hayis dado cuenta, ya hemos utilizado
las clases en otros tutoriales de VB que hay por Cristalab, como por
ejemplo,en el tutorial bsico de Visual Basic .NET o alcrear
Una de las mejores razones para utilizar clases es que una vez que
ha creado una clase para cierto tipo de objeto, se puede reutilizar
esa clase en cualquier proyecto.
Por ejemplo, muchos de los programas que escribimos pueden
involucrar personas: Un programa de administrador de contactos
para los contactos comerciales o un programa para realizar un
seguimiento de empleados. Aunque los programas pueden ser
considerablemente diferentes, los atributos que se aplican a cada
persona seran los mismos. Todas tienen nombre, edad, direccin,
nmero de telfono, etc.
Para empezar a ver mejor crear clases,y usarlas crearemos una
clase que represente a una persona;
Podemos guardar esta clase y utilizarla en otros programas que
escribamos en el futuro.
Las clases se pueden crear de tres maneras: como parte del cdigo
en un mdulo de formulario en un proyecto de aplicacin para
Windows, como un mdulo de clase separado agregado a un
proyecto de aplicacin para Windows o como un proyecto de
bibliotecas de clase independiente.
Crear clases
End Sub
End Class
Como campo.
Como procedimiento de propiedad.
Tambin podemos determinar cmo funciona una propiedad
utilizando los modificadores Public, ReadOnly o WriteOnly.
Campos y procedimientos de propiedad
Get
FirstName = firstNameValue
11.
End Get
12.
13.
firstNameValue = value
14.
End Set
Get
MiddleName = middleNameValue
20.
End Get
21.
22.
middleNameValue = value
23.
End Set
Get
LastName = lastNameValue
29.
End Get
30.
31.
lastNameValue = value
32.
End Set
End Property
Quedar as:
33.
En el men Archivo, elegimos Guardar todo para guardar el
trabajo.
5.
birthYearValue = value
6.
End Set
7. End Property
8.
9. ReadOnly Property Age() As String
10.
11.
12.
Get
Age = My.Computer.Clock.LocalTime.Year - birthYearValue
End Get
End Property
13.
En el men Archivo, elegimos Guardar todo para guardar el
trabajo.
& lastNameValue
Else
FullName = firstNameValue & " " & lastNameValue
End If
End Function
Get
Age = CalcAge(birthYearValue)
End Get
End Property
RaiseEvent AgeCalculated(Age)
End Function
.FirstName = Textbox1.Text
.MiddleName = Textbox2.Text
.LastName = Textbox3.Text
.BirthYear = Textbox4.Text
.Married = CheckBox1.Checked
End With
MsgBox(person1.FullName)
End If
MiddleInitial = Left$(middleNameValue, 1)
End Function
End Function
Handles person1.AgeCalculated
End Sub
Inherits Persons
Get
Number = numberValue
End Get
numberValue = value
End Set
End Property
Get
Position = positionValue
End Get
positionValue = value
End Set
End Property
11.
.FirstName = "Wyrm"
5.
.LastName = "Garcia"
6.
.Number = 13
7.
.Position = "Shortstop"
8. End With
9. With player2
10.
.FirstName = "Joe"
11.
.LastName = "Black"
12.
.Number = 51
13.
.Position = "Catcher"
End With
14.
En el Explorador de soluciones, seleccionamos Form1 en el
proyecto PlayerTest y, a continuacin, en el men Ver, hacemos clic
en Diseador.
15.
En el Cuadro de herramientas, arrastramos dos controles
Button al formulario.
16.
Seleccionamos el primer control Button y en la ventana
Propiedades establecemos su propiedad Text en At Bat.
17.
Seleccionamos el segundo control Button y en la ventana
Propiedades establecemos su propiedad Text en On Deck.
18.
Hacemos doble clic en el primer botn (At Bat) para abrir el
Editor de cdigo y escribimos el siguiente cdigo en el controlador
de eventos Button1_Click.
19. MsgBox(player1.Position & " " & player1.FullName & ", #" & _
20.
En el controlador de eventos Button2_Click, agregamos el
siguiente cdigo.
21. MsgBox(player2.Position & " " & player2.FullName & ", #" & _
22.
Presionamos F5 para ejecutar el programa. Hacemos clic en
cada botn para ver los resultados.
Clic al Boton1(At Bat):
23.