Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
INTRODUCCIN En la actualidad la tecnologa desempea un papel cada vez ms importante en nuestra vida, lo que nos obliga a estar a la vanguardia de los cambios que da a da se van dando. El desarrollo tecnolgico ha trado como consecuencia una dependencia de la sociedad por los sistemas electrnicos, ya que estos se encuentran inmersos en todos los mbitos socioculturales. El ingeniero en electrnica desarrolla competencias que le permiten resolver la problemtica relacionada con esta tecnologa. La unidad de aprendizaje de programacin desarrolla la competencia de identificar, desarrollar y modificar programas de tipo computacional. El presente material fue elaborado como apoyo a esta Unidad de Aprendizaje, para la cual se utiliz como base el lenguaje de programacin visual Visual Basic 6.0 . En una prikmera parte se dan los conceptos bsicos, as como algunas herramientas y ejercicios para su fcil comprensin. En una segunda parte se apoya este curso con problemas y ejercicios para un mayo entenimiento del mismo. Cabe sealar que la biblioigrafa que se tomo en su gran mayora fue de la librera de ayuda de Visual Basic 6.0 , as como la mayot parte de ejercicios del Mtro. Carlos Castillo Peralta quien ha publicado un interesante material as como prcticas de laboratorio al respecto. M. en C.A. Imelda Avalos Flores
Academia de Computacin
Programacin
INTRODUCCIN A LA PROGRAMACIN VISUAL La palabra Visual hace referencia al mtodo que se utiliza para crear la interfaz grafica de usuario. En lugar de escribir numerosas lneas de cdigo para implementar una interfaz, se utiliza el ratn para arrastrar y colocar los objetos prefabricados al lugar deseado dentro de un formulario. Programacin en Windows Visual Basic 6.0 est orientado a la realizacin de programas para Windows, pudiendo incorporar todos los elementos de este entorno informtico: ventanas, botones, cajas de dilogo y de texto, botones de opcin y de seleccin, barras de desplazamiento, grficos, mens, etc. Prcticamente todos los elementos de interaccin con el usuario de los que dispone Windows 95/98/NT pueden ser programados en Visual Basic 6.0 de un modo muy sencillo. En ocasiones bastan unas pocas operaciones con el ratn y la introduccin a travs del teclado de algunas sentencias para disponer de aplicaciones con todas las caractersticas de Windows 95/98/NT. En los siguientes apartados se introducirn algunos conceptos de este tipo de programacin. 1.1.1. Herramientas RAD La escritura de aplicaciones mediante herramientas de desarrollo rpido o visual se basa en el uso de componentes o controles prefabricados, que son dispuestos en ventanas y personalizados mediante propiedades. De esta forma la creacin de la interfaz de usuario pasa de ser un tedioso trabajo exclusivamente de escritura de cdigo a unas simples operaciones de ratn y poco ms. El programador puede volver a centrarse en el ncleo del programa, el tratamiento de la informacin, y no necesita preocuparse de la gestin de la ventana en la que se visualizan los datos, ni de la forma en que el usuario se puede desplazar de un lugar a otro con el ratn, por poner un ejemplo. Los entornos de desarrollo visual, adems de simplificar la creacin de la interfaz, tambin facilitan en gran medida otras operaciones habituales en Windows como la comunicacin con otras aplicaciones, el uso de cuadros de dilogo comunes, la gestin de bases de datos, etc. Cada elemento de un programa, ya sea visual o no, viene representado por un componente. A pesar de la simplicidad que denotan este tipo de entornos, hay que tener en cuenta que siempre ser necesario escribir algo de cdigo para que una aplicacin realice una funcin til. Aunque es posible crear programas consistentes tan slo en lo que es la interfaz, al ejecutarlo obviamente slo tendremos eso, una ventana con algunos elementos que pueden responder a las acciones del usuario pero que no generarn ningn resultado a partir de la informacin introducida, que es la finalidad principal de cualquier aplicacin. El cdigo necesario para realizar determinadas funciones de la aplicacin estar escrito en un determinado lenguaje, que ser la base del entorno de desarrollo visual que estemos usando. El lenguaje base de Delphi es Objec Pascal, el de Visual Basic es BASIC, y el de C++ Builder es C++. El lenguaje es, precisamente, lo que diferencia fundamentalmente a un entorno RAD de los dems, hacindolo ms o menos potente o flexible. El lenguaje BASIC es de gran simplicidad, ideal para el programador novel, y por ello el elegido para este curso en particular. 1.1.2. Principales lenguajes de programacin visual En la actualidad existe gran diversidad de compiladores visuales para el sistema operativo Windows, por enumerar algunos Visual C++, Visual Basic, Visual Fox Pro, Visual Fortran, Visual Cobol, C++
Academia de Computacin
Programacin
Builder, Delphi, Java, etc,. Sin embargo, en estos momentos los lenguajes mas predominantes en la industria son Visual C++, Visual Basic, Delphi, C++ Builder y Java, los dos primeros de la empresa Microsoft, los dos segundos de la empresa Borland/Inprise y Java de Sun Microsistemas 1.2. Principales caractersticas de los entornos visuales en Windows La caracterstica principal de los entornos visuales en Windows es que trabajan por medio e ventanas para presentar informacin al usuario; utilizan iconos, que son dibujos grficos de tamao pequeo que representan a un objeto de Windows (Carpeta, unidad de disco, programa, impresora, etc.). La barra de tareas de Windows es parte importante en estos entornos, contiene el men Inicio, mediante el cual se accede a todos los programas y utilidades, contiene la zona de carga de carpetas y programas, que contiene un icono por cada programa que se est ejecutando y la zona de control, que muestra la fecha y la hora, adems de iconos para otras caractersticas como volumen de sonido, rendimiento del equipo, antivirus, etc. 1.3. Componentes y controles visuales para reutilizacin Los componentes son unos elementos genricos con una funcionalidad muy concreta, cuya nica finalidad es la reutilizacin. Cada uno de ellos est destinado a realizar una tarea tpica en una aplicacin. Un componente de la VCL ((Visual Class Library o Biblioteca de Componentes Visuales)) es una clase que caracteriza a un control de Windows agregando propiedades, mtodos y gestores de eventos a cada control. 1.4. La API de Windows Las API de Windows (Application Programming Interface) son funciones automticas que ya trae incorporadas el sistema operativo Windows y que podemos convocar para programar en Visual Basic. De esta manera ahorramos recursos y programamos en un nivel de mayor complejidad. Win32 es el nombre de la API que ofrece Microsoft para la implementacin de programas. Cuando escribe un programa de win32 se est llamando a funciones de la API Win32. Estas funciones se encuentran en archivos .dll en el directorio System de Windows que son libreras de enlace dinmico. Estas libreras se diferencian de otras porque en vez de ser enlazadas cuando es compilado el programa y de esa forma incluirse el cdigo en el ejecutable(tiempo de compilacin); lo que se hace es tener una referencia al fichero y a la lnea de cdigo donde empieza la funcin y cuando es llamada se carga en memoria (se carga en tiempo de ejecucin) y cualquier proceso puede hacer uso de ella para de esta forma no tener mltiples copias del mismo cdigo en memoria ni en disco. De estas librera cabe destacar entre otras: kernel32.dll : funciones para gestin de memoria, procesos e hilos. user32.dll :funciones para interfaz del usuario, ventanas y mensajes. gdi32.dll :funciones para grficos y visualizacin de texto. shell32.dll :funciones del shell de Windows
La API Win32 se implementa en cuatro plataformas: Win32s, Windows NT/2000 , Windows 95/98 y Windows CE. Esto significa que los programas se pueden compilar en estos distintos sistemas y ejecutarse sin cambiar una sola lnea de cdigo. En cambio hay que destacar que hay diferencias entre
Academia de Computacin
Programacin
al implementacin de Win32 en Windows NT y en el resto, pues en el resto aunque las funciones existen tienen implementaciones restringidas. 1.5. Comunicacin con manejadores de bases de datos (ADO, ODBC, RDO, DAO) El sistema manejador de bases de datos (DBMS) es la porcin ms importante del software de un sistema de base de datos. Un DBMS es una coleccin de numerosas rutinas de software interrelacionadas, cada una de las cuales es responsable de alguna tarea especfica. El DBMS es conocido tambin como Gestor de Base de datos. Las funciones principales de un DBMS son: Crear y organizar la Base de datos. Establecer y mantener las trayectorias de acceso a la base de datos de tal forma que los datos puedan ser accesados rpidamente. Manejar los datos de acuerdo a las peticiones de los usuarios. Registrar el uso de las bases de datos. Interaccin con el manejador de archivos. Esto a travs de las sentencias en DML al comando de el sistema de archivos. As el Manejador de base de datos es el responsable del verdadero almacenamiento de los datos. Respaldo y recuperacin. Consiste en contar con mecanismos implantados que permitan la recuperacin fcilmente de los datos en caso de ocurrir fallas en el sistema de base de datos. Control de concurrencia. Consiste en controlar la interaccin entre los usuarios concurrentes para no afectar la inconsistencia de los datos. Seguridad e integridad. Consiste en contar con mecanismos que permitan el control de la consistencia de los datos evitando que estos se vean perjudicados por cambios no autorizados o previstos.
Entre las tecnologas que pertenecen a la Interfaz de Objetos de Acceso de Datos encontramos: DAO (Data Access Objects), ADO (ActiveX Data Objects), RDO (Remote Data Object), RDS (Remote Data Service) y MIDAS (Middle-tier Distributed Application Service).
Academia de Computacin
Programacin
2. UTILIZACIN DE COMPONENTES VISUALES La programacin visual consiste en disear los formularios que componen al programa colocando todos sus controles (botones, etiquetas, campos de texto, etc.) en las posiciones deseadas, normalmente usando un ratn. Luego se asocia cdigo a los eventos de dichos controles y tambin se pueden crear mdulos de datos, que regularmente contienen los componentes de acceso a datos y las reglas de negocio de una aplicacin. 2.1. Entorno El ambiente de desarrollo de programas visuales consta generalmente de un editor de formularios (que permite el desarrollo visual), un potente editor de textos que resalta la sintaxis del cdigo fuente, la paleta de componentes y el depurador integrado, adems de una barra de botones y un men que nos permite la configuracin de la herramienta y la gestin de proyectos, entre otros. 2.1.1. Proyectos Un proyecto es un conjunto de archivos que trabajan en equipo para crear un archivo ejecutable independiente o una DLL. Un grupo de proyectos es un conjunto de proyectos. 2.1.2. Barra de herramientas La barra de herramientas tiene como objeto acelerar las operaciones ms comunes del men principal. Si nos acostumbramos a utilizarla agilizaremos el uso del entorno significativamente. Si pasamos el ratn sobre los iconos nos aparecern unos globos o cuadros de ayuda, informndonos de cual es la funcionalidad de cada uno de ellos. 2.1.3. Cuadro de herramientas La caja de herramientas es un contenedor de objetos de control que pueden ser usados en las formas. Para usarlo solo de clic en el icono apropiado y sobre la forma dibuje un rectangulo arrastrado el ratn, con esto el control se colocar en ese lugar. Luego se puede redimensionar. No todos los controles se pueden cambiar de tamao. En el caso del Timer y el Common Dialog solo pueden aparecer pequeos cuadros. 2.1.4. Formularios Es una ventana cuadriculada sobre el que se disponen los componentes para disear las ventanas que formarn la aplicacin 2.2. Propiedades, mtodos y eventos Las propiedades son aquellas caractersticas de un objeto que lo define "fsicamente", bien por su forma o color, por su contenido, por la forma en la que va a trabajar, entre otras. Las propiedades pueden modificarse cuando estamos diseando la interface grfica, mediante lo que llamamos caja de propiedades, o durante la ejecucin del programa. En este caso hay que hacerlo con cdigo escrito en el propio programa. Tiempo de diseo. Es cuando realizamos una operacin durante el diseo. Por ejemplo, podemos cambiar el color de un control durante el diseo de la aplicacin, accediendo a su propiedad BackColor en la caja de propiedades. Tiempo de ejecucin. Es cuando esa operacin se realiza durante la ejecucin del programa. Si tenemos una lnea de cdigo como esta
5
Programacin
Academia de Computacin
MiControl.BackColor =RGB(255,0,0) al ejecutarse esa lnea, se cambiar el color del control de nombre MiControl. Hemos cambiado la propiedad BackColor de ese control en tiempo de ejecucin. Las propiedades pueden ser de lectura y escritura, (se puede cambiar y se puede leer el valor de la propiedad), slo de lectura (solamente se puede leer el valor de la propiedad) solo de escritura (hay muy pocas de este tipo). Puede que una propiedad, que es de lectura y escritura en tiempo de diseo, sea slo de lectura en tiempo de ejecucin (esto es lo que le pasa por ejemplo, a la propiedad Name Nombre) Un evento es todo aquello que le puede ocurrir a un objeto con parte grfica (Control o Formulario) Por ejemplo, es un evento el hecho de hacer click sobre ese control, el hecho de pasar el ratn por encima de l, el hecho de que un control cambie de tamao. Los controles tienen muchos eventos, unos de ellos comunes a casi todos los controles (Evento click, por ejemplo) y otros exclusivos de un determinado control (El evento Timer solamente lo tiene el control Timer) Puede ver los eventos de un control haciendo doble click sobre ese control en tiempo de diseo. Le aparecer la ventana de cdigo.
Ventana de cdigo
La ventana de cdigo es el lugar donde deber escribir el cdigo de su aplicacin. Puede ver que existen en ella dos listas desplegables, una a la izquierda (sin desplegar) donde se ve el nombre del control del cual estamos visualizando el cdigo (en este caso Command1) y otra a la derecha, donde se despliegan todos los eventos que tiene ese control. Haciendo click en la lnea de uno de esos eventos, aparecer la ventana de cdigo dedicada a ese evento.
Nota. Fjese en la parte inferior izquierda de la ventana de cdigo. Hay dos botones, uno que permite visualizar el cdigo correspondiente a un solo evento, (el de ms a la izquierda) y otro que permiten ver en la misma ventana el cdigo de todos los eventos. Cada programador tiene su costumbre para ver uno o todos. La prctica le dir lo que es ms prctico para Vd.
Academia de Computacin
Programacin
Un Procedimiento es el cdigo que introducimos dentro de un evento. No pretendo hacer escuela con definiciones, puesto que el concepto de evento y procedimiento se confunde con mucha frecuencia, y no pasa nada por ello. El cdigo introducido en la ventana de cdigo del evento click ser el procedimiento click, el que se introduzca en el evento MouseUp ser el procedimiento MouseUp. No se sorprenda si a lo largo de este libro nos referimos a evento o a procedimiento de forma equivocada. En el lenguaje coloquial es muy habitual ese error y como decamos, no pasa nada por ello. Estos procedimientos forman parte del programa. Podra hacerse una aplicacin que no tuviese mas cdigo que el introducido en los procedimientos, y muchas veces esa es la realidad. Un procedimiento puede pasar parmetros. Se dice que pasa parmetros cuando el sistema aporta datos automticamente al procedimiento. Por ejemplo, el procedimiento MouseUp, que se ejecuta cuando levantamos el botn del ratn (tambin existe el evento MouseDown), pasa los siguientes parmetros: Nmero del botn que se ha pulsado, (1=Izdo, 2=Dcho, 3=Central), si est pulsada la tecla maysculas (Shift, 1 si est pulsada, 0 si no est pulsada) y los valores X e Y de la posicin del cursor del ratn. Podemos ver los parmetros que pasa en la propia definicin del procedimiento, que nos da Visual Basic Private Sub Command1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single) End Sub Observe que los parmetros estn entre parntesis, y que queda definido el tipo de variable que es cada uno de ellos. Podemos usar ese valor dentro del cdigo del procedimiento como un dato ms. Un Mtodo es una operacin que la realiza Visual Basic sin necesidad de escribir cdigo para realizarla. Por ejemplo, si queremos dibujar una lnea en un formulario o en la impresora utilizaremos el mtodo Line. Si queremos dibujar una circunferencia usaremos el mtodo Circle. Si queremos escribir texto, utilizaremos el mtodo Print. No necesitamos decirle como lo tiene que haver, puesto que eso ya lo sabe hacer VB sin necesidad de que se lo expliquemos. A los mtodos les tenemos que pasar datos. A eso le llamamos tambin pasarle parmetros. Los mtodos solo permiten introducir los parmetros que necesita el mtodo para ejecutarse. (En el caso de una lnea, el punto inicial y el final, en el caso del circulo, el radio y las coordenadas del centro. Pueden pedir parmetros optativos, como el puede ser el color de la lnea o circulo. Espero que le quede claro cada una de estas definiciones. Tendr tiempo suficiente a lo largo del curso para verlas, y dentro de muy poco tiempo le sern muy familiares estos conceptos. 2.3. Manejo de controles Los controles son objetos que pueden colocar en un formulario que tiene su propio conjunto de propiedades, mtodos y eventos reconocidos. Puede utilizar controles para recibir entradas del usuario, mostrar resultados y desencadenar procedimientos de evento. Puede manipular la mayora de los controles utilizando mtodos. Algunos controles son interactivos (responden a acciones del usuario) mientras que otros son estticos (slo son accesibles mediante cdigo). 2.3.1. Propiedades del formulario El formulario le permite crear ventanas, cuadros de dilogo y controles en la aplicacin. Los controles se dibujan y se ven en l. Mientras est diseando un formulario:
Academia de Computacin
Programacin