| Artículos | 01 ENE 2000

Funciones y tipos de datos

Tags: Histórico
Curso de programación con VB 6.0 (III)
José M. Alarcón.
Por el momento, en este curso de iniciación, hemos estudiado los elementos básicos del entorno de desarrollo, los eventos y las propiedades más importantes de algunos controles de uso muy común. Ya es hora de que nos introduzcamos en temas más áridos como las funciones y los tipos de datos, que nos permitirán tomar mayor control sobre la información que manejamos.

Durante la creación de cualquier programa no trivial necesitamos mantener en memoria, temporalmente, todo tipo de datos para poder utilizarlos en sucesivas ocasiones. Por ejemplo, imaginemos que como resultado de un cálculo hemos obtenido un determinado número que pretendemos mostrar al usuario y además, emplearlo como parte de otro cálculo posterior. No es lógico tener que recalcularlo en cada ocasión que lo necesitemos. Es más práctico y racional guardarlo en algún lugar para poder leerlo cuando sea preciso. Eso es lo que se consigue mediante el uso de las variables: Una variable no es más que una sección de la memoria de nuestro ordenador a la que le otorgamos un nombre para poder acceder cómodamente a su contenido. Las variables en Visual Basic se definen utilizando la palabra clave Dim. Consideremos el siguiente ejemplo:

Dim Res
Res = (Sqr(345) - 12) / 2
MsgBox (Res + 8) * 23

En él se define primero una variable de nombre Res. Esto es equivalente a decir que se reserva un área de la memoria para guardar alguna información y que a este área se le denomina con el nombre Res para un fácil acceso. A continuación se asigna a la nueva variable el valor resultante de restarle 12 a la raíz cuadrada de 345 y posteriormente dividir la diferencia a la mitad (Sqr es el comando que efectúa raíces cuadradas en VB). Nótese como el símbolo de igualdad sirve, en este caso, para establecer una asignación de valor a la variable. Ahora la variable Res contiene el valor indicado en su interior. Si ahora necesitase utilizar dicho valor en otra operación diferente no es necesario que lo vuelva a calcular; basta con que use la variable que lo contiene en su lugar. Es así como se hace en la tercera línea de código, en la que se muestra un mensaje con el resultado de sumarle 8 a la operación anterior y luego multiplicarlo por 23.
Como es evidente, no toda la información que necesitamos guardar es de las mismas características o condiciones. En ocasiones, guardaremos números como en el ejemplo anterior, o quizá nos convenga mantener en memoria momentáneamente algún texto. Incluso si guardamos un número es posible que sean números más grandes o más pequeños, enteros o decimales, etc... Para poder mantener la información en memoria de manera optimizada, Visual Basic nos ofrece varios tipos de variables (o tipos de datos) que podremos escoger en lugar del tipo genérico. En la tabla A se muestra un resumen de los tipos de variables existentes y de la clase de información que pueden contener.
Para hacer que una variable sea explícitamente de un tipo determinado debemos indicarlo escribiendo el nombre del tipo a continuación de la palabra As en la declaración de la variable. Por ejemplo, si en nuestro código vamos a usar una variable para guardar solamente números naturales pequeños (que no pasen de 255) deberíamos emplear el tipo Byte del siguiente modo:

Dim miVariable As Byte

Ahora en miVariable sólo podemos introducir este tipo de datos y se produciría un error en caso de salirnos del rango permitido. Como ventaja estamos aprovechando mejor la memoria al ocupar sólo la necesaria y además, tendremos más control sobre lo que hacemos detectando enseguida, mediante el error que se generaría, valores incorrectos de los datos asignados (Vea el cuadro “Declaración explícita de variables”).
Si no se especifica el tipo de datos a utilizar para la variable, ésta se declara de forma predeterminada con un tipo de datos especial denominado Variant. El tipo Variant es muy flexible porque permite guardar en la variable cualquier cosa (un número de cualquier tipo, una cadena, un objeto), pero en contrapartida, consume mucha más memoria y además puede producir errores si se le asignan valores no esperados (por ejemplo, se le asigna, sin darnos cuenta, una cadena cuando esperábamos que sólo contuviera números).

Constantes
Cuando en una variable queremos mantener un valor que no va a cambiar con el tiempo y que necesitamos reutilizar en diferentes partes de nuestro código, podemos guardar dicho valor en una variable especial denominada constante. Éstas son utilizadas de manera más eficiente por el lenguaje ya que no van a cambiar. Para definir una constante se utiliza la palabra clave Const en lugar de Dim y a continuación, en la propia declaración se le asigna el valor que va a tener (de modo similar a una asignación inicial en C o C++):

Const PI = 3.14159

o bien

Const PI As Double = 3.14159

De este modo cuando necesitemos utilizar el valor del número š en nuestro código sólo tendremos que escribir el nombre de la constante:

Dim Res As Single
Res = 2*Sin(45 * PI / 180)

Los nombres de las constantes se suelen definir siempre en mayúsculas por convención (Ver el cuadro al margen “Notación Húngara”). Así sólo con ver un identificador en mayúsculas en nuestro código sabremos que se trata de una constante, y no intentaremos asignarle otro dato, lo que produciría un error.

Procedimientos y funciones
Otro concepto interesante en cualquier lenguaje de programación son las funciones y los procedimientos. Al igual que una variable es un fragmento de información que identificamos mediante un nombre, un procedimiento es un grupo de código al que podemos recurrir a través de un identificador. Si queremos efectuar una tarea un número indeterminado de veces no tiene sentido escribir el código necesario en cada una de estas ocasiones (a menos que este código conlleve una única línea o instrucción). Es mucho mejor asignarle un nombre a esas operaciones y ejecutarlas a través de él. Por ejemplo, imaginemos que tenemos un formulario con varios cuadros de texto y que debemos eliminar su contenido desde distintos lugares de nuestro código. En lugar de escribir en todos los casos todas las líneas de código necesarias definiremos una subrutina llamada Limpiar que se encargará de ello. Cuando queramos diseñar un método deberemos identificarlo mediante la palabra clave Sub y terminarlo usando la frase End Sub. Todo el código que se encuentre entre estas directivas formará parte de nuestro método. Así pues, en nuestro caso para limpiar el contenido de los cuadros de texto podríamos escribir:

Sub Limpiar()
txtNombre.Text = “”
txtApellidos.Text = “”
txtDireccion.Text = “”
txtTelefono.Text = “”
txtEMail.Text = “”
End Sub

A partir de ahora, cuando queramos vaciar el contenido de los campos de nuestro formulario sólo tendremos que escribir el nombre de esta función, evitando repetir código innecesariamente.. Como ventaja adicional tenemos que, si el día de mañana se añaden nuevos campos al formulario, en lugar de ponernos a buscar por todo el código en qué lugares hacíamos la limpieza y añadir en todos ellos una línea para el nuevo campo, bastará con tocar el

Contenidos recomendados...

Comentar
Para comentar, es necesario iniciar sesión
Se muestran 0 comentarios
X

Uso de cookies

Esta web utiliza cookies técnicas, de personalización y análisis, propias y de terceros, para facilitarle la navegación de forma anónima y analizar estadísticas del uso de la web. Consideramos que si continúa navegando, acepta su uso. Obtener más información