Introducción

 

Introducción al lenguaje, Estilo de programación y Palabras clave.

 

Estilo


Un buen estilo para programar deberá tener una estructura de código fácil de entender, no solo para otra gente sino también para si mismo. Aquí hay varios criterios para un buen estilo:

Nombres de controles en VB

Los nombres de variables y procedimientos definidos por el usuario deberán ser significativos. Estos nombres deben ser autoexplicativos con respecto a su propósito. Para ayudar al usuario en la asignación de nombres se puede manejar un estandar de nombres convensionales. Cada tipo de control tiene su propio Prefijo el cual es seguido de un parte definida por el usuario la cual deberá ser una identificación única para especificar el tipo de control.

Control Prefijo Ejemplo
Check box chk chkSoloEscritura
Combo box cbo cboLenguaje
Command button cmd cmdCancelar
Directory list box dir dirDestino
Drive list box drv drvFuente
File list box fil filSeleccionado
Form frm frmPrincipal
Frame fra fraImpresoras
Grid grd grdCantidades
Horizontal Scroll Bar hsb hsbColor
Image img imgBitMap
Label lbl lblAyuda
Line lin linSeleccionado
List Box lst lstCodigoColor
Menu mnu mnuAbrirArchivo
Option Button opt optNegritaBold
Picture Box pic picMemoria
Shape shp shpCuadrado
Text Box txt txtEntrada
Timer tmr tmrInciaAlarma
Vertical Scroll Bar vsb vsbRango

Identación y espacio apropiado en el código.

La identación es usada para tener una mejor visibilidad en el diseño de un programa. La identación muestra las líneas que están subordinadas a otras líneas. Por ejemplo, todas las líneas que forman el cuerpo de un ciclo deberán estar identadas con la instrucción principal del ciclo. En el siguiente ejemplo se muestra una estructura anidada (una dentro de otra). Cualquier cosa dentro de este primer ciclo FOR (num_semana) es identada y de la misma manera cualquier cosa dentro del segundo ciclo (num_dia) es identado también. Otra vez cada comando CASE es identado entre el contenido Select Case y End Select.

  For num_semana = 1 To 52
    Print "Semana  #"; num_semana
    For num_dia = 1 To 7
      Select Case num_dia
        Case 1
          Print "Domingo"
        Case 2
          Print "Lunes"
        Case 3
          Print "Martes"
        Case 4
          Print "Miércoles"
        Case 5
          Print "Jueves"
        Case 6
          Print "Viernes"
        Case 7
          Print "Sábado"
      End Select
    Next num_dia
  Next num_semana

Las líneas en blanco pueden también ser identadas entre las líneas de código para romper un procedimiento y hacerlo en pequeños bloques de código.

Documentando el Código

Hay dos formas de documentar código en VB, la declaración REM que puede ser usado en líneas separadas y el ' (apóstrofe) seguido por el texto de comentario. El ' le dice a VB que ignore todas las palabras que estan enseguida hasta el fin de la línea.

Ejemplo:

  Dim obejas As Integer     ‘ Almacena el número de obejas de cara negra

Ejemplo:

  Rem Centra la  forma.
  frmCurrent.Left = (Screen.Width / 2) - (frmCurrent.Width / 2)
  frmCurrent.Top = (Screen.Height / 2) - (frmCurrent.Height / 2)
 

Instrucciones de Control

 

If

If en Línea simple (Ejemplo):

  If a > 10 Then Label1.Caption = "A es mayor que  10"

If en Multi-línea (Ejemplo):

  If a > 10 And b < 20 Then
     Label1.Caption = "A es mayor  que 10"
     Label2.Caption = "B es menor que  20"
  End If

El If de multi-línea necesita una expresión 'End If' para definir el final del bloque If.

If y Else (Ejemplo):

  If a > 10 And b < 20 Then
    Label1.Caption = "A es mayor que 10"
    Label2.Caption = "B es menor que  20"
  Else
    Label1.Caption = "A es menor o igual  que 10 ó"
    Label2.Caption = "B es más grande o igul  que  20"
  End If
If y ElseIf (Ejemplo):
  If a > 10 And b < 20 Then
    lblFirst.Caption = "A es mayor que  10"
    lblSecond.Caption = "B es menor que 20"
  ElseIf c = 8
    lblFirst.Caption = "A es menor o igual que  10 OR"
    lblSecond.Caption = "B es mayor o igula que 20"
    lblThird.Caption = "Sin embargo, C es igual a 8"
  Else
    lblFirst.Caption = "Los primeros dos test fallarón"
  End If

Select case

Si más ramas son necesarias, entonces usamos el comando 'Select Case'

Case (Ejemplo):

  Select Case dia_actual
    Case 1
      nombre_del_dia = "Domingo"
    Case 2
      nombre_del_dia = "Lunes"
    ...
    Case 7
      nombre_del_dia = "Sábado"
  End Select

La expresión 'End Select' define el final del bloque de casos. Si deseamos que presente un mensaje si se introduce un valor no definido en el bloque de casos, deberemos usar 'Case Else' de la siguiente manera.

    ...
    Case 7
      nombre_del_dia = "Sábado"
    Case Else
      MsgBox "Error en selección, una semana tiene solamente 7 dias"
  End Select

Estructuras de repetición

Los siguientes comandos pueden ser usados para repetir varias veces la ejecución de una sección de código.

