1. Procedimientos en Visual Basic
Visual Studio 2015
Otras versiones
Un procedimiento es un bloque de instrucciones de Visual Basic incluido entre una
instrucción de declaración (Function, Sub, Operator, Get, Set) y una declaración End
correspondiente. Todas las instrucciones ejecutables de Visual Basic deben estar
incluidas en algún procedimiento.
Llamar a un procedimiento
Los procedimientos se invocan desde otras partes del código. Esto se conoce como una
llamada a procedimiento. Cuando finaliza la ejecución de un procedimiento, éste
devuelve el control al código que lo invocó, que recibe el nombre de código de
llamada. El código de llamada es una instrucción o una expresión contenida en una
instrucción, que hace referencia al procedimiento por su nombre y le transfiere el
control.
Volver de un procedimiento
Los procedimientos devuelven el control al código de llamada cuando finalizan su
ejecución. Para ello, puede utilizar Return (Instrucción, Visual Basic), la instrucción
Exit (Instrucción, Visual Basic) apropiada para el procedimiento o la instrucción End
<palabra clave> (Instrucción, Visual Basic) del procedimiento. El control se devuelve
al código de llamada, a continuación del punto de la llamada al procedimiento.
Con una instrucción Return, el control vuelve inmediatamente al código de
llamada. No se ejecutan las instrucciones siguientes a la instrucción
Return. Puede tener más de una instrucción Return en el mismo
procedimiento.
Con una instrucción Exit Sub o Exit Function, el control vuelve
inmediatamente al código de llamada. No se ejecutan las instrucciones
siguientes a la instrucción Exit. Puede tener más de una instrucción Exit en el
mismo procedimiento, y puede mezclar las instrucciones Return y Exit en el
mismo procedimiento.
Si un procedimiento no incluye instrucciones Return o Exit, concluye con una
instrucción End Sub o End Function, End Get o End Set a continuación de la
última instrucción del cuerpo del procedimiento. La instrucción End devuelve
el control inmediatamente al código de llamada. Puede tener sólo una
instrucción End en un procedimiento.
Parámetros y argumentos
2. En la mayoría de los casos, un procedimiento necesita funcionar en datos diferentes
cada vez que lo llama. Puede pasar esta información al procedimiento como parte de la
llamada al procedimiento. El procedimiento define cero o más parámetros, cada uno de
los cuales representa un valor que el procedimiento espera que le pase. Cada parámetro
de la definición del procedimiento cuenta con un argumento correspondiente en la
llamada al procedimiento. Un argumento representa el valor que pasa al parámetro
correspondiente en una llamada a procedimiento determinada.
Tipos de procedimientos
Visual Basic utiliza varios tipos de procedimientos:
Subprocedimientos (Visual Basic): ejecutan acciones pero no devuelven un
valor al código de llamada.
Los procedimientos de control de eventos son procedimientos Sub que se
ejecutan en respuesta a un evento provocado por una acción del usuario o por un
suceso en un programa.
Procedimientos de función (Visual Basic): devuelven un valor al código de
llamada. Pueden realizar otras acciones antes de volver.
Procedimientos de propiedad (Visual Basic): devuelven y asignan valores de
propiedades en objetos o módulos.
Procedimientos de operador (Visual Basic): definen el comportamiento de un
operador estándar cuando uno o los dos operandos son una clase definida
recientemente o una estructura.
Procedimientos genéricos en Visual Basic: definen uno o varios parámetros de
tipo además de sus parámetros normales, de forma que el código de llamada
puede pasar tipos de datos específicos cada vez que realiza una llamada.
Procedimientos y código estructurado
Todas las líneas de código ejecutable de una aplicación deben encontrarse dentro de un
procedimiento, por ejemplo, Main, calculate o Button1_Click. La aplicación se leerá
con mayor facilidad si subdivide los procedimientos grandes en procedimientos más
pequeños.
Los procedimientos son útiles para realizar tareas repetitivas o compartidas, como
cálculos de uso frecuente, manipulación de texto y controles, y operaciones con bases
de datos. Se puede llamar a un procedimiento desde distintos lugares del código; de
modo que los procedimientos se prestan a servir de bloques de creación de la
aplicación.
La estructuración del código en procedimientos aporta las siguientes ventajas:
Los procedimientos permiten desglosar los programas en unidades lógicas
independientes. Es más fácil depurar unidades individuales que todo un
programa sin procedimientos.
Después de desarrollar los procedimientos para el uso en un programa, puede
utilizarlos en otros programas, a menudo con pocas o ninguna
modificación. Esto ayuda a evitar la duplicación del código.
3. Crear un procedimiento (Visual Basic)
Visual Studio 2015
Otras versiones
Se incluye un procedimiento entre una instrucción de declaración de inicio (Sub o
Function) y una instrucción de declaración de fin (End Sub o End Function).Todo el
código del procedimiento está incluido entre estas instrucciones.
Un procedimiento no puede contener otro procedimiento, por lo que sus instrucciones
de inicio y de fin deben estar fuera de cualquier otro procedimiento.
Si tiene un código que realiza la misma tarea en distintos lugares, puede escribir la tarea
una vez como procedimiento y llamarlo después desde distintos lugares del código.
Para crear un procedimiento que no devuelve un valor
1. Fuera de cualquier otro procedimiento, utilice una instrucción Sub, seguida de
una instrucción End Sub.
2. En la instrucción Sub, agregue detrás de la palabra clave Sub el nombre del
procedimiento y, a continuación, la lista de parámetros entre paréntesis.
3. Coloque las instrucciones del código del procedimiento entre las instrucciones
Sub y End Sub
Para crear un procedimiento que devuelva un valor
1. Fuera de cualquier otro procedimiento, utilice una instrucción Function, seguida
de una instrucción End Function.
2. En la instrucción Function, agregue detrás de la palabra clave Function el
nombre del procedimiento y una cláusula As en la que se especifique el tipo de
datos del valor devuelto.
3. Coloque las instrucciones de código del procedimiento entre las instrucciones
Function y End Function.
4. Utilice una instrucción Return para devolver el valor al código de llamada.
Para conectar el nuevo procedimiento con los
anteriores bloques de código repetitivos
1. Asegúrese de que define el nuevo procedimiento en un lugar donde el código
anterior tiene acceso a él.
2. En el anterior bloque de código repetitivo, reemplace las instrucciones que
realizan la tarea repetitiva por una única instrucción que llama al procedimiento
Sub o Function.
4. 3. Si el procedimiento es una Function que devuelve un valor, asegúrese de que la
instrucción de llamada realiza una acción con el valor devuelto, como
almacenarlo en una variable o, de lo contrario, se perderá el valor.
El siguiente procedimiento Function calcula la hipotenusa de un triángulo rectángulo a
partir de los valores de los catetos.
VB
Function hypotenuse(ByVal side1 As Single, ByVal side2 As Single) As
Single
Return Math.Sqrt((side1 ^ 2) + (side2 ^ 2))
End Function