Taller
>> Taller >> Curso De Iniciación A DIV by Wakroo >> Cap. 1, Variables.

Vamos a suponer que no sabéis nada de DIV (bastante probable si estáis leyendo esta sección). Por lo tanto empezaré por el principio.

Lo primero y más importante al programar (y esto vale para DIV, BASIC, C, FORTRAN y cualquier lenguaje en el que haya que escribir líneas de código "a mano") es ser muy, pero que muy limpio y ordenado. De esta manera podréis ver claramente el código, y con él los posibles errores y será mucho más fácil hacer los cambios que queráis. Por eso yo recomiendo escribir las palabras reservadas del lenguaje, tales como BEGIN, END, FRAME, LOOP,... en mayúscula. Si además estáis usando DIV 2 el programa pondrá de diferente color las diversas partes del código (comentarios, palabras reservadas, código "normal",...). A mi parecer los colores por defecto están bien, pero si queréis cambiarlos no hay nada que os lo impida. También os recomiendo usar el tabulador para que quede claro que parte del código "está dentro de" o "depende de" cual.

Hay otro detalle: os recomiendo que al nombrar constantes, variables y procesos nunca uséis tildes, puesto que máximo_vidas y maximo_vidas son dos constantes diferentes. Si no usáis tildes nunca no os confundiréis (y que conste que eso no quiere decir que al escribir no haya que usarlas, sino que en este caso es mejor no usarlas para evitar confusiones).

Todo programa de DIV debe empezar con la palabra reservada PROGRAM (salvo alguna excepción que ya comentaré más adelante), seguida del nombre del programa. Éste debe ser una única palabra, es decir, no se pueden incluir espacios. Si quieres incluirlos se suele usar la tecla de subrayado, la del guión (es decir, ejemplo_de_nombre). Esto es válido para los nombres de todos los procesos, variables y funciones del programa. Después de esto vendría la declaración de las constantes, luego las variables globales y a continuación las variables locales. Finalmente empezaríamos el Main. Y me explico.

Las constantes son una herramienta muy útil que recomiendo usar atodo el mundo. La declaración se empieza con la palabra reservada CONST, seguida de la lista de constantes, expresadas de este modo: mi_constante=valor;. Constante es el nombre único y personal al que le asignamos un valor numérico o alfanumérico (el segundo sólo en DIV 2), de manera que si yo pongo maximo_vidas=5; en el programa, cada vez que escriba maximo_vidas será lo mismo que escribir 5. La utilidad de las constantes radica en que si más adelante decidimos que el máximo de vidas sea 7 en vez de cinco bastará con cambiar un número al principio del programa y no habrá que buscarlo por todo el código, ahorrando mucho tiempo y evitando el riesgo de cambiar algún 5 que no había que cambiar.

A continuación vienen las variables globales. Se declaran igual que las constantes, es decir, mi_variable_global=valor, aunque el valor es opcional (en las constantes es obligatorio, puesto que al no poder alterarlas una constante sin valor no sirve para nada; en las globales se le puede asignar el valor más tarde) y se empieza con la palabra reservada GLOBAL. Son variables accesibles por todos los procesos del programa, y cualquiera de ellos puede alterar su valor.

Ej.: La energía del personaje sería una variable global, de manera que cualquier proceso (como por ejemplo los enemigos) puedan alterarla.
Las variables locales vienen a ser lo mismo, pero cada proceso tiene su valor y los demás procesos no pueden alterarlo ni consultarlo (bueno, en realidad si pueden, pero eso lo dejo para más adelante; por ahora cada proceso sólo tiene acceso a su valor de las variables locales). Se declaran como las globales: mi_variable_local=valor, siendo el valor opcional. Se empieza con la palabra reservada LOCAL.

DIV trae algunas variables locales predefinidas, tales como x, y, z, graph, angle,.... Estas variables se pueden usar sin declararlas. Es obligatorio declarar todas las demás que usemos.

Por lo tanto, la estructura de un programa quedaría así:

......PROGRAM mi_programa;

......CONST
..........mi_constante=valor;
.............

......GLOBAL
..........mi_variable_global=valor;
.............

......LOCAL
..........mi_variable_local=valor;
.............

......BEGIN
.............
......END

Como veis es muy simple. Además de estas variables existe otra clase, las variables privadas. Son como las variables locales, pero solo se usan en el proceso en el que han sido declaradas, y no se puede acceder a ellas desde ningún otro proceso. Se declaran justo antes del BEGIN de cada proceso, siendo esta parte opcional y empezando con la palabra reservada PRIVATE. Su funcionamiento sería así:

......PROCESS mi_proceso;

......PRIVATE
..........mi_variable_privada=valor;
.............

......BEGIN
.............
......END

Resultan útiles para variables muy puntuales.

Finalmente decir que toda variable que declaremos valdrá, por defecto, 0 a no ser que le asignemos otro valor.

Y todo esto nos ha llevado a otro tema: ¿qué es un proceso? (puede que hubiera sido mejor empezar por aquí, pero usar las constantes y variables adecuadas es una costumbre que tarde en coger y que me he arrepentido muchas veces de haber tardado tanto; por eso me ha parecido adecuado empezar por aquí).