28 jun 2008

Conceptos básicos de programación en Visual Basic 6.0 (Parte I)

Buenas!

Hoy les voy a comentar algunas cosas que hay que tener en cuenta a la hora de programar en Visual Basic 6.0.
Es muy importante que uno cuando escriba el código, lo pueda leer cualquiera, hasta alguien que tiene minimos conceptos de programación.



Un buen recurso para esto es comentar las líneas del codigo, así, no hay que andar viendo qué es lo que hace cada llamada.

Ejemplo:

'Reproduzco el sonido de clic
Call Audio.PlayMIDI("7.mid")

'Actualizo el tipo de Login
EstadoLogin = E_MODO.Dados

'Estoy usando un socket?
#If UsarWrench = 1 Then
'Si el socket está conectado, lo desconecto y limpo
If frmMain.Socket1.Connected Then
frmMain.Socket1.Disconnect
frmMain.Socket1.Cleanup
DoEvents
End If

'Le damos la ip y puerto al socket
frmMain.Socket1.HostName = CurServerIp
frmMain.Socket1.RemotePort = CurServerPort
'Conectamos
frmMain.Socket1.Connect
#Else
'Si el winsock no está cerrado y preparado, lo cierro.
If frmMain.Winsock1.State <> sckClosed Then
frmMain.Winsock1.Close
DoEvents
End If
'Conectamos el winsock
frmMain.Winsock1.Connect CurServerIp, CurServerPort
#End If
Así cualquiera, con el código completo, y de una mirada rápida, puede saber qué es lo que se hace en cada línea.



Otro buen punto, es la indentación, que es tabular el código, diviendolo por estructuras. Se me complica dar un ejemplo acá porque el blog me saca los espacios que sobran, pero les dejo un screen:

Ver Imagen

Acá queda explicito el uso de este recurso.



Hay muchos mas :p, por ejemplo:
El uso explícito de modificadores de acceso para evitar inconvenientes y accidentes. ¿Qué es ésto?, lo que va a adelante de todo lo que declares, que dictaminan desde que lugar del código vamos a tener permiso para usarlo. Son los "Public" y "Private".



También, es importante, en los parámetros de una función o rutina, que siempre se ponga delante de la variable "ByVal" o "ByRef".
Ahora, ¿qué diferencia hay?

ByVal: Al llamar la rutina, se envía el valor de la variable y se hace una copia de la misma. Al modificar esta variable, NO se modifica la variable origen.

ByRef:
Al llamar la rutina, se manda sólo la dirección en la memoria donde está alojada la variable a utilizar. Que es un valor en Hexadecimal, Long de 4 bytes. Al modificar esta variable, se modifica la variable origen.




Bueno, espero no haberlos cansado :P y que les haya servido, en estos días subo la segunda parte.

Saludos!