Ciclo Do (Sintaxis):

  Do While condición
    líneas de código
  Loop

Ciclo Do (Ejemplo):

  hoy = 1
  Do While hoy = 7
    hoy  = hoy + 1
  Loop

Un ciclo similar a el 'Do While' es el 'Loop While'. La principal diferencia es que el ciclo Do While la condición para poder continuar esta al principio (primero ceha la condición y luego ejecuta el código que se desea repetir), mientras que en el Loop While esta al final, esto es después de que ejecuta el código checa si debe continuar. Esto significa que un ciclo Do While, puede nunca ser ejecutado, mientras que un ciclo Loop While siempre al menos se ejecutará una vez.

Ciclo While (Sintaxis):

  Do
    líneas de código
  Loop While condición
Ciclo While (Ejemplo):
  temp = 0
  Do
    temp = temp + 1
  Loop While temp = 100  ' No hierve

Los ciclos For si los programadores saben cuantas veces un ciclo debe ser ejecutado.

Ciclo For (Sintaxis):

  For contador = valor_inicial To valor_final [Step incremento]
    líneas de código
  Next [contador]

Ciclo For (Ejemplo):

  For dia_actual = 1 To 365
    lblDia.Caption = "Dia = " &Str$(dia_actual)
  Next dia_actual

Ciclos anidados (Ejemplos):

  For semana_actual = 1 To 52
    For dia_actual = 1 To 7
      ...
    Next dia_actual
  Next semana_actual

El incremento en Step como parte del ciclo, es usado para decirle a VB cuanto debe aumentar en cada ciclo la variable de control. Introduce el siguiente código y observa que valores se imprimen.:

  For test = 1 To 10 Step 2
    Print test
  Next test

 

Funciones Comunes en Visual Basic

Archivo

  • FileAttr - Devuelve información del sistema operativo acerca dl archivo que esta abierto.
  • FileDateTime - Devuelve una cadena de caracteres que indican la fecha y la hora de la última modificación del archivo.
  • FileLen - Devuelve un entero largo que indica la longuitud en bytes de un archivo .
  • FreeFile - Devuelve el siguiente numero de archivo valido que no esta en uso.
  • GetAttr - Devuelve un entero qu indica los atributos de un archivo, directorio, o etiqueta de volumen.
  • Loc - Devuelve la posición actual en un archivo abierto.
  • LOF - Devuelve el tamaño en bytes de un archivo abierto.
  • Seek - Devuelve la posición del archivo actual.

Número

  • Abs - Devuelve el valor absoluto de un número.
  • Atn - Devuelve el arcotangente de un número.
  • Cos - Devuleve el coseno de un ángulo (ángulo en radianes).
  • Sin - Devuelve el seno de un ángulo (ángulo en radianes).

Cadena

  • InStr - Devuelve la posición de la primera ocurrencia de una cadena dentro de otra cadena de caracteres
  • LCase, LCase$ - Devuelve una cadena de caracteres en la cuál todas las letras han sido convertidas a minúsculas.
  • Left, Left$ - Devuelve los n cacarteres a la izquierda de un cierto argumento. (cadena).
  • Len - Devuelve el número de caracteres en una expresión de cadena o el número de bytes necesarios para almacenar una variable.
  • LTrim, LTrim$ - Devuelve una copia de una cadena eliminando todos los espacios en blanco.
  • Mid, Mid$ - Devuelve una cadena qu es parte de una cadena.
  • Right, Right$ - Devuelve los n caracteres más a la derecha de un argumento determinado.
  • RTrim, RTrim$ - Devuelve una copia de la cadena de caracteres con los espacios de la derecha eliminados.
  • Space, Space$ - Devuelve una cadena que consiste de un número especifico de espacios.
  • Trim, Trim$ - Devuelve una copia de una cadena con los espacios de ambos lados eliminados.
  • UCase, UCase$ - Devuelve una cadena con todas las letras convertidas a mayúsculas.

Hora/Fecha

  • Date, Date$ - Devuelve la fecha actual..
  • IsDate - Returns a value indicating whether of not a Variant argument can be converted to a date.
  • Minute - Returns an integer between 0 and 59, inclusive, that represents the minute of the hour corresponding to the time provided as an argument.
  • Month - Returns an integer between 1 and 12, inclusive, that represents the month of the year for a date argument.
  • Now - Returns a date that represents the current date and time according to the setting of the computer's system date and time.
  • Time, Time$ - Returns the current system time.
  • Timer - Returns the number of seconds that have elapsed since 12:00 a.m. (midnight).
  • Weekday - Returns an integer between 1 (Sunday) and 7 (Saturday) that represents the day of the week for a date argument.
  • Year - Returns an integer between 100 and 9999, inclusive, that represents the year of a date argument.

Conversión de Variables

  • CCur - Explicitly converts expressions to the Currency data type.
  • CDbl - Explicitly converts expressions to the Double data type.
  • CInt - Explicitly converts expressions to the Integer data type.
  • CLng - Explicitly converts expressions to the Long data type.
  • CSnd - Explicitly converts expressions to the Single data type.
  • CStr - Explicitly converts expressions to the String data type.
  • CVar - Explicitly converts expressions to the Variant data type.
  • CVDate - Converts an expression to a Variant of VarType 7 (Date).

  

 

Copyright(c) 2001 Darío Silva. All rights reserved.
Clases@gdsweb.com.ar