1. Programación Orientada a Objetos en VB 2012
Creación de una nueva Clase con las palabras reservadas
Public y Class
Module Module1
Sub Main() 'METODO PRINCIPAL
Console.ReadLine()'Detiene la ejecución del programa
End Sub
End Module
'VISUAL BASIC(VB) nos permite programar usando la filosofía de programación
orientada a objetos (POO), la POO consiste en un método de realizar programas en
el que encapsulamos porciones de código dentro de estos llamados "objetos" que en
VB toman la forma de clases, un objeto es como una plantilla que más adelante
podamos usar y reutilizar tantas veces como queramos, por tanto programar con
orientación a objetos suele ser más complejo que programar directamente aunque a
la larga nos proporciona beneficios ya que tenemos que escribir menos código
reutilizando el código antiguo, realmente todo el rato hemos estado trabajando
dentro de un objeto en VB -> Sub Main() y End Sub constituyen el Objeto
Principal, el "Objeto Main" que hay en VB, evidentemente si hay un Objeto
Principal puede ver Objetos Secundarios.
'Para este ejercicio lo que voy hacer es al finalizar el Modulo Principal el
Modulo1 (Module1) voy a crear una nueva clase con las palabras Reservadas "Public
y Class".
'Public: Indicando que la clase que voy a crear va hacer accesible desde el
exterior.
'Class: Para indicar que lo que voy a escribir a continuación va hacer una clase
y por tanto podre derivar objetos desde esa clase.
'La tercera palabra que voy a usar esta a mi elección ya que es el nombre de la
clase que yo introduzco
Public Class digoHola 'nombre de la clase, la regla no debe empezar con numero y
ni guiones pero si puede contener guiones bajos.
‘Las reglas para la creación de clases son bastante parecidas para la creación de
variables.
‘Como ocurre como muchas estructuras de control si he puesto “Public Class
digoHola” en cuanto pulse enter el programa VB pondrá automáticamente End Class.
Esto quiere decir que ya hemos creado una primera capsula de código llamada
"digoHola" que podemos usar en cualquier momento.
'Una clase tiene en su interior propiedades y métodos.
Lo que vamos hacer a continuación es crear una propiedad, una propiedad es lo que
anteriormente conocíamos como variable a diferencia, es que cuando las variables
están situadas dentro de una clase reciben el nombre de "Propiedades"
Dim texto As String
'Un elemento muy importante a tener en cuenta en la programación orientada a
objetos es que todo aquello que escribimos no se usa directamente en el programa,
sino que se queda preparado para hacer usado cuando lo necesitemos.
El segundo elemento que voy a usar dentro de una clase es un "Método", un Método
es una Acción que realiza la clase, lo bueno de las clases es que pueden tener
contenidas dentro de ellas varios métodos, para crear un Método tengo que
escribir lo siguiente:
'Public Sub Hola[nombre del método](no devuelve ningún parámetro o devuelve algún
parámetro)
'Public: indica que el método será accesible de manera Pública
'Sub: indica que voy a escribir una porción de contenido
2. 'Por ejemplo, este trozo de código se va llamar "Hola" y no va devolver ningún
parámetro por lo que justo después del nombre del Método "Hola" pondré 2
parentesis() uno de apertura y uno de cierre "Sub Hola()". Al pulsar enter,
comprobare como automáticamente como VB introduce un "End Sub" que es el
principio en Public y el final en End Sub del "Método"
Public Sub Hola()
'Dentro de este Método voy a escribir el código que quiera:
Console.WriteLine("Yo digo Hola") 'Tengo ya un primer Método
End Sub
'Una Clase en este caso "Class digoHola" puede contener Múltiples Métodos,
creamos un segundo Método llamado Adiós
Public Sub Adios()
'Dentro de este Método voy a escribir el código que quiera:
Console.WriteLine("Yo digo Adiós") 'Tengo ya un segundo Método
End Sub
'De todas formas si ejecutamos ahora el programa comprobaremos que tenemos un
programa vacio en este caso he detenido la ejecución con Console.ReadLine() pero
puedo comprobar que el programa no está devolviendo "Yo digo Hola" ni está
devolviendo "Yo digo Adiós", debemos recordar siempre que al crear un Objeto lo
que hacemos realmente es preparar una plantilla para cuando necesitemos usarla,
pero que yo haya puesto aquí Console.WriteLine("Yo digo Hola") no quiere decir que
automáticamente vaya a usar y vaya a ejecutar esa porción de código, quiere decir
que esa porción de código está preparada para ser usada cuando yo lo necesite
End Class 'VB pone de manera automática o a veces de forma manual si es necesario
Código resumido:
Module Module1
Sub Main() 'METODO PRINCIPAL
Console.ReadLine()'Detiene la ejecución del programa
End Sub
End Module
Public Class digoHola
Dim texto As String
Public Sub Hola()
Console.WriteLine("Yo digo Hola") 'Tengo ya un primer Método
End Sub
Public Sub Adios()
Console.WriteLine("Yo digo Adiós") 'Tengo ya un segundo Método
End Sub
End Class