1. PROGRAMACION

PROGRAMACION
Conceptos.




Usualmente se agrupa el código fuente en archivos de programa. Un archivo de programa esta compuesto de varias sentencias, que incluyen comandos, funciones y estructuras de control de flujo.



El compilador traduce el contenido de estos archivos de texto ASCII a código interpretado. En cuanto el compilador ha traducido el código fuente crea un archivo con extensión .FXP que es el que va a utilizar a partir de ese momento. Cada vez que el programador introduce algún cambio en el archivo .PRG el compilador compara la fecha de ambos archivos y crea una nueva versión compilada del programa.



Haciendo el código legible:



•Espacios en blanco: Significan áreas vacías dentro del código de programa, también espacios, tabulaciones o líneas vacías.

•Sangrado: Sangrar es la mejor manera de optimizar el código. Es una práctica común sangrar dentro de comandos pares anidados, por ejemplo:

DO… ENDDO



IF… ENDIF



SCAN..ENDSCAN



DOCASE...ENDCASE



WITH…ENDWITH



•Mayúsculas y minúsculas: Muchos programadores utilizan mayúsculas y minúsculas para distinguir entre los elementos del programa; mayúsculas para los comandos y minúsculas para las variables.

•Comentarios: Los comentarios pueden existir en una línea precedidos por un asterisco y después de una línea de código, si están separados de && consecutivos.

•Continuar líneas largas de código: Puede continuar líneas largas de código en la siguiente línea insertando un ";" al final de la línea.

Una de las técnicas más útiles en la programación son los encabezados de programa, por ejemplo:



* Nombre del programa : nombre



* Autor : Héctor Hernández



* Propósito : Dibujar cuadros en la pantalla



* Fecha : 12/12/2001



Comandos de Asignación



Para crear variables de memoria y darles valores al mismo tiempo, escriba lo siguiente:



X=3



STORE "lunes" TO día



Para solamente crearlas:



PUBLIC a, b, c



PRIVATE x, y, z



LOCAL nombre, trabaja



DIMENSION nombres(3)



Declaración de Variables.



Las variables temporales se pueden declarar utilizando los comandos anteriores, únicamente, hay que tomar en cuenta la forma en que se van a declarar o escribir, como ejemplo: Nom_Empleado; NomEmpleado, si son variables de memoria se le puede anteponer una ‘m ó x’ de la forma siguiente, mNom_Empleado; xNom_Empleado, también se pueden declarar variables haciendo saber el tipo de datos que maneja por ejemplo: cNom_Empleado, nSueldo_Empleado; dFecha_Ingreso, etc.



Operadores.



Los operadores + y – son, por supuesto, usados para añadir y substraer números, pero también se pueden usar en campos de caracteres. El operador más eslabona dos expresiones de caracteres, campos o variables de memoria, de forma que Fred + Smith; producirá: FredSmith. El operador menos quita espacio rezagado.



Operadores cíclicos y ramificaciones.



Las operaciones cíclicas y de ramificación son los mecanismos para crear la lógica de un programa, ejemplo:



FOR I=1 TO 10



? I && Imprime los números del 1 al 10



ENDFOR



SELECT clientes



SCAN



? Clientes.nombre&&Lee un archivo desde el inicio hasta el final



ENDSCAN



SELECT clientes



GO TOP



DO WHILE NOT EOF()



? Clientes.nombre&& Lee un archivo desde el inicio hasta el final



SKIP



ENNDO



Puede salir de estas construcciones cíclicas en cualquier momento mediante el comando: EXIT.



La ramificación en VF es controlada con la construcción IF.. ENDIF, por ejemplo:



IF I >10



? [El contador excedió 10]



ENDIF



Los contadores se utilizan a menudo para salir de operaciones cíclicas:



L=1



DO WHILE L=LEN(nombrelista)



IF [CRUZ]$ nombrelista(L)



SEEK nombrelista(L)



IF nombre= [John]



DO prgnombre



LOOP



ENDIF



ENDIF



ENDDO



Se recomienda que cuando se utiliza un operador cíclico, un operador condicional, o cualquier otro operador que abra y cierre una estructura se escriba el comando primero y luego se realice el proceso, esto para no perderse en la programación.



Tipos de comandos



Vamos a dividir los comandos según su funcionalidad en los siguientes tipos:



1.Base de datos: Todos los que sirven para manipular bases de datos, tablas y campos.

2.Entorno: Entorno del sistema operativo y de Visual Fox Pro.

3.Acceso compartido a datos: Acceso multiusuario a tablas y base de datos.

4.Entrada y salida: Los que permiten la interfaz entre la computadora y el usuario.

5.Programación: Los que tienen relación con el entorno de desarrollo de aplicaciones.

Funciones



Son procesos internos programadores que pueden ser llamados desde cualquier punta de Visual Fox lo que diferencia de los mandatos de las funciones es que estas devuelven un valor. Aceptan una serie de parámetros, y se reconocen por el uso de paréntesis para encerrar los argumentos, por ejemplo DATE( ) y TIME ( ).



Las funciones se dividen de la siguiente forma:



•Tipos de datos

•Funciones de manejo de cadenas de caracteres.

•Funciones de conversión de tipos

•Funciones de fecha y hora

•Funciones de manejo de valores numéricos

•Funciones definidas por los usuarios (FDU)