Curso
Aprende a programar Si siempre has tenido el gusanillo de la programación pero nunca te has atrevido, o si ya hiciste tus "pinitos" con el tradicional y entrañable Visual Basic, ahora tienes la oportunidad de iniciarte en el mundo de la programación con la nueva tecnología .NET. Para ello vas a aprender a usar la aplicación Visual Basic Express Edition, la herramienta gratuita de programación creada por Microsoft.
Guía del curso 1. Aprende a programar con Visual Basic 2005 Introducción. Ayuda. Tu primer programa
PC Today no 136
2. Starter Kit y plantillas Creación y personalización de un proyecto
PC Today no 137
3. Controles, tipos y variables Programación orientada a objeto.
PC Today no 138
4. El lenguaje de programación Sentencias e instrucciones. Condiciones y bucles PC Today no 139
5. Diseño de aplicaciones Depuración del código
PC Today no 140
6. Acceder a bases de datos SQL Server 2005 Express
PC Today no 141
7. Securizar e imprimir Control de acceso, usuarios y perfiles
PC Today no 142
8. Pruebas y control de errores Manejando los errores. El plan de pruebas
PC Today no 143
Instalación y despliegue Creación y ejecución de un instalador
60 146_60_68_Curso.indd 60
PC Today no 144
M
icrosoft tiene claro desde hace varios años que ha de apostar por sus desarrolladores y por ello está dedicando una especial atención a sus herramientas de desarrollo, incluidas en Visual Studio. En este contexto, y con el paso del tiempo, el fabricante ha ido lanzando versiones cada vez más completas, potentes y fáciles de usar por el programador. La última de ellas ha sido la versión Express de Visual Basic. Con esta aplicación, Microsoft democratiza definitivamente el desarrollo de aplicaciones para su plataforma .NET. Sobre todo, porque se trata de una herramienta gratuita, pero también por su sencillez de uso y por el gran
número de recursos formativos desplegados en su web. Visual Basic 2005 Express Edition te permitirá, de manera visual, crear aplicaciones para Windows y distribuirlas para su ejecución en tu PC, en cualquier PC de tu red local, en Internet o mediante CDs de distribución. Para que puedas hacer todo esto vas a revisar las principales características de la herramienta de desarrollo; vas a ponerte en contacto, de una manera sencilla y muy práctica, con una auténtico lenguaje de programación orientado a objeto, y utilizarás la potencia de una base de datos como SQL Server 2005 Express. Debido a la rapidez con la que obtendrás resultados, descubrirás que programar es
divertido y disfrutarás creando aplicaciones de aspecto profesional que cubran tus necesidades específicas –lo que, a menudo, no es sencillo conseguir con herramientas comerciales estándar-.
Visual Basic 2005 Express Edition
Visual Basic es uno de los múltiples lenguajes de programación que acepta el .NET Framework. Como lenguaje de programación, cuenta con una larga trayectoria que va desde el original Basic pasando por todas las versiones para Windows 3, 4, 5, 6, hasta este 2005. Todas estas versiones surgen debido al éxito que ha tenido Visual Basic pues ha demostrado ser un lenguaje fácil de aprender y
www.pctoday.es 18/5/06 17:44:40
Visual Basic 2005 Express Edition. Parte 1ª utilizar, sin perder calidad en el desarrollo. Por este motivo Visual Basic es uno de los lenguajes de programación más indicados para principiantes. ¿Qué tiene de diferente esta versión 2005 de Visual Basic? Ante todo, que, por primera vez, estamos ante un lenguaje orientado a objeto -algo que ninguna versión anterior de
través de un interfaz gráfico que incluye los componentes habituales de este entorno (tales como ventanas, botones, menús, etc.) •Aplicaciones de línea de comandos. Se ejecutan desde la línea de comandos de DOS y no tienen un interfaz gráfico.
Una vez aprendas a usarlo, tendrás una alternativa a los programas comerciales que, aparte de caros, nunca se adaptan totalmente a tus necesidades. Además, podrás desarrollar tu faceta de programador como diversión o, quizás algún día, incluso como profesión.
Herramientas para ya iniciados
Si alguna vez comenzaste a programar usando Visual Basic pero hace tiempo que lo abandonaste y quieres actualizarte, es importante que co-
Como podrás comprobar a lo largo de este curso, la base de la sencillez conseguida por Visual Basic es que la aplicación ofrece te ofrece un montón de ayuda para realizar una mejor programación y, lo que es más importante, para hacerlo de una manera fácil.
nozcas algunas de las novedades que presenta esta versión respecto a las antiguas. Más adelante en este curso tendrás la oportunidad de aprender a utilizarlas en casos prácticos. Entre ellas, destacan:
•Code Snippets (Fragmentos de código reutilizables). Proporcionan código para las funciones más comunes que quieras realizar. Además de los fragmentos de código más usuales, que ya
•Diseñador de formularios Windows. Te permite crear aplicaciones simplemente arrastrando y soltando. Además, esta herramienta te indica si hay errores en el código que acabas de escribir para que puedas subsanarlos antes de llevar a cabo el proceso de compilación. •Servicios Web XML. Para conectarte y recuperar datos de servicios Web XML. •Autocorreción y compilación en segundo término. Te ayudan a detectar los errores en tu código incluso te sugieren el código correcto a escribir.
La principal novedad de esta versión es que se trata, por primera vez, de un auténtico lenguaje orientado a objeto
•Etiquetas inteligentes Smart Tags. Te ofrecen un acceso rápido a las propiedades de los controles.
▲
•Aplicaciones Windows. Se ejecutan en un entorno Windows y se manejan a
•Librerías de clases. Librerías de código, reutilizables por varios programas, que agrupan un conjunto de funciones. Se utilizan para no tener que programar siempre lo mismo en distintos programas que realicen las mismas funciones.
•Intellisense. Visual Basic es un lenguaje de programaSe trata de una ción recomendado para principiantes herramienta que, según vas escribientienes integrados en el endo, va sugiriendo o inclutorno de desarrollo de Visual so completando tu código Basic Express, tú puedes de programación. añadir otros nuevos descargándolos de Internet.
La programación con Visual Basic 2005 te ofrece una alternativa a los programas comerciales
Las opciones de Ayuda son numerosas en esta aplicación y te permitirán recibir soporte, incluso, de otros desarrolladores
Visual Basic había conseguido completamente- con las ventajas que ello supone. Este sistema hace la programación más comprensible porque acerca los objetos abstractos de programación a los objetos del mundo real. La versión Express Edition de Visual Basic es una herramienta de desarrollo para implementar aplicaciones Windows de forma sencilla. Con ella podrás crear, básicamente, tres tipos distintos de aplicaciones:
•Kit de Inicio o Starter Kit. Aplicaciones completamente desarrolladas siguiendo unas "buenas prácticas" y que sirven de ejemplo para otros desarrollos.
¿Qué es .NET? Seguramente te preguntarás: ¿Qué es eso de .NET del que tanto se habla y que aparece en tantos sitios? Para ser exactos cuando la gente se refiere a .NET lo hace a la plataforma Microsoft .NET Framework, es decir, a un conjunto de programas, herramientas y utilidades que te permiten desarrollar, ejecutar y administrar aplicaciones bajo un entorno Windows. Aunque realmente las aplicaciones ya no se ejecutan en Windows sino en un entorno controlado que es un componente más del conjunto de utilidades que hemos denominado plataforma .NET Framework.
Esto quiere decir que, en lugar de ejecutar la aplicación en Windows directamente, lo que
se hace es introducir una capa intermedia que es la encargada de convertir todas las
Nº 146 146_60_68_Curso.indd 61
instrucciones de .NET en un lenguaje intermedio llamado CLR (Common Language Runtime) para, en un paso posterior, convertirlo al código que realmente entiende Windows -que podríamos denominar "código maquina"-. Y claro, te preguntarás: ¿Para qué todo este jaleo? Es como si para traducir una frase del inglés al español primero la tradujéramos al esperanto y del esperanto al español. ¿Qué ventajas puede tener eso? Pues muy sencillo. Resulta que en las aplicaciones Windows tradicionales la "traducción" a lenguaje máquina de una misma instrucción resultaba diferente
según el lenguaje de programación original y la herramienta utilizada. Debido a ello se producían efectos diferentes para las diferentes "traducciones". De la manera que funciona .NET -traduciendo todo a un lenguaje intermedio- se asegura un mismo efecto de cada instrucción independientemente del lenguaje en que fuera programada y la herramienta de desarrollo utilizada. Además, existe otra ventaja. Al ejecutarse estos programas en un entorno intermedio, los errores producidos no afectan al sistema operativo en sí. En definitiva, no se "colgará" todo el equipo por una aplicación. ■
61 18/5/06 17:44:46
Curso
Instala Visual Basic 2005 Express Edition Antes de que empieces a instalar VB 2005 Express Edition, es importante que tengas en cuenta algunas consideraciones. Lo primero es que, para trabajar con esta herramienta, tu equipo debe contar con unos requisitos mínimos a nivel de hardware y de sistema operativo. Dichos requisitos son: •Microsoft Windows XP con Service Pack 2, Microsoft Windows Server 2003 con Service Pack 1 o Microsoft Windows 2000 con Service Pack 4. Además, deberás tener privilegios de administrador en el equipo donde lo vayas a instalar la aplicación. •PC Pentium III -aunque es recomendable Pentium IV- a 600MHz mínimo pero recomendable a partir de 1GHz. •450 MB de espacio libre en el disco duro, aunque lo recomendable es disponer al menos de 1,3 GB. •128 MB de RAM, o mejor 256 MB. •Resolución de vídeo 800x600, aunque es recomendable contar con resolución 1.024x768 y color 16 bits. •Un lector/grabador de CDs.
1
Para instalar VB 2005 Express en tu ordenador es necesario disponer de las últimas actualizaciones de Windows. Para conseguirlas, visita la página web http://update.microsoft.com desde donde podrás detectar y descargar aquellas actualizaciones que te falten -son especialmente importantes las actualizaciones referentes a la seguridad-. Una vez en la ventana de bienvenida del actualizador de Windows, pulsa sobre el botón Rápida. El programa analizará automáticamente cuáles son los elementos que necesitas actualizar. Una vez hecho esto, haz click en Descargar e instalar ahora.
2
Si cuentas en tu PC con algún software antivirus, antispyware o firewall es importante que modifiques su configuración para permitir la actualización de algunas librerías propias del sistema operativo. Normalmente tu programa antivirus te pide autorización
62 146_60_68_Curso.indd 62
términos del contrato de licencia y pulsa en el botón Siguiente.
para la actualización de estos elementos -aunque siempre dependerá del producto que tengas instalado-. Ante cualquier problema visita la página del fabricante de tu producto o ponte en contacto con su soporte técnico o proveedor.
3
Si tienes instaladas otras versiones anteriores de Visual Studio no tendrás ningún problema al instalar esta herramienta, pero si lo que tienes instalado son versiones Beta de alguna de las versiones 2005 es necesario que, previamente, desinstales estos productos de
tu máquina. Para ello, debes pulsar en el botón de Inicio y elegir las opciones Panel de control, Agregar o quitar programas. Mediante este sistema aparecerá una lista con todos los programas instalados en tu PC. Ahora, procede a desinstalar todas las aplicaciones relativas a Visual Studio de las que dispongas. Es especialmente importante que sigas, estrictamen-
te, el siguiente orden de desinstalación: SQL Server 2005 Express Edition, SQL Server 2005 Tools Express Edition, SQL Native Client, MSDN Express Library 2005 Beta, todas las ediciones de Visual Studio Express existentes (por ejemplo Visual C 2005 Express Edition Beta), Visual J .NET Redistributable Package 2.0 Beta y .NET Framework 2.0 Beta.
4
dispondrás de información adicional, así como acceso a enlaces de utilidad, formación, ejemplos de código y muchos recursos gratuitos procedentes de la comunidad de desarrolladores.
Consejo En la misma web desde la que vas a descargarte el programa, haz click en la palabras "siguiente" que encontrarás dentro de la advertencia remarcada en rojo. De esta manera accederás a una nueva página donde podrás descargarte una herramienta de desinstalación que te ayude en esta labor. Antes de emplearlo, lee las advertencias que Microsoft hace al respecto de su uso.
5
Haz click en el texto Versión final en español. Se abrirá una ventana en la que tienes que hacer click en Ejecutar (no pulses el botón Guardar) lo que iniciará la descarga. Finalizada esta, vuelve a pulsar en Ejecutar. Durante unos segundos aparecerán varias pequeñas ventanas que te indicarán que se están añadiendo los componentes necesarios para la instalación. Finalmente se iniciará un asistente que te ayudará durante el proceso de instalación. Al elegir el botón Siguiente, se mostrarán en pantalla las instrucciones de uso y licencia de usuario. Léelas atentamente y, una vez estés seguro de la aceptación, marca la casilla Acepto los
6
Aparecerá una nueva pantalla de opciones en la que te preguntará si deseas instalar SQL Server 2005 Express y, del mismo modo, si deseas proceder a instalar la documentación de ayuda MSDN Express Library. Te re-
comendamos que, salvo que te falte espacio en el disco duro, instales ambas opciones. Disponer de SQL Server 2005 Express te permitirá crear potentes aplicaciones de acceso a datos. Del mismo modo, si no instalas MSDN Express Library deberás disponer constantemente de acceso a Internet para realizar las consultas de ayuda y documentación que necesitarás para poder desarrollar adecuadamente
tu tarea. Si vas a instalarlas, marca la casilla que encontrarás delante de cada opción y, después, pulsa sobre Siguiente.
7
En la siguiente pantalla, el asistente te pedirá que elijas la carpeta de destino de la instalación. En concreto para esta aplicación, es recomendable que respetes la ruta que se señala por defecto ya que, por las peculiaridades que supone el manejo de una herramienta de desarrollo, a medio plazo puedes incurrir en errores que no alcances a resolver hasta que te conviertas en un desarrollador más experto. Pulsa en Instalar.
Resumiendo... 1 Abrir update.microsoft.com 3 Rápida 3 Descargar e instalar ahora 2 Modificar la configuración de antivirus y/o firewall 3 Permitir actualización de librerías de Windows
3 Inicio 3 Panel de Control 3 Añadir/Quitar programas 3 Desinstalar
Ahora, ya está todo listo para que puedas descargarte la aplicación con la que vas a seguir este curso. Abre tu navegador Web e introduce la dirección www.microsoft.com/spanish/msdn/ vstudio/Express/VB/default.mspx. En esta misma página podrás leer las últimas advertencias de la versión y también
los productos en orden
4 Abrir www.microsoft.com/spanish/msdn/vstudio/Express/VB/default.mspx 5 Click en Versión final en español 3 Ejecutar 3 Ejecutar 3 Siguiente 3 Marcar casilla Acepto 3 Siguiente
6 Marcar las dos opciones 3 Siguiente 7 Mantener la carpeta de destino 3 Instalar
www.pctoday.es 18/5/06 17:44:48
Curso
3
Registra tu programa Ya has instalado tu versión de Visual Basic 2005 Express Edition. Pero todavía quedan unos pasos importantes. De hecho, al acabar la instalación habrá aparecido en pantalla una ventana que te informa de dichos pasos. Uno de ellos es el registro del producto. Es necesario para que tu versión no expire a los 30 días y además supone el acceso al Portal de beneficios que ofrece Microsoft, donde encontrarás documentación tutoriales, imágenes y multitud de elementos y componentes para enriquecer tus desarrollos y crear soluciones más fácilmente.
2
Al hacer click en Aceptar aparecerá un formulario en el que debes introducir tus datos personales. Sólo son obligatorios los que aparecen señalados con un asterisco rojo. Sobre todo, asegúrate de haber introducido correctamente tu dirección de correo electrónico. Cuando hayas finalizado, pulsa sobre Continuar.
Express Edition para abrir por primera vez el programa. Tardará un poco. Una vez dentro, pulsa en la barra de menús sobre Ayuda y selecciona Registrar producto. En la ventana que aparece, pega
nico de confirmación". Al abrirlo, dentro del cuerpo del correo, encontrarás un vínculo. Haz como te solicita el mensaje y pulsa con el ratón sobre él. Como resultado, aparecerá una ventana con tu clave de registro. Cópiala y cierra tu correo.
la clave que has obtenido en la página de registro y pulsa sobre el botón Completar registro. Tu software ya está registrado.
4
Ahora, abre la interfaz del Visual Basic 2005 para introducir tu clave en el propio producto. Para ello ve a Inicio, Todos los programas, Visual Basic
1
Para registrar tu versión de Visual Basic 2005 Express, en la pantalla que aparece al acabar la instalación, pulsa en el texto Registrar ahora. Se abrirá la página de acceso para usuarios de MSN. Si ya cuentas con una dirección de correo electrónico de Hotmail, introduce en los campos correspondientes la dirección y la contraseña. Después, pulsa Aceptar. Si no, primero tendrás que crearte una.
Una nueva pantalla te pedirá que revises ahora tu correo. En la Bandeja de entrada encontrarás un mensaje de confirmación de Microsoft con el asunto "Correo electró-
Consejo
Resumiendo...
Tras registrar el producto, y antes de empezar a trabajar, visita el sitio web de Windows Update (update.microsoft.com) para asegurarte de que dispones de los últimos parches de seguridad y del producto. Recuerda que el software es algo "vivo" y que para todas las aplicaciones aparecen continuas mejoras que se convierten en parches o Services Packs
1 Pulsar en Registrar ahora 3 Introducir dirección de correo electrónico y tu contraseña 3 Aceptar
2 Rellenar el formulario 3 Continuar 3 Abrir el correo electrónico 3 Abrir mensaje: Correo electrónico de confirmación 3 Click en el vínculo 3 Copiar la clave de registro
4 Inicio 3 Todos los programas 3 Visual Basic Express Edition 3 Ayuda 3 Registrar producto 3 Copiar clave de registro 3 Completar registro
La Ayuda
este menú se puede situar a la izquierda, como una ficha más en el área principal, como menú flotante y así hasta un interminable número de posibilidades.
Utiliza la ventana de Ayuda
Pulsa sobre la ficha de búsqueda que aparece en el área principal Desde esta ficha puedes acceder online a numerosos recursos en español y en inglés para obtener conocimientos del mundo entero. Introduce el concepto para el cual deseas obtener ayuda -por ejemplo, "Explorador de archivos"-, selecciona el lenguaje de programación al que se refiere tu consulta
Hasta el programador más experto sabe apreciar el verdadero valor de una buena Ayuda. Y es nadie lo sabe todo. Además, ¿para qué vas a memorizar cosas que son accesibles mediante un simple click de ratón o que, incluso, tu herramienta de desarrollo puede escribir por ti?
La ventana de Ayuda es el elemento fundamental de acceso a la información de guía. Si ya has utilizado otros programas en el entorno Windows seguro que has tenido alguna experiencia con este formato de ventana de Ayuda. En el caso de Visual Basic 2005, esta será una herramienta a la que podrás recurrir tanto para conceptos sencillos como para resolver dudas complejas.
1
Para comprobar el funcionamiento de la Ayuda, selecciona el Explorador de soluciones y pulsa la tecla F1. Aparecerá la ventana principal de Ayuda desde la que puedes acceder a numerosos recursos. Ten en cuenta que
64 146_60_68_Curso.indd 64
se trata de una herramienta contextual, es decir, la ayuda que se ofrece se corresponde con el tema del contexto en el que has pulsado. En este caso el Explorador de soluciones. A la izquierda aparece el índice, desde el podrás buscar por temas y títulos los que sean de tu interés en ese momento. Como todo es configurable,
2
-en este caso, Visual Basic- y la tecnología, Visual Studio. Los resultados de la búsqueda aparecerán agrupados para que te sea más simple localizarlos.
3
Existen otras maneras rápidas para que puedas acceder a la Ayuda del modo que más te interese en cada momento. Si pulsas Ctrl+F1 desde la misma pantalla del
Explorador de soluciones accederás a la sección Cómo de la Ayuda. Aparecerá, a modo de guía rápida, la manera de realizar las tareas más frecuentes en Visual Basic 2005 Express Edition así como otras funciones o conceptos que se mostrarán de manera organizada. Si lo que pulsas es la combinación de teclas Ctrl+Alt+F1, llegarás a la sección Contenido. Recuerda hacerlo desde el punto, sentencia o palabra sobre la que requieras ayuda. Por ejemplo, desde el Explorador de soluciones. Aparecerán de manera agrupada los temas de Ayuda. De esta forma puedes mantener tus ideas ordenadas y jerarquizar los conceptos y contenidos que quieres utilizar.
www.pctoday.es 18/5/06 17:44:52
Visual Basic 2005 Express Edition. Parte 1ª
4
También puedes crear tu propio acceso directo a la ayuda mediante la opción de Favoritos, que funciona del mismo modo que, por ejemplo, los Favoritos de tu navegador de Internet. Para agregar un tema a Favoritos pulsa desde el tema en cuestión, por ejemplo el que has encontrado en el paso 1 sobre el Explorador de soluciones, y presiona el botón Agregar a favoritos de la Ayuda. Cuando quieras acceder a estos Favoritos de la Ayuda bastará con pulsar Ctrl+Alt+F.
Glosario. El entorno de trabajo 1
que no aparecerá ningún control hasta que no crees tu primer proyecto.
2
3 4
6 7 5 Barra de menús (1). Desde aquí podrás acceder a todas las posibles acciones relacionadas con los proyectos que quieras realizar. También con todas las relacionadas con ficheros y ayudas. Las opciones de menú varían en función del contexto en el que te encuentres. Barra de herramientas (2). Contiene los iconos de acceso directo a acciones. Cuadro de herramientas (3). Cuando colocas el ratón sobre esta etiqueta se despliega un completo menú de controles y herramientas disponibles. Si lo deseas, puedes fijar el menú pulsando sobre el icono con forma de chincheta. Ten en cuenta
Explorador de soluciones (4). Desde aquí puedes acceder a todos los ficheros – de código, de configuración y propiedades del proyecto- que componen un proyecto, de una manera organizada.
Barra de estado (5). Esta barra muestra una amplia variedad de información dependiendo de la operación en curso. También obtendrás información sobre el resultado de la ejecución de dicha operación.
Resumiendo... 1 Seleccionar Explorador de soluciones 3 Pulsar en F1 3 Buscar en el
Proyectos recientes (6). Desde aquí dispondrás de un acceso directo a los proyectos con los que hayas trabajado recientemente. También puedes buscar otros proyectos o crear uno nuevo.
índice de temas
2 Pulsar sobre la ficha de búsqueda 3 Escribir Explorador de archivos 3 Seleccionar lenguaje de programación: Visual Basic 3 Seleccionar: Visual Studio 3 Pulsar Ctrl+F1 3 Buscar en la sección Cómo de la Ayuda 3 Pulsar Ctrl+Alt+F1 3 Buscar en la sección Contenido de la Ayuda 4 Seleccionar un tema de Ayuda 3 Agregar a Favoritos 3 Pulsar Ctrl+Alt+F
Introducción (7). Ayuda de primera mano para que recibir el soporte básico necesario. Ideal para saber por dónde empezar. ■
Comunidad: otra forma de ayuda
que hayas formulado. También puedes dar réplica a las respuestas recibidas para aclarar conceptos o pedir más información referente al tema original.
La forma de ayuda más sencilla es preguntando a otra persona que sabe la respuesta. Bajo ese simple planteamiento surgen una serie de funcionalidades que llegarán a ser imprescindibles para cualquier desarrollador que trabaje con VB 2005 Express Edition.
usuario con el que registraste tu copia de Visual Basic 2005 Express. Como puedes comprobar, la pregunta puedes realizarla sobre cualquier tecnología Microsoft y no queda limitada sólo a cuestiones referidas a la programación.
Si quieres enviar comentarios con los que creas que es posible mejorar la herramienta a Microsoft, pulsa en Enviar comentarios, dentro de la barra de menús. Accederás a un área de la web de Microsoft desde donde puedes
1
Ya has introducido tu cuestión. Espera un tiempo antes de comprobar el estado de una pregunta. Para ello, pulsa sobre la opción Comprobar estado de la pregunta que se encuentra en la barra de menús, selecciona el grupo de noticias donde publicaste tu pregunta y búscala por palabras clave. Una vez has publicado la pregunta, la respuesta o respuestas pueden tardar en llegar, por lo que es posible que tengas que consultar varias veces el estado de las preguntas
Pulsa sobre el botón Formular una pregunta de la barra de Menús para plantear una pregunta a la comunidad de desarrolladores. Después, selecciona Web (Puedes plantear la
3
2
enviar tus sugerencias, tus comentarios y los errores que hayas podido detectar. De esta manera ayudarás a mejorar la herramienta e incluso a que arreglen los inconvenientes que te hayan ocurrido. Así tus necesidades se pueden ver resueltas al cabo del tiempo si son comunes a las de un buen número de desarrolladores.
4
Desde la barra de menús y mediante la opción Acceso a centros de desarrolladores, podrás acceder a la comunidad Microsoft Visual Basic Developer Center o a
Nº 146 146_60_68_Curso.indd 65
CodeZone. En ambas encontraras multitud de recursos de utilidad para aprender y para mejorar cualquier desarrollo que hayas realizado. También podrás estar informado de todas las novedades del producto y de la tecnología. Dentro de cada una de estas zonas encontrarás instrucciones detalladas de los servicios y secciones que te ofrecen.
5
De la misma manera que anteriormente has realizado la búsqueda en la ventana de Ayuda, también puedes realizar búsquedas en contenidos y documentos de las comunidades de desarrolladores. Para ello, pulsa el botón Búsqueda de la comunidad, que se encuentra en la barra de menús dentro de la opción Comunidad. Con ello se desplegará un buscador para acceder a las últimas plantillas, Starter Kits, ejemplos, fragmentos de código Intellisense, con-
▲
pregunta desde la Web o desde un lector de News como Outlook) y el tema Visual Basic. A continuación, introduce la pregunta y haz click sobre el botón Guardar. Recuerda que tienes que utilizar el
Desde aquí podrás personalizar completamente los temas que más te interesen o los que utilices más asiduamente pudiendo organizarlos de la manera que creas más conveniente. También puedes guardar búsquedas en la sección de Favoritos.
65 18/5/06 17:44:55
Curso Resumiendo... 1 Pulsar Formular una pregunta 3 Seleccionar: Web 3 Seleccionar tema: Visual Basic 3 Escribir pregunta 3 Guardar
troles y todo los componentes "prefabricados" que puedas necesitar para desarrollar aplicaciones mejores y de mayor calidad, de una manera más sencilla. Introduce el tema que quieras buscar en la casilla diseñada para este fin. Hecho esto,
pulsa sobre el botón Aceptar. Se iniciará en proceso de búsqueda, que puede durar varios segundos. Los resultados se mostrarán de manera similar a los de la búsqueda que has realizado anteriormente en la sección de Ayuda.
2 Comprobar estado de la pregunta 3 Seleccionar grupo de noticias 3 Buscar por palabra clave
3 Enviar comentarios 3 Escribir comentario 4 Acceso a centros de desarrolladores 5 Comunidad 3 Búsqueda de la comunidad
Crea tu primer programa Como la mejor forma de que te familiarices con las herramientas que incluye Visual Basic 2005 Express es mediante la práctica, vas a comenzar diseñando tu primer programa. De entre los distintos tipos de aplicaciones que puedes crear con VB 2005 Express, tu primer trabajo consistirá en forjar una aplicación para Windows, compuesta por una única ventana y que podrás utilizar para hacer sumas.
1
En primer lugar, tienes que crear un nuevo proyecto. Para ello, selecciona Archivo dentro de la barra de menús. Se abrirá un desplegable donde tendrás que elegir la opción Nuevo Proyecto. También puedes efectuar esta acción pulsando en el icono de Nuevo proyecto en la barra de menús o pulsando el atajo de teclado Ctrl+N.
Mediante cualquiera de estos medios lograrás que se abra la ventana de Nuevo proyecto. Ahora, selecciona el tipo de aplicación que vas a crear, en este caso Aplicación para Windows, y, desde la misma ventana, dentro de la casilla destinada a tal fin, indica
el nombre que hayas elegido para tu aplicación. Escribe, por ejemplo, "MiPrimerPrograma" y pulsa en Aceptar.
2
En el área de trabajo aparecerá un formulario bajo el nombre Form1. Para cambiar el nombre del formulario, busca la ventana de Propiedades, que se encuentra bajo el Explorador de soluciones. Den-
66 146_60_68_Curso.indd 66
tro de ella, busca la propiedad Name y sustituye Form1 por FormInicio, ya que este será nuestro formulario de inicio. En esta misma ventana, cambia la propiedad Text, la cual se refiere al texto que aparece en la barra de título del formulario. Escribe, en este caso, Mi Calculadora.
3
De esta manera tan sencilla ya has creado una aplicación. Se trata de la aplicación más simple posible ya que sólo tiene una ventana. Para probarla, pulsa sobre
el menú Depurar y elige la opción Iniciar depuración. Conseguirás que se ejecute tu programa, convertido en una ventana de Windows. Prueba que puedes moverla, minimizarla, maximizarla y, finalmente, cerrarla, lo que te devolverá al área de trabajo.
Despliega el Cuadro de herramientas pasando el ratón por encima del menú del mismo nombre que encontrarás en el margen izquierdo de la interfaz. Pulsa sobre la opción Controles comunes y pincha con el ratón sobre el control Button (Botón). Ahora, arrastra el control hasta la ventana Mi Calculadora. Repite el proceso con dos controles de tipo TextBox (Caja de texto) y un control de tipo Label (Etiqueta). Coloca los controles de la manera que te parezca más apropiada teniendo en cuenta que vas a crear una calculadora.
5
Ahora tienes que dar a tus controles un nombre más acorde a las funciones que vayan a realizar en tu programa –insertando números en cada uno de los TextBox, cuando pulses sobre el Botón aparecerá el resultado en Label. Vas a hacerlo mediante el mismo método que ya has utilizado con el formulario. Desplázate hasta la ventana de Propiedades que se encuentra bajo el Explorador de soluciones. Una vez allí, cambia la propiedad Name de los TextBox: llámalos txtSumando1 y txtSumando2. Cambia la propiedad Name del control Label e identifícalo como lblResultado. Para este control también debes modificar la propiedad Text que representa el texto que se muestra. Inicialmente ha de estar vacío ("__"). Por último, cambia la propiedad Name del con-
4
Ahora tienes que agregar controles a tu programa. Aunque será un tema que verás más adelante en profundidad, para realizar tu primer programa vas a utilizar algunos controles sencillos. Denominamos controles a los objetos que aparecen en los formularios, tales como botones, cuadros de texto, etiquetas, etc.
trol Botón e identifícalo como btnSumar. De la misma manera modifica la propiedad Text para que el texto del botón muestre la palabra Sumar.
6
El último paso para completar tu programa es añadir la funcionalidad que deseas implementar. Es decir, indicar qué es exactamente lo que quieres que haga tu programa. En el caso del ejemplo, lo que pretendes es conseguir que, cada vez que pulsas el botón "Sumar", se produzca la suma de los números
introducidos en las cajas de texto y semuestre el resultado en la etiqueta que has colocado junto a los TextBox. Desde la ventana de diseño, tienes que hacer click dos veces sobre el botón "Sumar" que acabas de modificar dentro de tu formulario. Se abrirá la ventana de código, creando la clase del formulario en el que te encuentras y el método Click del botón que acabas de pulsar. No te asustes por todos estos conceptos ya que los veremos a lo largo del curso.
www.pctoday.es 18/5/06 17:45:00
Curso
7
Colócate dentro del método btnSumar_Click. Una vez allí, vas a escribir tu fragmento de código. Como aún no cuentas con los conocimientos necesarios, bastará con que copies literalmente el texto que reproducimos a continuación. Podrás observar como la ayuda de Intellisense -mediante su función de autorellenado- te va "sugiriendo" código a medida que vas escribiendo. Private Sub btnSumar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSumar.Click lblResultado.Text = CLng(txtSumando1.Text) + CLng(txtSumando2.Text) End Sub Como ya dijimos en el paso anterior, no te preocupes demasiado por lo que estás escribiendo ya que durante el curso vas a ver los tipos y operacio-
nes que se utilizan aquí, en detalle. Simplemente, para tu información, comentarte que a través de esta instrucción lo que consigues es convertir
Consejo Del mismo modo que ahora acudes a tu Comunidad para obtener respuestas a las dudas que te van surgiendo, según vayas adquirirendo más experiencia, recuerda tus inicios y colabora contestando a las preguntas de otros usuarios menos expertos. Ellos lo agradecerán tanto como tú.
"Chuletas" para escribir código Si no lo has hecho nunca, escribir código será uno de tus principales hándicaps durante este curso, aunque no será tan difícil como imaginas. Y es que, los desarrolladores de Visual Basic 2005 han incorporado a la aplicación una serie de herramientas orientadas a este fin. Intellisense representa una serie de funcionalidades de ayuda integradas en el editor de Visual Basic Express 2005. Esta herramienta dispone de función de autorrellenado de código mientras tecleas, correcciones a los errores detectados que hayas podido escribir y desplegables de propiedades, métodos o argumentos que se muestran mientras codificas. Code Snippets, por su parte, es la ayuda para la reutilización de código. Una vez has programado algo
a número los contenidos de las cajas de texto, sumarlos y asignar el resultado a la etiqueta correspondiente.
8
Una vez hayas introducido el código, desplázate a la barra de menús que hay en la parte superior de tu ventana. Allí, pulsa de nuevo sobre el menú Depurar y, dentro de él, elige la opción Iniciar depuración.
Como resultado, se volverá a abrir la ventana. La única diferencia es que en ella podrás ver ahora, además de los elementos de los que ya disponías, los controles que acabas de añadir. Para asegurarte de que tu programa funciona correctamente, prueba a introducir diversos números en las casillas correspondientes y pulsa con el ratón sobre el botón "Sumar". Si todo ha ido bien, comprobarás que aparece el resultado de la suma, tal y como lo has programado. En caso de que no sea así, te recomendamos que vuelvas a la pantalla donde introdujiste el código para comprobar que no hay ningún error de sintaxis en éste.
9
Para terminar, tienes que guardar el proyecto del programa que has realizado. Pulsa en la barra de menús sobre Archivo y elige la opción Guardar todo. Como resultado, aparecerá una nueva ventana
complejo que realmente funciona, ¿por qué no reutilizarlo la siguiente vez que te encuentres con el mismo problema? Por supuesto, sin tener que recordar dónde y cuándo lo programaste para ir a buscarlo, porque
lógicamente casi nunca lo encontrarías. Visual Basic 2005 Express te ayuda a guardar y clasificar estos fragmentos de código pre-programados mediante los Code Snippet. Pero lo más importante, como verás en sucesivos capítulos de este mismo curso, es que VB 2005 Express trae incluida en su Ayuda las 500 tareas de programación más comunes para que puedes utilizar este código en tus propios programas. Además podrás almacenar tu propio código. ■
en la que tendrás que selecciona la carpeta de tu disco duro donde deseas guardar tu proyecto -o crear una específica para este fin-. Pulsa en el botón Aceptar para guardar tu programa y finalizar tu proyecto. ■
Resumiendo... 1 Archivo 3 Nuevo proyecto 3 Seleccionar Aplicación para Windows 3
5 Ventana Propiedades 3 Cambiar Name de TextBox 3 Cambiar Name de
Escribir nombre 3 Aceptar
2 Ventana Propiedades 3 Name 3 Escribir: FormInicio 3 Text 3 Escribir: Mi calculadora
3 Depurar 3 Iniciar depuración 3 Comprobar el funcionamiento de la aplicación
4 Cuadro de herramientas 3 Controles comunes 3 Arrastrar control Button 3 Arrastrar dos controles TextBox 3 Arrastrar control Label 3 Colocarlos en la ventana
68 146_60_68_Curso.indd 68
6 7 8 9
Label 3 Cambiar Text de Label 3 Cambiar Name de Botón 3 Cambiar Text de Botón Ventana de diseño 3 Click dos veces sobre botón Sumar Escribir código Depurar 3 Iniciar depuración Archivo 3 Guardar todo 3 Elegir carpeta para almacenar el proyecto 3 Aceptar
www.pctoday.es 18/5/06 17:45:02
Curso
Starter Kit y plantillas Cuando comienzas a utilizar una herramienta de desarrollo siempre tienes la esperanza de tener que trabajar lo menos posible, de manera que con pocos clicks o arrastrando y soltando algunos controles puedas obtener la aplicación que necesitas. Con Visual Basic 2005 Express puedes convertir este sueño en realidad.
Guía del curso 1. Aprende a programar con Visual Basic 2005 Introducción. Ayuda. Tu primer programa
PC Today no 146
2. Starter Kit y plantillas Creación y personalización de un proyecto
PC Today no 147
3. Controles, tipos y variables Programación orientada a objeto.
PC Today no 148
4. El lenguaje de programación Sentencias e instrucciones. Condiciones y bucles PC Today no 149
5. Diseño de aplicaciones Depuración del código
PC Today no 150
6. Acceder a bases de datos SQL Server 2005 Express
PC Today no 151
7. Asegurar e imprimir Control de acceso, usuarios y perfiles
PC Today no 152
8. Pruebas y control de errores Manejando los errores. El plan de pruebas
PC Today no 153
Instalación y despliegue Creación y ejecución de un instalador
62 147_62_67_Curso.indd 1
PC Today no 154
U
no de los elementos más novedosos del entorno de trabajo de Visual Basic 2005 Express – y que, por la facilidad de uso que ofrece, pueden llegar a convertirse en un auténtico estándar en el mundo del desarrollo- son los Starter Kits. Se trata de lo que, en el lenguaje de programación se denomina plantillas de proyectos. Es decir, componen un proyecto completo con todos sus elementos (formularios, controles, código, etc.) que tú puedes utilizar para realizar tu propia aplicación. La utilidad que te aportan estas plantillas es que te permiten conseguir una aplicación que se adapte completamente a tus necesidades a partir de otra más genérica. Es como si te dieran
el examen ya resuelto y tú solo tuvieras que modificar las frases que realmente te sabes o que no están del todo correctas en las soluciones propuestas. Los Starter Kit te permiten, en definitiva, modificar aplicaciones ya realizadas, accediendo a su código fuente. Esta técnica no es nueva. Desde siempre se han creado nuevos programas a partir de código ya realizado por otras personas más expertas. La novedad que aporta Visual Basic 2005 Express es la facilidad de uso de esta funcionalidad. Además, en este caso, la aplicación ofrece la posibilidad de crear estas plantillas, no sólo para tu uso personal, sino también para distribuirlas a gente que trabaje contigo. De hecho, en este capítulo aprenderás a lo-
calizar todo tipo de Starter Kits utilizando como fuente los foros de desarrolladores. Para comprender mejor el uso de estas plantillas vas a emplear dos de las que se instalan automáticamente en tu equipo con la instalación típica de Visual Basic 2005 Express. La primera te permitirá crear tu propia aplicación de clasificación de DVDs. Además de darte la oportunidad de introducir, ordenar y localizar las películas de tu videoteca, podrás ampliar los datos que posees sobre ellas accediendo a la base de datos de la web de Amazon. Mediante el otro ejemplo, podrás crear tu propio salvapantallas utilizando imágenes propias o eligiendo entre las que te ofrece la base de imágenes del programa.
www.pctoday.es 1/6/06 14:37:17
Visual Basic 2005 Express Edition. Parte 2ª
Creación de un proyecto a partir de un Starter Kit El Starter Kit "Mi Colección de películas" aparece con la instalación estándar de Visual Basic 2005 Express. Este Starter Kit te permitirá crear un proyecto con un formulario principal que a su vez contiene todos los controles necesarios para mantener de manera simple tu colección de DVDs. Además, podrás realizar llamadas a través de Web al sitio de Amazon para recuperar información sobre las películas. Esta información la mantendrás almacenada en tu aplicación.
1
Desde el menú de Inicio, ejecuta Visual Basic 2005 Express. En la barra de menús, selecciona Archivo y Nuevo proyecto. Los Starter Kit aparecen junto al resto de aplicaciones
que puedes realizar (Aplicación Windows, Biblioteca de clases, Aplicación de consola). Selecciona el Starter Kit de "Mi colección de películas" e introduce un nombre para el proyecto que vas a crear. Escribe, por ejemplo "MisDvds". Este es el nombre con el que el proyecto se almacenará en tu disco duro, pero no tiene que ser el nombre que le des a tu futura aplicación. Una vez has establecido el nombre, pulsa Aceptar para crear el proyecto. Verás como se despliegan en el Explorador de soluciones varias carpetas y ficheros.
3
En el momento en que creas el proyecto puedes observar que en el Explorador de soluciones han aparecido todos los ficheros que componen el proyecto. Existe una carpeta llamada Documentación desde la que podrás editar la documentación de ayuda que se ha desplegado con tu Starter Kit. De esta manera puedes
mo tu fichero de ayuda ha cambiado y muestra el texto que acabas de modificar. Para guardar el proyecto en su totalidad debes pulsar sobre el botón Guar-
Consejo Recuerda que debes tener instalado SQL Server 2005 Express. Esta aplicación realiza una conexión a base de datos por lo que si seguiste todos los pasos de la instalación en el capítulo anterior no tendrás problemas.
dar todo de la barra de herramientas. En la ventana que aparecerá, selecciona la carpeta donde quieres almacenar los archivos y pulsa en Guardar.
5
Ahora tienes que ejecutar tu aplicación. Para ello, dentro de la barra de menús, haz click en Depurar y después en la opción Iniciar depuración. También puedes ejecutar
personalizar la documentación del proyecto con tus propios comentarios y las modificaciones que hayas realizado.
4
Haz click dos veces sobre la página .htm de Ayuda. Modifica cualquier texto, por ejemplo
Starter Kit: Mi colección de películas
y pon en su lugar Proyecto: La colección de películas de Quique
. Pulsa el botón Guardar de la barra de herramientas. Ahora, vuelve a la ficha de documentación, pulsa con el botón derecho sobre ella y elige Actualizar. Podrás ver có-
esta opción directamente desde la barra de herramientas mediante el botón Ejecutar o simplemente pulsar F5, que es la opción más habitual. Automáticamente se desplegará el formulario prin-
todavía no está funcional. Para utilizar el buscador introduce el principio del título a buscar en la casilla correspondiente y pulsa Filtrar. En el listado aparecerá la película que estás buscando y que ya está introducida. Si lo que quieres es un listado completo de todas las películas que has introducido, pulsa el botón Ver todos los DVD. De manera
sencilla también puedes agregar o eliminar películas. Además puedes utilizar algunas funcionalidades extendidas como importar una imagen. Para ello tienes que pulsar el botón Importar imagen. Si lo que quieres es establecer tu propia clasificación con respecto a una película, desplaza el ratón por las "estrellas" de calificación y verás como se iluminan, marcando así tu selección.
Resumiendo... 1 Inicio 3 Visual Basic 2005 3 Archivo 3 Nuevo Proyecto 3 Starter Kit 2 3 4 5 6
Nº 147 147_62_67_Curso.indd 2
6
Ahora puedes probar todas las funcionalidades implementadas. De momento solo podrás utilizar las funcionalidades de la zona Ver DVD ya que el módulo Búsqueda en línea
▲
2
Una vez creado el proyecto, aparecerá en el área de trabajo una guía de uso del Starter Kit que acabas de utilizar -que en este caso sería el Starter Kit "Mi colección de películas"-. En esta documentación dispondrás de información de cómo utilizar la aplicación, información técnica sobre los ficheros que componen
la totalidad del proyecto, instrucciones para la personalización, instrucciones de cómo modificar imágenes y, en definitiva, información exhaustiva de todo lo que puedes necesitar realizar. Es conveniente que no cierres esta ficha de ayuda durante todos los pasos y actividades que vas a realizar en este capítulo. Recuerda que las fichas se utilizan a modo de pestañas. Así, según vayas desplegando archivos aparecerán nuevas fichas pero sin cerrar las existentes, a menos que tú lo indiques.
cipal de la aplicación, de manera que ésta ya estará plenamente funcional. Para comprobar su correcto funcionamiento puedes ir introduciendo los datos correspondientes a tu primera película. Introduce los campos requeridos: Título, Director, Año, etc. Según pulses la tecla Tab para pasar de un campo a otro, se estará produciendo la grabación de los datos. Cuando hayas acabado con tu primera película, pulsa sobre el botón Agregar título para añadir una nueva película tu lista.
Mi colección de películas 3 Nombre del proyecto 3 Aceptar Revisar la documentación del proyecto Explorador de soluciones 3 Documentación Click dos veces en Getting Starter Tutorial 3 Modificar el fichero 3 Archivo 3 Guardar Depurar 3 Iniciar depuración 3 Insertar campo 3 Pulsar Tab 3 Insertar siguiente campo Buscar película 3 Importar imagen 3 Añadir clasificación a la película
63 1/6/06 14:37:20
Curso
Habilita la búsqueda en línea Ahora vas a utilizar una funcionalidad de búsqueda en línea, a través de Internet, de la película que quieras añadir a tu colección. Para ello vas a emplear el servicio Web que ofrece Amazon. Los servicios Web XML permiten a diferentes aplicaciones comunicarse entre ellas sin necesidad de una interfaz de usuario ni intervención humana. Estos programas pueden haber sido creados por cualquier persona o empresa. Esto permite, por ejemplo, a una aplicación realizada por ti, utilizar funcionalidades de otras, sin que tu tengas que programar nada ni preocuparte por almacenar esos datos. En este caso, al buscar una película, el servicio de Amazon te devuelve todos los valores que necesitas para catalogarla, incluso las fotografías. Aunque podrías modificar tu proyecto actual para añadir estas funcionalidades y conectarte al servicio Web de Amazon, de momento lo que harás será utilizar otro Starter Kit que ya tenga implementadas esas funcionalidades.
1
A través de tu navegador web favorito accede a la página msdn.
microsoft.com/vbasic/downloads/ starterkits/default.aspx para descargarte una nueva versión del Starter Kit "Mi
otro elemento. Selecciona el Starter Kit "Amazon-Enabled Movie Collection Starter Kit". Será necesario que aceptes unas cláusulas legales de uso de esta plantilla. A continuación te interrogará sobre qué deseas hacer con el fichero de instalación del Starter Kit. Descárgalo a tu PC para ejecutarlo una vez terminada la descarga.
2
Una vez descargado el fichero de instalación, ahora tienes que ejecutarlo. Desde el lugar donde hayas realizado la descarga, ejecuta el fichero "AmazonMovieCollection_1_ 3_vb_rtm.vsi". Una vez más tendrás
que aceptar los términos legales de uso. Tras esto, visualizarás el Starter Kit que deseas instalar tras lo cual debes pulsa sobre el botón Siguiente. Aparecerá una nueva ventana de confirmación en la cual debes pulsar sobre Finalizar. Tras esto, se mostrará un mensaje en pantalla que te indicará que la instalación del Starter Kit se ha realizado correctamente. Pulsa el botón Cerrar para que desaparezca el asistente para la instalación de Starter Kit.
proyecto, por ejemplo MisDvdsAmazon y pulsa en Guardar. Como en el caso anterior, aparecerá la ficha de documentación del proyecto que has creado y, desplegados en el Explorador de soluciones, todos los ficheros necesarios del proyecto.
4
Llegados a este punto, tienes que ejecutar tu nueva aplicación. Para hacerlo, elige el menú Depurar y, dentro de éste, la opción Iniciar depuración. La aplicación es muy similar a la anterior pero apreciarás que
en esta ocasión las funcionalidades de búsqueda en línea se encuentran habilitadas. Pulsa sobre el botón Search online (Búsqueda en línea). Aparecerá la ventana de búsqueda con todas las funcionalidades habilitadas.
5
Introduce el título de la película que deseas buscar y pulsa en el botón Buscar. Asegúrate de tener habilitada tu conexión a Internet dado que esta funcionalidad se conecta al servicio Web de Amazon para realizar la búsqueda. Tras unos segundos, se mostrará un listado en el que aparecen todas las coincidencias con el texto que has introducido. Si pulsas en cada uno de los elementos del listado podrás ver los detalles de cada una de ellas, incluida la imagen de la película.
6
Para agregar todos los datos de la película que acabas de encontrar a tu propia colección, pulsa en el botón Añadir a colección. Si quieres comprobar que los datos se han añadido correctamente, haz click
Consejo Al estar trabajando en un entorno de desarrollo, cada vez que arranques la depuración borrarás los datos introducidos en la ejecución anterior. Por ello, si quieres que estos datos persistan debes ejecutar la versión distribuible de tu programa, tal y como verás en el último capítulo de este curso.
en Mis Dvds. Esta acción te llevará de nuevo a la ventana principal en la que podrás ver cómo la película seccionada se ha añadido a tu listado. Como toda la información ya reside en tu aplicación puedes añadir tus propios comentarios y clasificación rellenando el campo Comentario y seleccionando el número de "estrellas" correspondiente según tu valoración de la película.
Resumiendo... colección de películas". Esta versión está en inglés pero, como verás más adelante, es fácil modificar tu proyecto para cambiar textos o cualquier
64 147_62_67_Curso.indd 3
3
1 Entrar en la web msdn.microsoft.com/vbasic/downloads/starterkits/default.aspx
Ahora vas a crear un nuevo proyecto utilizando el Starter Kit que acabas de descargar. Desde el menú de Inicio ejecuta Visual Basic 2005 Express. Para ello pulsa sobre el menú Archivo y Nuevo Proyecto. Tras esto, selecciona Starter Kit "Amazon-Enabled Movie Collection" desde la nueva carpeta Starter Kit que has creado tras la instalación. Introduce el nombre que quieras para este nuevo
3 Descargar Amazon-Enabled Movie Collection Starter Kit
2 Ejecutar fichero de instalación 3 Aceptar términos legales de uso 3 Siguiente 3 Finalizar
3 Inicio 3 Visual Basic 2005 Express 3 Archivo 3 Nuevo Proyecto 3 Starter Kit Amazon 3 Nombrar proyecto 3 Guardar
4 Depurar 3 Iniciar Depuración 3 Search online 5 Introducir título de película 3 Buscar 6 Seleccionar película 3 Añadir a colección 3 Añadir comentarios 3 Añadir calificación
www.pctoday.es 1/6/06 14:37:23
Visual Basic 2005 Express Edition. Parte 2ª
Personaliza tu aplicación
1
En el Explorador de soluciones selecciona el formulario "MainForm.vb" y, de entre los botones que se encuentran en la parte superior de este explorador, elige el denominado Ver diseñador. Elige la imagen que quieras sustituir por la tuya personalizada. Recuerda que esto
es un entorno de desarrollo y no un editor gráfico de manera que, cuando seleccionas la imagen lo que estás eligiendo es el control que contiene la imagen. La imagen será una propiedad de ese control, en concreto la propiedad BackgroundImage o imagen de fondo.
2
Para sustituir la imagen debes ir a la ventana de Propiedades que se encuentra debajo de tu Explorador de soluciones. Busca la propiedad BackgroundImage –para
que te sea más fácil encontrarla, recuerda que las propiedades, por defecto, están ordenadas por orden alfabético-. Pulsa sobre el botón Seleccionar recurso y después en Importar. Ahora elige la imagen que desees incluir de entre las que tienes en tu PC y pulsa
color Maroon. Comprobarás cómo el texto cambia al color que has elegido.
Aceptar. Podrás ver que la imagen aparece en pantalla como fondo del control que has seleccionado.
3
El control con el que estás trabajando es de tipo Button (Botón), algo que puedes comprobar en la ventana de Propiedades que se encuentra en el desplegable de Controles del formulario. Puedes leer ViewDetailsButton (Nombre del control), donde la última palabra es el tipo, en este caso Button (botón). Para redimensionar este control, coloca el ratón en una de sus esquinas. Mueve el ratón hasta la posición que desees y conseguirás que el control cambie de tamaño. También puedes cambiar el color del texto para que resulte más visible. Para ello, manteniendo el control
5
Es el momento de que modifiques la información que se muestra en pantalla. Vas a añadir una nueva columna a tu listado de películas. Para ello, desde el Explorador de soluciones pulsa sobre "ListDetails.vb" y luego haz click en el botón Ver diseñador. Al cabo de unos segundos aparecerá la parte de la ventana donde se muestran los datos de tus películas.
4
Vuelve al Formulario y busca ahora el control de etiqueta que incluye el título Mi colección de películas. Este control es de tipo Label (Etiqueta), tal como puedes ver en el desplegable de controles de la ventana de Formulario, dado que la última palabra es Label (Etiqueta). Este control se utiliza para mostrar textos con estilo concreto de título dentro de un formulario. De nuevo en la ventana de Propiedades seleccio-
Archivos del Explorador de soluciones Para que puedas seguir con mayor facilidad las explicaciones que te ofrecemos en este capítulo, es importante que
conozcas los archivos y carpetas que componen el proyecto "Mi colección de películas". Todos ellos están accesibles
desde la ventana del Explorador de soluciones y desde ella podrás modificarlos, si así lo deseas. ■
MainForm.vb
Formulario principal que sirve como contenedor de controles.
ListDetails.vb
Control de usuario personalizado que sirve como visor y editor de la colección de películas.
SearchOnline.vb
Control de usuario personalizado que sirve como herramienta de búsqueda para los servicios Web en línea. Base de datos de la colección de películas. Al añadir una base de datos a tu proyecto, es importante que sepas dónde está ubicada. Para obtener más información, busca el tema de Ayuda "Cómo: Administrar archivos de datos locales en los proyectos". Objetos de capa de datos y conjunto de datos. Ayudan a realizar operaciones de base de datos, como cargar, guardar y validar datos. Carpeta que contiene imágenes, por ejemplo mapas de bits.
DVDCollectionDatabase. mdf DVDCollectionDataSet.xsd Carpeta Recursos Carpeta Documentación
Carpeta Controles Carpeta de proyecto
Carpeta que contiene la documentación y la Ayuda del Starter Kit. Haz click con el botón secundario en Getting Started Tutorial.htm y, a continuación, en Ver para visualizar el contenido de la documentación. Controles personalizados que utiliza la colección. Carpeta que contiene la configuración de la aplicación y el proyecto de Visual Basic. Haz click dos veces para abrir el Diseñador de proyectos.
Nº 147 147_62_67_Curso.indd 4
na la propiedad Text (Texto). Ahora, pulsa sobre el valor de la propiedad y sustituye el texto actual por el título que quieras aparezca en tu pantalla, por ejemplo Colección de películas de Quique. También cambia el color del texto en Forecolor, seleccionando el color Maroon.
▲
Una vez ya tienes tu proyecto, puedes realizar en él todas las modificaciones que consideres oportunas para crear la aplicación compleja o simple que necesites. La ventaja es que se adaptará completamente a tus necesidades en lugar de tener que adaptarte tu a un software comercial. Además, te aseguras de que el software que instalas es seguro, sin virus ni spyware. Como viste en el capítulo anterior la aplicación que vas a crear está compuesta de formularios, que serán las ventanas de tu aplicación definitiva, y de controles, que serán los botones y elementos que aparecerán dentro de la ventana de tu aplicación y que te permitirá realizar las acciones necesarias (por ejemplo, pulsar botones, desplegar opciones o visualizar imágenes). Ahora personalizarás algunos de estos controles para darle un aspecto diferente a los proyectos que acabas de crear.
ViewDetailsButton seleccionado, haz click en la propiedad Forecolor de la ventana de Propiedades. Despliega las opciones de colores y selecciona, por ejemplo, el
65 1/6/06 14:37:25
Curso
6
Selecciona el control donde aparece el listado de tus películas. Este control se llama DataGridView1. Pulsa con el botón derecho del ratón sobre él y elige la opción Agregar una columna. Selecciona la columna MyRating, que es la que almacena la valoración que has realizado de la película. Dentro de ella, modifica únicamente el campo Texto de la cabecera introduciendo por ejemplo Mi Calificación. Selecciona las opciones Visible y Sólo
7
lectura. Aumentando el tamaño del control podrás ver que ha aparecido una nueva columna.
Una vez has realizado todas las modificaciones, tienes que guardar todos los ficheros en los que has introducido cambios. La manera más sencilla es pulsando el botón Guardar todo que encontrarás en la barra de herramientas. Para ejecutar la aplicación y visualizar los cambios que has realizado, pulsa en el menú Depurar y en la opción Iniciar depuración. Aparecerá una ventana con el formulario que acabas de modificar. Comprueba que todos los cambios que has realizado se ven reflejados en tu aplicación. También puedes comprobar
cómo el resto de la aplicación que has creado funciona de la misma manera en que lo hacía ya anteriormente.
Resumiendo... Resumiendo... 1 Seleccionar MainForm.vb 3 Ver diseñado 3 Seleccionar el botón a modificar 2 Ventana de Propiedades 3 Propiedad BackgroundImage 3 Seleccionar recurso 3 Importar 3 Elegir imagen nueva 3 Aceptar 3 Arrastrar el ratón para redimensionar el botón 3 Propiedad ForeColor 3 Color: Maroon 4 Seleccionar etiqueta del título 3 Ventana de Propiedades 3 Propiedad
Text 3 Escribir Colección de películas de Quique 3 Propiedad ForeColor 3 Color: Maroon 5 Seleccionar control ListDetails.vb 3 Ver diseñador 6 Seleccionar control DataGridView1 3 Pulsar botón derecho del ratón 3 Agregar una columna 3 MyRating 3 Texto de la cabecera 3 Escribir Mi Calificación 3 Visible 3 Solo lectura 3 Aceptar 7 Guardar 3 Depurar 3 Iniciar Depuración 3 Comprobar los cambios
Crea tu propio salvapantallas Ya que dominas el uso de Starter Kit puedes aplicar todas sus funcionalidades, para crear de manera sencilla una aplicación de salvapantallas personalizada según tus gustos.
1
Desde el menú de Inicio ejecuta Visual Basic 2005 Express. Una vez abierta la interfaz del programa, desplaza el ratón hasta la
barra de menús, donde deberás elegir Archivo y Nuevo proyecto. Selecciona la opción Starter Kit del Protector de pantalla, tras lo cual debes introducir un nombre para el proyecto que vas a crear. Escribe, por ejemplo, MiSalvapantallas. Una vez hayas elegido el nombre, pulsa sobre el botón Aceptar para crear el proyecto.
2
Una vez creado el proyecto aparecerá en el área de trabajo la documentación asociada el Starter Kit. Desde allí dispones de una guía de uso. Además, encontrarás información de cómo instalar y utilizar el salvapan-
66 147_62_67_Curso.indd 5
tallas que acabas de crear. Puedes acceder a este fichero de Ayuda si pulsas con el botón derecho del ratón sobre el Explorador de soluciones, eliges el fichero de Ayuda "Getting Started Tutorial. htm" y seleccionas la opción Ver dentro del explorador. Ten en cuenta, además, que al tratarse de un salvapantallas, el mínimo moviendo del ratón durante la ejecución hará que el salvapantallas se cierre y la aplicación finalice.
opción Eliminar. Aparecerá un mensaje de confirmación que debes Aceptar. Una vez eliminadas las imágenes que se incluyen por defecto puedes añadir las tuyas propias.
4
Pulsa con el botón derecho del ratón sobre la carpeta Resources (Recursos). Después, elige Añadir, Elemento existente y Tipo de fichero. Se abrirá un menú des-
3
Para añadir tus propias imágenes al salvapantallas, tu primera labor será eliminar las que ya vienen incluidas en el proyecto. Podrás hacerlo desde la carpeta Resources (Recursos). Ábrela y selecciona todos los archivos que incluye. Tras esto, pulsa con botón derecho del ratón y elige la
plegable donde debes elegir la opción Imágenes. Ahora, busca la carpeta donde hayas almacenado las imágenes que quieres que aparezcan en tu salvapantallas. Puedes seleccionar todas las imágenes que consideres oportunas, incluso aunque estén almacenadas en varias carpetas. Finalmente todas tus imágenes estarán incluidas en la colección de imágenes de la carpeta Resources (Recursos). Desde la ventana de Propiedades cambia la propiedad del Nombre de archivo y escribe "SSaverBackground" y "SSaverBackground2". Estos nombres están definidos en las colecciones de la aplicación que, a medida que se desarrolle este curso, aprenderás a modificar.
5
Una vez modificadas las imágenes, tienes, como siempre, que ejecutar la aplicación. Para ello pulsa el botón Iniciar depuración de la barra de menús. Debes tener cuidado ahora de no mover el ratón ni tocar el teclado ya que, aunque estamos en un entorno de desarrollo, los "eventos" –es decir, cualquier acción realizada o recogida por tu ordenador- es también tratada en este entorno. Por lo tanto, al tratarse de una aplicación de salvapantallas, estos eventos provocarían una salida de tu aplicación por lo que no podrías visualizar nada. También debes tener en cuenta que esta aplicación
www.pctoday.es 1/6/06 14:37:28
Visual Basic 2005 Express Edition. Parte 2ª Resumiendo... 1 Inicio 3 Visual Basic 2005 Express 3 Archivo 3 Nuevo proyec-
está mostrando textos de una fuente externa por lo que si no tienes conexión a Internet no se mostrará ningún texto. En capítulos posteriores de este curso podrás tú mismo cambiar estos textos o crear una fuente común para que tú y tus amigos podáis compartir los textos que aparezcan en vuestros salvapantallas.
1
Puedes acceder al buscador de la Ayuda online desde el menú de creación de nuevos proyectos. Pulsa en el menú Archivo y haz click en Nuevo. Una vez allí, puedes ver un grupo de elementos denominado Mis
Plantillas. En él se incluye una opción denominada Buscar plantillas. Elige esta opción y pulsa en Aceptar.
2
Como resultado, aparecerá la ventana de búsqueda de Visual Basic 2005 Express. Esta ventana se puede utilizar desde cualquier punto de la aplicación y para la búsqueda de diferentes conceptos o ayuda sobre problemas concretos de programación o de uso de la propia herramienta. Al acceder
3 4
5
dad más importante y está soportada por el propio Microsoft. Verás que aparecen resultados en inglés y en español en dos grupos diferentes. Puedes probar a intro-
Búsqueda de plantillas Una vez que ya dominas el uso de plantillas es importante también que aprendas a buscar nuevas plantillas de proyectos que se ajusten a tus necesidades o que te vayan resultando interesantes según vayan apareciendo. Visual Basic 2005 Express Edition te ofrece la posibilidad de buscar nuevas plantillas y Starter Kit a través de la búsqueda de su Ayuda online. Las plantillas no son solamente de proyectos completos, como las que has utilizado en los pasos anteriores, sino que también pueden ser de formularios y prácticamente de cualquier objeto de los que ya irás descubriendo en los siguientes capítulos de este curso.
2
accedido a ella representada como una escala de estrellas -a mejor valoración, mayor número de estrellas-. Finalmente también puedes acceder al sitio web principal de esa información. al buscador desde la opción que has elegido ya aparecen marcadas varias opciones, como el idioma en el que aparece Visual Basic, la tecnología .NET y Visual Studio 2005, y, lo que es más importante, el
Consejo Recuerda que la comunidad de desarrolladores es internacional y que hay gran cantidad de contenido en inglés por lo que no tengas miedo de buscar contenido en ese idioma. Puedes buscar en un diccionario la traducción del tipo de aplicación que busques y utilizarlo.
5
También puedes consultar páginas oficiales de publicación de Starter Kit o plantillas. En ellas irán apareciendo las plantillas de proyectos que se vayan creando y que te pueden interesar. La dirección de la página de Starter Kit de Microsoft es http://msdn.microsoft.com/ vbasic/downloads/starterkits/default.aspx. También tienes una web en español. ■
4
Tipo de contenido aparece seleccionado como Plantillas y Starter Kit. Es importante que no modifiques estas opciones dado que son necesarias para realizar la búsqueda que estás intentado. Ahora teclea el tipo de Starter Kit que desees buscar y pulsa el botón Buscar.
3
ducir una palabra en español, por ejemplo Imagen -si buscas un Starter Kit de tratamiento o catalogación de imágenesy realiza la búsqueda, los resultados se mostrarán en el área MSDN (Español). Posteriormente, prueba la misma palabra en inglés, en el ejemplo, Image. Aparecerán nuevos resultados, esta vez en el área de MSDN Online (Inglés).
Puedes visualizar los diferentes resultados de tu búsqueda. En primer lugar aparecen los resultados procedentes de la red de desarrolladores de Microsoft llamada MSDN (Microsoft Developer Network). Esta es la comuni-
El propio título del resultado de la búsqueda es en realidad un enlace a la página que contiene la información completa o fichero a descargar. También puedes observar un texto resumen explicativo del contenido del resultado que acabas de encontrar. Además, aparece la valoración recibida por esa información por otros usuarios que han
Resumiendo... 1 Inicio 3 Visual Basic 2005 Express 3 Archivo-3 Nuevo-3 Mis Plantillas 3 Buscar plantillas 3 Aceptar
2 Comprobar parámetros de búsqueda 3 Idioma: Visual Basic 3Tecnología: .NET y 3 Visual Studio 2005 3 Tipo de contenido: Plantillas y Starter Kit 3 MSDN (Español) 3 Buscar: Imagen 3 Resultados 3 MSDN (Inglés) 3 Buscar: Image 3 Resultados 4 Click en título del resultado 3 Click en sitio web principal de la información 5 Introducir en navegador web la dirección http://msdn.microsoft.com/
vbasic/downloads/starterkits/default.aspx
Nº 147 147_62_67_Curso.indd 6
to 3 Starter kit del Protector de pantalla 3 Escribir nombre Mi Salvapantallas 3 Aceptar Explorador de soluciones 3 Pulsar con botón derecho sobre Getting started tutorial.htm 3 Ver en el explorador Carpeta Resources 3 Seleccionar todos los archivos 3 Pulsar con el botón derecho 3 Eliminar 3 Aceptar Pulsar con botón derecho en carpeta Resources 3 Añadir 3 Elemento existente 3 Tipo Fichero 3 Imágenes 3 Seleccionar imagen 3 Ventana de Propiedades 3 Nombre archivo 3 Modificar Depurar 3 Iniciar depuración 3 Comprobar funcionamiento de la aplicación
67 1/6/06 14:37:30
Curso
Controles y variables
Una de las principales novedades de Visual Basic 2005 es el empleo de la programación orientada a objeto. Así, la programación deja de ser tan abstracta para trabajar con objetos que se equiparan a los que existen en el mundo real. En este contexto vas a a aprender a emplear controles, tipos y variables.
Guía del curso 1. Aprende a programar con Visual Basic 2005 Introducción. Ayuda. Tu primer programa
PC Today no 146
2. Starter Kit y plantillas Creación y personalización de un proyecto
PC Today no 147
3. Controles, tipos y variables Programación orientada a objeto.
PC Today no 148
4. El lenguaje de programación Sentencias e instrucciones. Condiciones y bucles PC Today no 149
5. Diseño de aplicaciones Depuración del código
PC Today no 150
6. Acceder a bases de datos SQL Server 2005 Express
PC Today no 151
7. Asegurar e imprimir Control de acceso, usuarios y perfiles
PC Today no 152
8. Pruebas y control de errores Manejando los errores. El plan de pruebas
PC Today no 153
Instalación y despliegue Creación y ejecución de un instalador
60 148_60_69_Curso.indd 1
PC Today no 154
V
isual Basic 2005 Express Edition aporta una novedad fundamental respecto a todas las versiones anteriores de Visual Basic: la programación orientada a objeto (POO). Se trata de una programación que acerca los programas al mundo real. Para ello, se asocian objetos de este mundo real (por ejemplo, un libro, un estudiante, una factura, etc.) a objetos de tu programa, que incluso se llamarán de la misma manera (libro, estudiante, factura, etc.) La programación orientada a objeto ha supuesto una auténtica revolución en este área. Así, aunque sus orígenes datan de lejos, no ha sido hasta la actualidad cuando se ha extendido su uso de forma
global. Este éxito se ha debido principalmente a que las dos plataformas de programación más utilizadas actualmente ( J2EE- Java 2 Enterprise Edition y Microsoft .NET) emplean este tipo de programación. La programación orientada a objeto tiene una serie de características que deben cumplir los objetos y la manera de relacionarse entre ellos. Sin querer entrar en aspectos demasiado teóricos, es interesante que conozcas algunas de estas características, ya que te pueden ser útiles a la hora de utilizar este lenguaje y darán calidad a tus programas. El Encapsulamiento te permite distinguir entre los métodos y atributos públicos, que son los que permitirán a tu objeto relacionarse o comunicar-
se con los demás, y los elementos privados, que son aquellos accesibles únicamente desde dentro de tu objeto con el fin de preservar su integridad. Otra característica importante es la Herencia que permite un aprovechamiento óptimo del código. Como ejemplo, tú puedes tener una clase "perro" de la que "herede" la clase "caniche". La clase caniche tiene todas las características de la clase perro (orejas, ojos, hocico, etc.) pero además puede tener otras propias (pelo rizado, inteligencia, determinados colores, etc.). La posibilidad de utilizar tu objeto canino recién creado a veces como perro en general (para vacunarlo, alimentarlo, etc.) y otras veces como caniche en particular, se denomina Polimorfismo.
www.pctoday.es 15/6/06 08:55:06
Visual Basic 2005 Express Edition. Parte 3ª
Plantea tu programa Con todos estos conceptos y elementos, ahora tienes que componer tu primer programa orientado a objeto. En concreto será un programa para crear y gestionar una biblioteca en la que podrás registrar todos los libros que tienes, con sus propiedades o atributos característicos como título, autor, editorial, número de páginas o fecha de publicación. Del mismo modo, también podrás añadir los libros que tienes y los que vayas comprando, así como quitar los que pierdas o prestes. Puedes también añadir páginas con texto a los libros y visualizarlas.
1
Con estos requisitos iniciales tienes que empezar tu aplicación, pero antes debes tener claro qué es lo que vas a desarrollar. Escribe un texto con todo lo que quieras que haga tu programa, de un modo similar a como aparece en la introducción de este apartado. Estos serán tus "requerimientos". A partir de ellos, echa un
vistazo a los objetos que tenemos (libro, pagina, etc.), encuentra las "propiedades" de los mismos -que son las características de los objetos- y, por último, los "métodos" -que serán el comportamiento de dichos objetos-.
2
Puedes elegir entre numerosas maneras de diseñar las clases en una aplicación. Para este ejemplo, vas a elegir una que comienza con un análisis del texto de requisitos. Los sustantivos son candidatos a ser clases de tu programa, mientras los verbos son
ginas" y "texto" tampoco tienen ningún comportamiento y puedes descartarlos como clase. Nos queda el sustantivo "libros" que, efectivamente, sí puedes identificar como una clase. Pero todavía es posible que no hayas identificado todas las clases ya que puede que alguna no esté escrita en el texto pero esté implícita en él. Así, cuando añades o eliminas libros lo estás haciendo de algún sitio, aunque no aparezca mencionado de forma expresa en el texto. Este sitio es tu "biblioteca" que representa una nueva clase. Has encontrado entonces la clase Libro y la clase Biblioteca, que contiene varios libros
mismo modo puedes identificar "quitar" o, mejor expresado, Retirar como método de la misma clase. Para la clase Libro puedes identificar el método Visualizar para ver los textos que contiene. Para visualizar una página de un libro debes indicar cuál por lo que, aunque no esté en los requisitos que has escrito, tienes un nuevo método que permanecía oculto Obtener pagina. Lo s m i s m o s n o m b r e s que has descartado en los apartados anteriores constituyen propiedades. Además, pueden existir algunas otras. "Título", "número de páginas" o "fecha de publicación". Estas propiedades pertenecen a la clase Libro. Del mismo modo ocurre con la propiedad "texto" y otra propiedad oculta, "longitud de
7
Ahora es el momento de comprobar que el diseño que has realizado cumple todos los requisitos que te planteaste. De manera que tu aplicación cumpla toda la funcionalidad que necesitas. Podrás: • Registrar libros mediante el método Registrar de la clase Biblioteca. • Asociar Titulo, Número de página y Fecha de publicación ya que son propiedades de la clase Libro. • Eliminar libros de tu Biblioteca mediante el método llamado Retirar. • Visualizar páginas de texto mediante el método Visualizar de la clase Libro. Así, todos los requisitos que debía cumplir tu programa quedan cubiertos con esta estructura de clases que acabas de diseñar.
Resumiendo... 1 Escribir un texto con todo lo que debe hacer el programa 2 Analizar el texto de los requisitos 3 Localizar nombres en el texto 3 Eliminar los nombres: titulo, número de páginas, fecha de publicación 3 Elegir la clase Libros 3 Añadir la clase: Biblioteca
4 Localizar verbos en el texto 3 Eliminar verbos auxiliares 3 Eliminar los verbos: comprar, prestar, añadir 3 Elegir los métodos: registrar, visualizar 3 Añadir el método: ObtenerPagina 5 Establecer propiedades de Libros: título, número de páginas, fecha de publicación 3 Añadir propiedad Longitud de texto por página 6 Establecer propiedades de Biblioteca 7 Comprobar el diseño del programa
Nº 148 148_60_69_Curso.indd 2
o cualquier otra también puedes hacerlo aunque no sea un requisito planteado en este ejemplo. Del mismo modo, con el tiempo, podrás ir añadiendo clases según aumenten las funcionalidades que vayas necesitando.
▲
3
Lee lo requisitos de tu programa y encuentra los nombres. Ahora que ya tienes todos los candidatos a clases, debes ir eliminando los que no procedan. Puede eliminar los que sean irrelevantes, como, por ejemplo, la palabra "programa". "Título", "número de páginas" y "fecha de publicación" no tienen ningún comportamiento y tampoco serán una clase. Del mismo modo, para este caso concreto, "pá-
6
La clase Biblioteca no tiene propiedades. Si quieres modificar alguna de estas propiedades recuerda que debes introducir los métodos apropiados para ello. Pero para este programa que estás haciendo tampoco será necesario. Si quieres añadir nuevas propiedades como "autor" o "editorial"
4
Lee lo requisitos de tu programa y encuentra los verbos. Los verbos auxiliares no los tengas en cuenta (podrás, tienes, quieres, vayas, etc.). Considera cada verbo para saber si es un método. Verbos como "comprar" o "prestar" no forman parte del problema que estás abordando, por lo tanto no son métodos. "Añadir" y "registrar" representan la misma operación y son un método de la clase Biblioteca que llamaremos Registrar. Del
5
candidatos a métodos. Durante el análisis irás descartando nombres como clases y añadiendo clases que no estaban escritas en el texto. Una vez has determinado las clases, las propiedades y los métodos ya puedes escribir el diagrama de clases que usarás para la implementación.
texto por página", que será necesaria para tener la posibilidad de visualizar el texto de cada página que introduzcas en tu biblioteca.
61 15/6/06 08:55:08
Curso
Crea tus primeras clases Una vez ya tienes definido y estructurado tu proyecto vas a proceder a crear, mediante la introducción de código, las clases necesarias para poder desarrollar tu programa de biblioteca.
1
Desde el menú de Inicio de Windows, selecciona Todos los programas y Visual Basic 2005 Express. Una vez que tengas abierta la interfaz del programa, elige, en la barra de menús, Archivo y Nuevo proyecto. Aparecerá una ventana en la que tienes que hacer click sobre Aplicación para Windows. En la ca-
Glosario Objeto. Correspondencia entre los objetos reales del mundo que nos rodea con objetos internos de nuestro programa. Al igual que en el mundo real, estos objetos tienen una serie de atributos o propiedades que los definen (color, tamaño, número de páginas, etc.) y tienen también un comportamiento o funcionalidad (pintar, crecer, sumar, etc.) que se convertirán en los métodos de nuestro programa.
abrirá la ventana de creación de elementos en la que ya aparece seleccionado Clase como tipo de elemento. Ahora tienes que señalar el nombre de la clase que vas a crear –en este caso "Libro.vb"-. Después, pulsa Agregar. Como puedes observar en el Explorador de soluciones se ha añadido este fichero a tu proyecto. Inicialmente dicho fichero no contiene más que la definición con el nombre de la clase.
Clase. Las clases son plantillas de objetos, donde se definen todas las características de esos tipos de objeto y su comportamiento. En definitiva, cuando se inicializa una clase, la instancia que se crea en memoria de esa clase es un objeto. Propiedad o atributo. Definen al objeto y son parámetros que pueden consultarse desde fuera del objeto y también se pueden modificar por la ejecución de algún método.
silla que encontrarás en la parte inferior de la ventana, introduce "MiPrimerPOO" que es el nombre para este nuevo proyecto, por ejemplo . Pulsa en Guardar.
2
Desplegados en la ventana del Explorador de soluciones aparecerán los ficheros que se han creado. Estos serán inicialmente dos: un proyecto denominado "My Project" y un formulario llamado "Form1". El formulario lo utilizarás más adelante en este capítulo. Ahora, pulsa el botón Guardar todo para guardar el proyecto. Selecciona la carpeta destino y presiona el botón Guardar.
3
Es la hora de agregar todas las clases que has diseñado anteriormente. Para ello, pulsa con el botón derecho de tu ratón sobre el icono del proyecto en el Explorador de soluciones. Elige la opción Agregar y, dentro de ella, pulsa sobre Clase. Se
4
Ahora tienes que crear la otra clase que has diseñado: la clase Biblioteca. Para ello repite el proceso anterior. Pulsa con el botón derecho sobre el icono del proyecto en el Explorador de soluciones. Elige Agregar y Clase. Ahora tienes que escribir el nombre "Biblioteca.vb" para la nueva clase que vas a crear. Pulsa sobre Agregar. De la misma manera que en el apartado anterior, aparecerá la nueva clase en el Explorador de soluciones. Si hubieras decidido dar mayor complejidad a tu aplicación, deberías seguir añadiendo tantas clases como fueran necesarias, de la misma forma.
5
El siguiente paso es añadir las propiedades que has identificado para cada una de las clases. Vas a comenzar por la clase Libro. Tienes que distinguir entre las propiedades públicas, que pueden ser accesibles para su modificación desde
Consejo
148_60_69_Curso.indd 3
Método. Es lo que un objeto puede hacer. Desde el punto de vista del programa es un algoritmo o lo que es lo mismo una serie de instrucciones del programa asociado a un objeto cuya ejecución se produce tras la recepción de un mensaje y que a su vez realiza las acciones programadas. Un ejemplo sería PintarCoche en el que recibes en un mensaje indicándote que debes pintar el coche y el color, por ejemplo, rojo. El método debe llevar programado todos los pasos que hay que seguir para pintar ese coche de rojo. ■
fuera de la clase, como la Longitud de página, y las privadas, que son aquellas que por seguridad sólo deben transformarse desde la misma clase, como por ejemplo Título. Para introducir las propiedades, entra en la ventana de código haciendo click dos veces sobre el símbolo de la clase Libro en el Explorador de soluciones. Empieza por la propiedad Título, tecleando: Private m_titulo As String.
6
La palabra "private" indica que la propiedad es privada, "m_titulo" es el nombre que tú le das a la propiedad y "As String" indica el tipo de dato que es la propiedad, en este caso se trata de una cadena de texto ("string" es cadena en inglés). Continúa introduciendo el resto de propiedades privadas mediante las siguientes líneas de código: Private m_numero_paginas As String Private m_fecha_publicacion As Date
▲
Por convención, para nombrar las propiedades públicas se suele poner en mayúsculas la primera letra de de cada palabra de las que componen el nombre de la propiedad, por ejemplo LongitudPagina. Por el contrario las propiedades privadas se nombran con el prefijo m_ de miembro y el resto de letras en minúscula, por ejemplo m_titulo
62
Mensaje. Es una comunicación dirigida a un objeto que le pide a ese objeto cierta información, proporcionándole a su vez la los datos necesarios para obtener dicha información (por ejemplo, suma 2 y 5 esperando recibir 7). También le puede pedir la realización de una acción o una serie de acciones.
www.pctoday.es 15/6/06 08:55:11
Curso diante el signo "=". Ese valor es un texto vacío que está representado en la instrucción por una doble comilla sin nada dentro.
8
De la misma forma, tienes que añadir la propiedad pública LongitudPagina, que indicará el número de caracteres que se incluyen en cada página. Toma un valor, por ejemplo de 10, aunque puedes cambiarlo según necesidades. En este caso concreto, la propiedad a la que has denominado "m_fecha_publicacion" es de tipo fecha ("date", en inglés)
7
Sigue añadiendo las propiedades públicas de la clase Libro. Estas propiedades –que serán Texto, que hace referencia al texto de ese libro, y LongitudPagina, que representa la cantidad de texto por página- serán accesibles desde otros objetos. En la ventana de código, debes teclear: Public Texto As String = “”
La palabra "Public" indica que la propiedad es pública, "Texto" es el nombre que tú le das a la propiedad y "As String" indica el tipo de dato que es la propiedad (una cadena). Luego se da un valor inicial a la propiedad me-
Resumiendo... 1 Inicio 3 Todos los programas 3 Visual Basic 2005 Express 3 Archivo 3 Nuevo proyecto 3 Aplicación para Windows 3 Escribir nombre: MiPrimerPOO 3 Guardar
2 Comprobar ficheros en el Explorador de soluciones 3 Guardar todo 3 Seleccionar carpeta 3 3 4 5 6 7 8
Guardar Explorador de soluciones 3 Pulsar botón derecho en icono de proyecto 3 Agregar 3 Clase 3 Escribir nombre: Libro.vb 3 Agregar Explorador de soluciones 3 Pulsar botón derecho en icono de proyecto 3 Agregar 3 Clase 3 Escribir nombre: Bibliotec.vb 3 Agregar Explorador de soluciones 3 Click dos veces en Libro 3 Escribir código para propiedad Título Escribir código para propiedades Número de páginas y Fecha de publicación Escribir código para propiedad Texto Escribir código para propiedad Longitud de página
sirve para leer el valor de esa propiedad y "Set" para establecer ese valor mediante el parámetro que representa "Value". La palabra reservada "ByVal" representa que lo único que recibe ese método es un valor, no un objeto completo. Pero todos estos conceptos estarán más claros en los próximos capítulos, cuando entres a fondo en la programación Visual Basic.
Añade métodos a tus clases Una vez dispones de las clases apropiadas, y estas tienen sus propiedades correspondientes, bien sean públicas o privadas, ha llegado el momento de que añadas comportamiento a estos objetos. Recuerda que este comportamiento se refleja a través de métodos.
1
En primer lugar tienes que añadir los métodos necesarios para que los objetos de la clase Libro puedan asignar valores a las propiedades privadas de estos objetos de manera que no se puedan modificar nada más que desde dentro del mismo objeto. De esta manera, cuando crees diferentes instancias del objeto Libro para introducir tus
3
Has puesto varias cosas nuevas. La palabra clave "Property" indica la asignación de valores para una propiedad que tiene a su vez dos posibilidades: "Get"
Tipos: De VB Tradicional a VB.NET En la siguiente tabla, para aquellos que ya han trabajado alguna vez con Visual Basic, hemos querido recoger los principales "tipos" en VB.NET
libros en tu biblioteca, podrás introducirle el título, etc. Lo primero que debes hacer es trasladarte, dentro de la pestaña Libro, a la casilla de la parte superior izquierda. En ella, ahora pone (General). Abre el desplegable y selecciona Libro. Después, en la casilla de la derecha, y también dentro de su menú desplegable, elige New (Nuevo).
2
Verás que, como resultado de esta acción, se escribe un nuevo párrafo en la ventana de código. Sustituye las partes que no te sirvan y teclea dentro de la ventana:
64 148_60_69_Curso.indd 4
Ahora debes repetir la creación de métodos para asignación de propiedades al resto de propiedades privadas que has identificado en tu diseño de clases: Número de páginas y Fecha de publicación -así como si has decidido incluir nuevas propiedades en tus clases (autor, editorial, etc.)-. El código es muy similar y tiene el mismo significado para cada una de las
y su equivalente en el VB tradicional. Los tipos representan los valores que pueden tomar las propiedades o variables en Visual Basic. ■
Tipo de VB tradicional
Tipo Nuevo VB
Valores
Boolean
System.Boolean
Verdadero o Falso
Date
System.DateTime
01-Enero-0001 hasta 31-diciembre-9999
Double
System.Double
+/–1,797E308
Decimal
System.Decimal
28 digitos
Short
System.Int16
–32.768 to 32.767
Integer
System.Int32
+/–2,147E9
Long
System.Int64
+/–9,223E18
Single
System.Single
+/–3,402E38
String
System.String
Caracteres Unicode
www.pctoday.es 15/6/06 08:55:14
Visual Basic 2005 Express Edition. Parte 3ª propiedades. No te preocupes si te equivocas al teclear porque Visual Basic 2005 Express Edition te ayudará a identificar estos errores. Aparecerá el error subrayado y al poner el ratón encima se mostrará un mensaje aclaratorio de ese error con lo que el corregirlo te será muy fácil. El código quedará de la siguiente manera:
6
Ya has implementado todos los métodos de la clase Libro y ahora debes hacer lo mismo con los métodos de la clase Biblioteca: Registrar y Retirar. Al estar la clase Biblioteca formada por una colección de libros, es necesario disponer de acciones para el manejo de colecciones de objetos a fin de poder manejar los libros. Estos métodos no te los tienes que inventar porque ya están desarrollados. Para usarlos, simplemente tienes que heredar de unas clases existentes en el .NET Framework. Para ello, teclea: Imports System.Collections También debes insertar una propiedad que represente una colección y a la que pndrás el nombre de "m_coleccion". Para ello, inserta la siguiente línea: Private m_coleccion As New SortedList()
4
9
Puedes comprobar tus clases, con sus métodos y propiedades, de un simple vistazo utilizando el Examinador de objetos. Pulsa F2 o el botón de Examinador de Objetos en la barra de herramientas. Aparecerá en una ficha donde se representan todos los objetos que acabas de crear. Busca en hasta que encuentres las clases creadas en tu proyecto "MiPrimerPOO".
7
Finalmente, crea los métodos Registrar y Retirar. En el caso de Registrar debes pasar como parámetro el objeto Libro al añadir y agregar este a la colección de la Biblioteca:
Resumiendo... 1 Editor de código 3 Seleccionar Libro 3 Con la instrucción "Add" de tu colección de libros añades el libro que previamente has recibido como el parámetro "nuevoLibro". Comprobarás que, en todo momento, según vas tecleando vas recibiendo ayudas y el texto se va
2 3 4 5 6 7 8 9
Nº 148 148_60_69_Curso.indd 5
▲
5
8
Una vez creado el método Registrar, ahora tendrás que proceder a realizar los mismos pasos a fin de crear el método Retirar. Para ello, teclea en la pantalla correspondiente el siguiente fragmento de código.
Mediante la instrucción "Dim" estás creando una instancia de la clase Libro a la que has dado el nombre de "unLibro". Por su parte, a través de "CType", recoges un libro existente en la colección de tu Biblioteca. La instrucción "Remove" elimina ese libro de la colección y es devuelto mediante "Return".
Tienes que seguir introduciendo los métodos que has identificado. Aunque de momento no dominas el lenguaje y las acciones o comportamientos más complejos, es aconsejable que los dejes enunciados para completarlos según avance este curso y vayas dominando los diferentes recursos que te ofrece la programación Visual Basic. Continúa con el método, de la clase Libro, ObtenerPagina. Para ello, escribe el siguiente código.
Este código crea una función pública -accesible desde fuera de la clase- mediante la cual, insertando un número de página, te devuelve el texto de esa página. El parámetro que recibes lo has denominado "numPagina" y es de tipo Entero (Integer) lo que significa que puede recoger valores desde -2.147.000.000 hasta +2.147.000.000. En principio, no has definido ninguna acción a realizar y el método no devolverá nada. Si quieres que realice las acciones correctas aunque hasta el próximo capítulo no comprendas completamente lo que estás escribiendo, teclea:
auto-sugiriendo mediante la tecnología Intellisense que ya viste en el primer capítulo de este curso. Como has observado, "nuevoLibro" es una instancia de la clase Libro o, lo que es lo mismo, un objeto de tu programa creado a partir de la plantilla que supone la clase Libro.
Lista de eventos 3 Seleccionar New Ventana de código 3 Escribir código Repetir pasos 1 y 2 con Número de páginas y Fecha de publicación Escribir código para el método ObtenerPagina de la clase Libro Escribir código para numPagina Escribir código para manejar colecciones de objetos Escribir código para el método Registrar de la clase Biblioteca Escribir código para el método Retirar de la clase Biblioteca Presionar F2 en el teclado 3 Comprobar el funcionamiento
65 15/6/06 08:55:17
Curso
4
Crea la interfaz de usuario Una vez has diseñado e implementado todas las clases necesarias para desarrollar tu programa, ha llegado la hora de utilizarlas, esto es, realizar el interfaz de usuario desde el que "llamarás" a tus clases y métodos.
Con estas instrucciones estás creando unas variables auxiliares -página y texto- para determinar la pagina a mostrar y recibir la cadena formada por el título y el texto de la página. También estás realizando una llamada al método "ObtenerPagina" de la instancia que
Arrastra un control de tipo NumericUpDown, ten el cual también deberás modificar su propiedad Name por paginaMostrada y la propiedad Minimum por 1. Finalmente, añade un control de tipo RichTextBox, modifica la propiedad Name e introduciendo el valor Página. También modifica la propiedad Multicine a True y la propiedad Text déjala en blanco.
1
En primer lugar tienes que probar la clase Libro. Accede al formulario de la aplicación que se llama "Form1" haciendo click dos veces sobre él en el Explorador de soluciones. Ahora desde el Cuadro de herramientas arrastra un control de tipo Button que representará un botón. Desde la ventana de propiedades modifica el nombre del botón mediante la propiedad Name introduciendo el texto muestraPagina. De la misma manera modifica la propiedad Text que representa el texto que se muestra en el botón. Escribe, por ejemplo, Ver Página. Haz click dos veces en el botón para crear un método en el evento y añade el siguiente código para añadir el libro de El Quijote.
Si deseas añadir más libros puedes copiar este código tantas veces como quieras, modificando el nombre de la instancia y los atributos de la misma.
has denominado "elQuijote" y que te devolverá el texto de la página del libro que has indicado. La última instrucción "MessageBox.Show" se utiliza para mostrar un aviso con un texto y un botón para cerrar esa ventana. Simplemente estás mostrando la cadena de texto que has construido en las instrucciones previas.
5
Ahora, para aclarar un poco el significado de cada control en tu aplicación, arrastra tres controles Label y cámbiales a cada uno la propiedad Text para indicar para qué se utiliza el control más cercano: Listado de libros, Longitud de página y Página mostrada. Por último, añade una etiqueta (Label) más, que mostrará el título del libro, cambia la propiedad Name de la misma a labelTitulo y cambia también la propiedad Text dejándola en blanco.
3
Una vez has probado el correcto funcionamiento de la clase Libro por separado, ya puedes crear tu verdadera aplicación. Para ello vas a iniciar todo el proceso de nuevo. Para empezar, borra el botón y el código que acabas de crear. Con el formulario de nuevo en blanco, arrastra, desde el Cuadro de herramientas, un ListBox hasta la ventana del formulario. Para cambiar el nombre de este elemento, modifica la propiedad Name que encontrarás en la ventana de propiedades y escribe, por ejemplo, listaLibros. Ahora, añade un control
2
el formulario. Desde el editor de código selecciona (Form1 eventos) y el evento Load que encontrarás dentro de la lista de eventos que puedes desplegar.
▲
Como has visto anteriormente, la clase Libro cuenta con otras instancias asociadas. Ahora, lo que vas a hacer es probar la instancia de la clase Libro que acabas de crear. Para ello, teclea el siguiente código a continuación del introducido en el paso anterior:
6
Es el momento de añadir código a tu aplicación. Pulsa con el botón derecho de tu ratón sobre el formulario "Form1" y haz click sobre la opción Ver código. Introduce la propiedad m_biblioteca en
NumericUpDown y modifica su propiedad Name -escribe longitudPagina- y la propiedad Minimum -cambiándola por 1-, todo ello desde la ventana de propiedades.
66 148_60_69_Curso.indd 6
www.pctoday.es 15/6/06 08:55:20
Curso
7
8
De nuevo dentro de la ventana de código de Visual Basic 2005 Express Edition, y debajo de la primera línea que, como verás, se ha escrito automáticamente, deberás añadir el siguiente fragmento de código al evento.
Ahora, desplázate con tu ratón hasta el Editor de código –es la casilla con un menú desplegable que se encuentra en la parte superior izquierda de la pantalla, sobre la ventana de código-. De entre las opciones que encontrarás en su menú,
Mediante este código que estás instruciendo, lo que estás haciendo es volver a crear una instancia de la categoría Libro a la que denominas "elQuijote". Además, añadirás el título de este libro al control de tipo listbox que has denominado "listaLibros". Lo que consigues mediante este listbox de tu formulario es mostrar en él el título. En definitiva, lo que has logrado mediante este nuevo fragmento de código es crear una biblioteca en la cual has registrado este libro -"elQuijote"- con todos sus atributos y métodos. Si repites este proceso con cada uno de los libros que quieres tener en tu biblioteca, tendrás almacenados y a tu disposición todos los datos relativos a cada uno de estos libros: título, texto, número de páginas, longitud de página, etc.
elige el control denominado "listaLibros". Después, selecciona el evento "SelectedIndexChanged" que se encuentra en la Lista de eventos –es la casilla de la parte superior derecha, contigüa al Editor de código- asociado a ese control. En el método creado debes introducir el siguiente código.
9
Estás utilizando una variable que te permitirá almacenar el titulo del libro seleccionado en el listbox, recuperar el libro cuyo título sea El Ingenioso Hidalgo D. Quijote de la bilblioteca y asignarle a un objeto al que denominarás unLibro. En este objeto recibes los parámetros de los diversos controles de tu formulario para, finalmente, recuperar el texto de la página indicada y mostrarlo en el RichTextBox. Para ejecutar la aplicación pulsa F5. Se abrirá el formulario con los datos del libro cargados. Prueba a modificar los distintos valores y verás como varía el texto a mostrar.
Resumiendo... 1 Explorador de soluciones 3 Click dos veces sobre Form1 3 Cuadro de herramientas 3 Arrastrar control Button 3 Name: muestraPagina 3 Text: Ver Página 3 Escribir código 2 Escribir código 3 Borrar botón y código 3 Arrastrar control ListBox 3 Name: listaLibros 3 Arrastrar control NumericUpDown 3 Name: longitudPagina 3 Minimum: 1 4 Arrastrar control NumericUpDown 3 Name: paginaMostrada 3 Minimum: 1 3 Arrastrar control RichTextBox 3 Name: pagina 3 Multicine: True 3 Text en blanco
5 Arrastrar tres controles Label 3 Text: Listado de libros, Longitud de página,
6
7 8 9
Página mostrada 3 Arrastrar control Label 3 Name: labelTitulo 3 Text en blanco Botón derecho del ratón sobreForm1 3 Ver código 3 Introducir propiedad m_biblioteca 3 Editor de código 3 Form1 eventos 3 Lista de eventos 3 Load Escribir código Editor de código 3 listaLibros 3 Lista de eventos 3 SelectedIndexChanged Pulsar F5 en el teclado 3 Probar la aplicación
2
Trata los controles como objetos Como ya has podido comprobar en el apartado anterior los controles y formularios son igualmente objetos para los que puedes referenciar sus propiedades y métodos
1
Mediante los controles de tu formulario puedes manejar algunos aspectos de colocación. Así, en el formulario de tu proyecto llamado "Mi PrimerPOO", selecciona los controles pegados a la izquierda, estos son: label1, listaLibros, label3 y longitudPagina. Para seleccionar todos ellos, mantén pulsado el botón Ctrl de tu teclado mientras los seleccionas con el ratón. Una vez hecho esto, desde la Ventana de propiedades,
68 148_60_69_Curso.indd 7
elige la propiedad Anchor y selecciona Top y Left. Si lo haces desde el interfaz gráfico, lo que tendrás que hacer es marcar en gris el cuadrado de arriba y el de la izquierda. Este es el valor por defecto, e indica que los controles deben quedarse alineados con el borde superior izquierdo del cuando lo redimensionas.
Actúa de la misma manera pero ahora con los controles de la parte derecha del formulario de tu proyecto "Mi PrimerPOO". Estos son: labeltitulo, pagina, label4 y paginaMostrada. Selecciona todos ellos y, desde la Ventana de propiedades,
www.pctoday.es 15/6/06 08:55:22
Visual Basic 2005 Express Edition. Parte 3ª dentro de la propiedad Anchor, teclea Top y Right. Si lo haces desde el interfaz gráfico, selecciona en gris el cuadrado de arriba y el de la derecha. Este es el valor que indica que los controles deben quedarse alineados con el borde superior derecho del formulario.
utilización de estas propiedades es muy útil también para garantizar el aspecto de tu aplicación en resoluciones de pantalla diferentes -ya sean superiores o inferiores- a la resolución de pantalla que tú tienes en el entorno de desarrollo, ya que el se adaptará ■ automáticamente a esa resolución concreta.
3
Pulsa F5 o el botón Iniciar depuración que encontrarás en la Barra de herramientas. Como resultado, se abre el formulario en tiempo de ejecución y se redimensiona. Al hacerlo, observarás que los controles de la izquierda permanecen alineados a la izquierda mientras los controles de la derecha permanecen alineados a la derecha. mente el control Página. Tras esto, y desde la ventana de propiedades, busca la propiedad Dock y el valor Right, -o el bloque derecho si lo realizas desde la interfaz gráfica-. Podrás observar cómo el control se redimensiona hasta completar todo el espacio derecho del formulario.
5 4
Ahora quieres dejar todos los controles colocados en el centro del formulario cuando este se redimensione. Prueba a seleccionar la zona interior del formulario, verás que se marcan con una línea alrededor todos los controles que se encuentran en esa zona. Ahora, selecciona simple-
148_60_69_Curso.indd 8
Pulsa el botón Depurar e Iniciar depuración que encontrará en la Barra de herramientas para comprobar el comportamiento de tu formulario en el tiempo de ejecución. Prueba a redimensionar el formulario y comprobarás que el control Página continúa ocupando la misma zona que tenía anteriormente. Eso sí, de manera proporcional tamaño de formulario. Además de por cuestiones de estética en caso de que necesites redimensionar tu formulario para adaptarlo a diferentes espacios en un diseño gobal, la
Resumiendo... 1 Seleccionar controles de la izquierda 3 Anchor 3 Top y Left
2 Seleccionar controles de la derecha 3 Anchor 3 Top y Right
3 Depurar 3 Iniciar depuración 4 Seleccionar zona interior del formulario 3 Control Página 3 Dock 3 Right
5 Iniciar depuración 3 Comprobar resultado
15/6/06 08:55:24
Curso
Lenguaje de programación
A pesar de todas las facilidades que Visual Basic 2005 te ofrece para que tengas que "picar" la menor cantidad de código posible -mediante generadores de código, utilidades gráficas que arrastrando y soltando escriben automáticamente gran cantidad de código e, incluso, la estructura completa de cualquier programa que quieras realizar- no podrás evitar tener que escribir tu propio código.
Guía del curso 1. Aprende a programar con Visual Basic 2005 Introducción. Ayuda. Tu primer programa
PC Today no 146
2. Starter Kit y plantillas Creación y personalización de un proyecto
PC Today no 147
3. Controles, tipos y variables Programación orientada a objeto.
PC Today no 148
4. El lenguaje de programación Sentencias e instrucciones. Condiciones y bucles PC Today no 149
5. Diseño de aplicaciones Depuración del código
PC Today no 150
L
a programación en cualquier lenguaje siempre tiene unas mismas consideraciones básicas a tener en cuenta. La primera son las instrucciones del lenguaje, mediante las que indicas qué tiene que hacer el programa. Por ejemplo, si quieres cambiar el nombre de un fichero desde tu programa tendrás que utilizar la sentencia "rename" (que en inglés, significa renombrar).
6. Acceder a bases de datos SQL Server 2005 Express
PC Today no 151
7. Asegurar e imprimir Control de acceso, usuarios y perfiles
PC Today no 152
8. Pruebas y control de errores Manejando los errores. El plan de pruebas
PC Today no 153
Instalación y despliegue Creación y ejecución de un instalador
62 149_62_69_Curso.indd 1
PC Today no 154
Después están los operadores del lenguaje, que son las operaciones que puedes realizar con las variables según sus tipos (como pudiste comprobar con el capítulo anterior). Por ejemplo si quieres sumar dos números tendrás que utilizar el operador "+". También existen operadores de comparación que te permiten comparar elementos, por ejemplo para determinar si un número es mayor que otro utilizarás el operador ">".
Finalmente, están las sentencias de control de flujo, que determinan condiciones a seguir y también la programación de las tareas repetitivas mediante bucles. Por ejemplo, para recorrer todos los libros de tu biblioteca utilizarás un bucle "for" desde el primer elemento hasta el último, realizando para cada uno las acciones que consideres. Para indicar cuándo pasar al siguiente libro lo indicarás con la palabra "next".
Glosario de Operadores de comparación Operador < (Menor que) <= (Menor o igual que) > (Mayor que) >= (Mayor o igual que) = (Igual a) <> (Distinto de)
Verdadero si... Expression1 < Expression2 Expression1 <= Expression2 Expression1 > Expression2 Expression1 >= Expression2 Expression1 = Expression2 Expression1 <> Expression2
Falso si... Expresion1 >= Expression2 Expression1 > Expression2 Expression <= Expression2 Expression1 < Expression2 Expression1 <> Expression2 Expression1 = Expression2
www.pctoday.es 30/6/06 08:31:52
Visual Basic 2005 Express Edition. Parte 4ª es pasar el valor del parámetro, utiliza la palabra ByVal. Quedaría de la siguiente manera:
Funciones y métodos Cuando programas, lo más frecuente es que unas mismas instrucciones las necesites utilizar innumerables veces desde distintas partes de tu programa. Para evitar repetir ese código cada vez que lo necesitas, Visual Basic te permite encapsular este mini-programa en una subrutina (o método) o en una función. La diferencia entre una función y una subrutina radica en la posibilidad de las funciones de representar un valor como si de una variable se tratase, por lo que debes especificar un tipo, según viste en el capítulo anterior. Dentro de cada una de estas cápsulas de código puedes complicar tu programa tanto como lo necesites. Por ello es esencial que estructures tu programa en módulos o bloques y, lo que es más importante, que estructures tu pensamiento para agrupar y posteriormente reutilizar estos bloques de programa. Aunque en principio parece algo complejo, en la práctica resulta fácil y natural hacerlo de esta manera.
1
Desde el menú de Inicio de Windows, ejecuta Visual Basic 2005 Express. Una vez te encuentres en la interfaz principal del programa, selecciona el menú Archivo y Nuevo proyecto. En la ventana que se abre, pulsa en Aplicación Windows. Hecho esto, tienes que introducir un nombre para el proyecto
introducir el código para tu función. Teclea lo siguiente: Function CalculaEdad() As Integer. Pulsa Enter en tu teclado y, automáticamente, el editor de Visual Basic 2005 Express insertará el código End Function para la finalización de la función.
3
Como has podido observar cuando has tecleado As, automáticamente se han desplegado las opciones de tipos que puedes asignar para la respuesta de tu función. Esta es la diferencia entre una función y una subrutina, que la función tiene un tipo
Otra posibilidad más compleja es pasar los parámetros como referencia del objeto que se remite, para ello se utiliza ByRef. Para llamar a esta función tienes que realizar, por ejemplo, una asignación de la función a una variable que vayas a utilizar.
5
y, a su vez, devuelve un valor. Como ya viste en el capítulo anterior los tipos más comunes son: Integer para números enteros, Double para los números reales y String para los textos. En el caso de la función que estás creando la utilizarás para calcular una edad y te devolverá un número entero que finalmente serán años, por ello elige Integer. Ten en cuenta que si no indicas el fin del código que pertenece a una función te aparecerá un aviso de error en el Editor y posteriormente en el Compilador.
4
Lo más habitual es que necesites indicar a la función o subrutina algún valor que posteriormente precisarás para la realización de cálculos o de otras acciones. Para ello, la manera más habitual es definir el parámetro y su tipo entre los paréntesis de la definición de la función o subrutina. Si lo que deseas
De la misma manera que has implementado la función, puedes crear un procedimiento, con la diferencia de que en los procedimientos, tanto las entradas como las salidas, han de realizarse mediante parámetros. Los métodos están indicados para bloques de aplicación más complejos
Consejo Cuando declaras una variable pero nunca llegas a utilizarla, Visual Basic 2005 Express te lo indica, señalando la variable con un subrayado ondulado en color verde. De esta manera puedes tener un código limpio sin elementos inútiles que a la larga sólo conllevan confusión
que los que sueles emplear en las funciones. De la misma manera que lo has hecho antes para declarar una función, teclea la palabra reservada Sub y el nombre de la subrutina ponlo entre los paréntesis que hay detrás. Al pulsar sobre el botón Enter, el editor de Visual Basic completará el bloque de código con end Sub.
▲
que vas a realizar. Por ejemplo, MisPracticas. Este es el nombre con el que el proyecto se almacenará en tu disco duro, pero no tiene por qué ser el nombre que le des a tu futura aplicación. Una vez has establecido el nombre, pulsa sobre Aceptar para crear el proyecto. Verás cómo se despliegan, en la ventana del Explorador de soluciones, varias carpetas y ficheros.
Function CalculaEdad(ByVal FechaNacimiento As Date) As Integer End Function
2
Para crear una función, haz click dos veces en el formulario. También puedes hacerlo desde tu Explorador de soluciones, pulsando sobre el botón Ver código. Aparecerá la ventana de Edición de código con el fichero de código correspondiente a tu formulario. En concreto, será el fichero "form1.vb". La extensión VB indica que es un fichero con código Visual Basic. Aparecerá una subrutina generada automáticamente bajo el nombre Form1_load. Selecciona el código generado desde la palabra private hasta end sub. Ahora tienes que
Resumiendo... 1 Inicio 3 Todos los programas 3 Visual Basic 2005 Express 3 Archivo 3 Nuevo Proyecto 3 2
3 4 5
Aplicación Windows 3 Escribir nombre: MisPracticas 3 Aceptar Explorador de soluciones 3 Ver código 3 Fichero "form1.vb" > Subrutina Form1_load 3 Seleccionar código desde private hasta end sub 3 Teclear código 3 Pulsar Enter 3 Observar que se inserta código End function Elegir Integer como respuesta a la función Escribir código con ByVal 3 Escribir código con ByRef Escribir código con Sub 3 Pulsar en Enter 3 Comprobar que se completa el bloque con end Sub
Nº 149 149_62_69_Curso.indd 2
63 30/6/06 08:31:55
Curso que acabarás dedicando mucho tiempo y enormes cantidades de paciencia para mantener tu propio código. Cuida, por tanto, mucho en qué ocasiones vas a emplear estas variables y si te es posible no las
El ámbito de las variables Los programas en Visual Basic, según los has utilizado en los pasos anteriores, quedan divididos en bloques o zonas de ejecución que están representados por funciones y subrutinas. Estas zonas tienen sus propios entornos de ejecución de manera similar a como los diferentes países tienes sus propias leyes y policías. Esto se aplica también a las variables y su accesibilidad en cada momento. Las variables que más frecuentemente vas utilizar son las de ámbito local. Estas sólo son accesibles desde la función o procedimiento donde se declaran. Para realizar la definición de estas varia-
Consejo Existen hasta siete maneras de definir variables que determinan su ámbito de influencia y de ejecución. Cada una de ellas se identifica por una de las siguientes palabras claves: Static, Public, Protected, Friend, Shared, Protected Friend, and Private. Según vayas profundizando en la programación necesitarás utilizar algunas de estas palabras clave, pudiendo obtener información detallada en la Ayuda de Visual Basic 2005 Express y en las referencias del lenguaje.
bles debes usar la palabra clave Dim. También debes tener en cuenta que esa variable sólo "existirá" mientras la función o subrutina esté ejecutándose. De esta manera cuando una subrutina finaliza, finalizan con ella todas las variables que se hubieran definido en ese ámbito.
1
Desde la ventana de edición de código, declara dos subrutinas que llamarás SumarX y MostrarX. En cada una de ellas declara una variable llamada X. Arrastra dos controles de botón desde el Cuadro de herramientas a tu formulario y, desde cada uno de ellos, realiza una llamada a cada una de las subrutinas. Modifica la propiedad Text de cada uno de los botones
para identificar qué es lo que va a realizar cada uno de ellos. Escribe SumaX y MuestraX. Dentro del código del Botón SumaX define la variable tecleando: Dim X as Integer. Finalmente, realiza una asignación y suma de la variable a cualquier número.
2
Dentro del código que se ha escrito para el Botón MuestraX introduce una instrucción que te permitirá mostrar en pantalla, cuando ejecutes tu programa, el valor de la variable MsgBox(X). Hazlo de la siguiente manera:
64 149_62_69_Curso.indd 3
Pulsa en el botón F5 de tu teclado para ejecutar tu aplicación. Después, pulsa los dos botones que has creado. Puedes observar que no se muestra el valor de la suma realizada. Esto se debe a que el ámbito de las dos variables X es diferente, por lo que cuando se va a mostrar el valor de una, la otra ya no existe. Son objetos diferentes.
3
De la misma manera que has declarado variables de ámbito local, existen variables globales o públicas que tendrías que definir mediante la palabra clave Public y estarán accesibles desde cualquier módulo de la aplicación en cualquier momento. Aunque esto a priori parece una ventaja, resulta que se puede convertir en el peor de los infiernos porque, a poco que crezca tu aplicación, llegará el momento que no sepas quién está modificando tu variable y desde dónde, por lo
utilices nunca. Recuerda todo lo que has visto en el capítulo de Programación orientada a objeto y sus principios de Encapsulamiento de tu código.
4
El ámbito no sólo afecta a las variables sino también a las propias subrutinas y funciones. Pulsa click dos veces sobre cualquier control de uno de tus formularios y puedes observar que,
automáticamente, Visual Studio 2005 ha predefinido todas estas subrutinas como privadas o locales, para lo cual ha utilizado la palabra clave Private. Este principio debes aplicarlo a las funciones y procedimientos que tú crees porque el utilizar funciones Public permite incluso acceder a ellas desde otras aplicaciones. Según tus proyectos vayan creciendo, algo que tú mismo podrás comprobar en el Explorador de soluciones, irás necesitando otros ámbitos como por ejemplo Friend, en el que se limita el acceso a tus subrutinas para elementos de tu propio programa.
Resumiendo... 1 Arrastrar dos controles tipo Button desde el Cuadro de herramientas 3 Cambiar propiedad Text de los botones 3 Escribir SumaX y MuestraX 3 Dentro del código del Botón SumaX teclear: Dim X as Integer 3 Realiza una asignación y suma de la variable a cualquier número 2 Observar código del botón MuestraX 3 Pulsar F5 3 Pulsar sobre los dos botones creados 3 Usar variables Public para poder acceder a ellas desde cualquier módulo de la aplicación 4 Click dos veces sobre tu formulario 3 Ver predefinida la subrutina como Private
www.pctoday.es 30/6/06 08:32:00
Visual Basic 2005 Express Edition. Parte 4ª
Dando vueltas en los bucles A menudo, incluso en la vida real, es necesario realizar tareas repetitivas hasta que se consigue un objetivo. Así, para pintar una pared es necesario realizar repetidos pases del rodillo o para clavar un clavo hay que dar varios martillazos. De la misma manera ocurre en programación. Para ello dispones de unos cuantos tipos de repeticiones -que son lo que llamamos bucleslas cuales puedes adaptar a las necesidades concretas que vayas a necesitar
1
En programación, el bucle más "famoso" y utilizado es el For… Next. Este tipo de bucle se utiliza cuando sabes de antemano el número de repeticiones que debes realizar antes de conseguir tu objetivo. Arrastra un control Button (Botón) a un formulario. Edita la propiedad Text y ponle el valor bucle For. Después, haz click dos veces sobre el botón para acceder a la ventana de Edición de código. Declara dos variables: una para llevar un contador, que denominarás i, y otra para realizar una acción de suma. Para ello, escribe:
En los bucles for se suele utilizar una variable denominada i como contador. Puedes indicar el paso de la cuenta; esto es, si vas contando de 1 en 1, como ocurre por defecto, de 2 en 2 , etc. Para ello se utiliza la palabra clave Step y el número del salto
Pulsa F5 para ejecutar tu programa y observa que el valor que aparece de la suma es el correcto, en concreto 1+2+3+4 = 10, que es el valor que aparece. La instrucción Next, ha añadido 1 al valor del contador i, ha comprobado si ya se ha llegado al último valor, en este caso 5, y ha iniciado otra repetición.
Es muy importante que tengas en cuenta que en los bucles anidados siempre debes cerrar el bucle interior (en este caso, Next J) antes que el bucle exterior (que aquí se denomina Next I). Pulsa F5 para ejecutar el programa. Verás que en este código estás utilizando dos bucles anidados para pintar el contenido de una tabla en la que con el contador i llevas las filas y con el contador j, las filas. El resultado es que pintas dos filas de tres columnas con los números 1, 2 y 3.
▲
149_62_69_Curso.indd 4
Consejo
2
Otra problemática muy frecuente que te encontrarás es el recorrer una estructura de dos dimensiones (filas y columnas) y tener que realizar acciones con los valores de las mismas. Imagina, por ejemplo, que quieres recorrer todos los elementos de una tabla de Excel y sumarlos. La solución a esta problemática la ofrecen los bucles For "anidados", que ordenadamente recorren filas y columnas, normalmente de izquierda a derecha y de arriba abajo. En el botón del paso anterior sustituye el código por el siguiente:
30/6/06 08:32:02
Curso Con este código estás concatenando un listado de números hasta llegar al 11, mostrándolos uno detrás de otro separados por un retorno de carro. Otra versión de este mismo bucle es Do… Until. Su principal diferencia con respecto al primer caso radica en que Do...While evalúa cuándo deja de producirse la condición en lugar de cuándo se produce la condición, que es como funciona bucle el Do… While.
3
Otro tipo de bucles son aquellos en los que no sabes a priori el número de interacciones que debes realizar, sino que vas realizando repeticiones esperando que se produzca un condicional. Para esto existen los bucles Do… While. En la instrucción While evalúas una condición previamente definida, por ejemplo, y >. Es muy importante que conozcas una peculiaridad de estos bucles y es que, al contrario que en los bucles For, las instrucciones del interior siempre se ejecutan al menos una vez. De nuevo, arrastra un control Button a tu formulario de trabajo, modifica la propiedad Text escribiendo el valor Bucle While y haz click dos veces en el botón para acceder a la ventana de Edición de código:
4
El bucle más sencillo que puedes considerar es While… Wend, en el que la instrucción While expresa la condición a cumplir y la instrucción Wend simplemente indica el final del grupo de instrucciones a realizar. A menudo con este sencillo bucle te será más que suficiente para traba-
jar, sin que tengas que pararte a pensar si se debe entrar al menos una vez o no en el bucle o si las condiciones son positivas o negativas. Así, no tendrás que analizar toda la casuística que has visto en los pasos anteriores.
5
Por último, un tipo de bucle muy útil cuando se trata con colecciones o conjuntos de objetos es For… Each, en el que el bucle se desplaza por cada uno de los miembros de los diferentes conjuntos o colecciones. Para probar esta funcionalidad puedes utilizar cualquiera de las colecciones que vienen descritas en las librerias del .NET Framework. Por ejemplo, las familias de Fuentes. Añade de nuevo un botón a tu formulario desde el Cuadro de herramientas, modifica la propiedad Text para indicarle el valor Bucle ForEach y, tras hacer click dos veces en el botón, añade el siguiente fragmento de texto:
Resumiendo... 1 Si se sabe de antemano el número de repeticiones necesarias (For...Next) 3 Cuadro de herramientas 3 Arrastrar control Button 3 Text 3 Escribir: bucle For 3 Click dos veces sobre el botón 3 Escribir código para declarar dos variables i 3 Pulsar F5 3 Comprobar resultado de la suma 2 Si hay que recorrer estructura de dos dimensiones (For "anidados") 3 Ventana de código 3 Sustituir código del Button anterior 3 Cerrar el bucle interior (Next J) antes que el bucle exterior (Next I) 3 Pulsar F5 3 Comprobar el resultado 3 Si no se sabe el número de interacciones a realizar (Do...While) 3
Cuadro de herramientas 3 Arrastrar control Button al formulario 3 Text 3 Escribir: Bucle While 3 Click dos veces sobre el botón 3 Escribir código 3 Pulsar F5 3 Ver resultado 4 Determinar la condición a cumplir y el final del grupo de actividades a realizar (While...Wend) 5 Si son colecciones o conjuntos de objetos (For...Each) 3 Cuadro de herramientas 3 Arrastrar control Button al formulario 3 Text 3 Escribir: Bucle ForEach 3 Click dos veces sobre el botón 3 Escribir código 3 Pulsar F5 3 Ver resultado
Elige un camino: las condiciones
66 149_62_69_Curso.indd 5
guaje. Después, debes asignar acciones a realizar para cada uno de los caminos posibles que sean consecuentes con la decisión tomada. Existen innumerables ejemplos en la vida cotidiana de este tipo de condiciones: si llueve, entonces coge el paraguas, de lo contrario ve en manga corta. Es en este tipo de condiciones donde tu programa comienza a comportarse imitando la lógica humana.
▲
Las condiciones para determinar caminos implican la elección en una bifurcación. Esto, en definitiva, implica una toma de decisiones. En general puedes considerar que la toma de decisiones es en sí un comportamiento que ha de implicar cierta inteligencia, por lo que la estructura de Visual Basic para esta toma de decisiones (If… Then) es en sí una de las más importantes del len-
1
Crea un nuevo formulario pulsando con el botón derecho de tu ratón sobre la opción Proyecto que se encuentra en el Explorador de soluciones. Elige la opción Agregar y, dentro de ella, Nuevo elemento. En la pantalla de elementos que se desplegará, selecciona WindowsForms e indica el nombre que quieres para tu formulario. En este caso, y al tratarse de un ejemplo, deja el que aparece por defecto: form2. Después, pulsa en Agregar. El nuevo formulario que has creado aparecerá en tu Explorador de soluciones.
www.pctoday.es 30/6/06 08:32:06
Curso mente. Añade, además, al formulario un control de tipo Button (Botón). Modifica su propiedad Text e introduce el texto ¿Estoy en mi peso ideal?. Redimensiona y alinea los controles en el formulario para que tengan una apariencia de tu agrado.
4
Ahora tienes que añadir código a tu aplicación. Desde la ventana de diseño de la aplicación haz click dos veces sobre el botón que has creado. Teclea el siguiente código:
5
Aunque con condiciones de este tipo puedes realizar todas las combinaciones de casos posibles, para clarificar los casos más complejos de opciones múltiples, Visual Basic también ofrece otra serie de instrucciones más complejas. Una de estas instrucciones es Select… Case. Pulsa el botón Ver diseñador en el Explorador de soluciones del formulario que acabas de manipular. Una vez en él, vuelve a hacer click dos veces en el botón del mismo. Estás otra vez en el Editor de código con la condición If… Then que acabas de crear. Bórrala y escribe:
2
Para que este formulario que acabas de crear se convierta en el formulario de inicio de tu aplicación, pulsa con el botón derecho sobre el nombre de tu proyecto y elige Propiedades. En el menú que se desplegará, selecciona Formulario Inicio y Form2. Ahora, dirígete a la barra de menús
que hay en la parte superior de la ventana y pulsa en la opción Grabar todo. Finalmente, cierra la ficha de propiedades del proyecto marcando la "x" de la pestaña activa.
3
Desde el Cuadro de herramientas arrastra dos controles de tipo TextBox a tu formulario. Edita la propiedad Name de ambos y dales el valor txtMiAltura y txtMiPeso, respectivamente. Arrastra, también desde el Cuadro de herramientas, dos controles de tipo Label que colocarás encima de los controles TextBox a modo de texto explicativo. Modifica su propiedad Text para asignarles el valor Mi altura y Mi peso, respectiva-
Has incluido una condición If… Then en la que realizas la decisión. En concreto la primera decisión es si (If) tu altura es menor que tu peso entonces (Then) estás por encima de tu peso ideal, si por el contrario (ElseIf) tu altura es igual a tu peso, sí estás en tu peso ideal y si no es ninguna de las anteriores (Else) estás por debajo de tu peso ideal. Antes de la condición has creado dos variables auxiliares para tratar los datos que introduces en los controles de tipo texto. Debes tener en cuenta que los valores en este tipo de controles son de tipo texto y que tanto el peso como la edad están expresados en tipos numéricos, por lo que es necesaria una conversión previa. Para ello utilizas el conversor Cint. Para simplificar, quieres que el peso se introduzca en kilogramos y la altura en centímetros y, aunque más adelante verás que puedes realizar validaciones previas, de momento confía en el buen entendimiento de tus usuarios y simplemente varia la propiedad Text de tus dos controles Label para indicarlo y que aparezcan sendos textos en pantalla.
Como puedes ver, has añadido varias cosas nuevas. En primer lugar, una nueva variable "diferencia" donde almacenas la diferencia entre tu altura y tu peso. También has añadido una nueva instrucción Select Case en la que indicas qué acciones debes tomar en función de los valores que pueda tener la variable de referencia.
6
Como posibles opciones a esta instrucción, tienes la posibilidad de añadir rangos en los valores de comparación de cada caso (Case). Con esta posibilidad, en tu programa recién creado, puedes añadir otros mensajes dependiendo del grado de sobrepeso o bajo peso que ocurra a tu usuario. Como novedad puedes descubrir la palabra clave To que te ha permitido introducir un rango de valores de tal manera que cuando el sobrepeso es hasta 5 kilogramos el aviso sobre tu peso es algo más moderado. Una vez completado tu programa pulsa el botón Guardar.
Resumiendo... 1 Pulsar botón derecho en Explorador de soluciones 3 Proyecto 3 Agregar 3 Nuevo elemento 3 WindowsForms 3 Escribir nombre para el formulario: form2 3 Agregar 2 Pulsar botón derecho sobre nombre del proyecto 3 Propiedades 3 Formulario Inicio 3 Form2 3 Barra de menús 3 Grabar todo 3 Cerrar ficha de propiedades 3 Cuadro de herramientas 3 Arrastrar dos controles TextBox al formulario 3 Name 3 Escribir : txtMiAltura y txtMiPeso 3 Arrastrar dos
68 149_62_69_Curso.indd 6
controles Label 3 Colocar encima de controles TextBox 3 Text 3 Escribir: MiAltura y MiPeso 3 Arrastar control Button 3 Text 3 Escribir: ¿Estoy en mi peso ideal? 4 Click dos veces sobre el botón 3 Escribir código 5 Explorador de soluciones 3 Ver diseñador 3 Click dos veces en botón 3 Borrar condición If...Then 3 Escribir código 6 Escribir código para mostrar mensajes
www.pctoday.es 30/6/06 08:32:11
Visual Basic 2005 Express Edition. Parte 4ª
3
Eventos en tu programa En el mundo real ocurren multitud de eventos, algunos naturales, como la salida del sol, y otros motivados por nosotros, como cuando pulsas el botón del ascensor. De la misma manera ocurre en programación. Estos eventos pueden ser capturados y tratados por tu programa.
1
Crea un formulario pulsando con el botón derecho sobre Proyecto en el Explorador de soluciones. Elige las opciones Agregar, Nuevo elemento y WindowsForms. Tras indicar el nombre del formulario, pulsa sobre Agregar. Conviérte tu nuevo formulario en tu formulario de inicio. Desde el Cuadro de herramientas arrastra dos controles de tipo Button (Botón) a los que vas a llamar btnUno y btnDos, respectivamente. Modifica la propiedad Text de cada botón y escribe Botón 1 y Botón 2.
2
Haz click dos veces en los botones e introduce un mensaje escribiendo MsgBox ("Has pulsado el botón..."). Pulsa F5 para ejecutar tu aplicación. Después, presiona cada uno de los botones. Puedes observar que en cada uno obtienes la respuesta adecuada. Esto ocurre porque en el código generado por Visual Basic 2005 Express está identificado el evento ocurrido y se asocia a él una opción. Si te fijas en el nombre creado para la subrutina click, se crea con el nombre del botón -con la propiedad Name- y también asociandole el nombre del evento precedido por una barra baja: _Click
Del mismo modo que automáticamente se ha generado una subrutina para el evento click, puedes observar que existen numerosos eventos que capturar en función del tipo de objeto de tu formulario. Desde la ventana de diseño pulsa click dos veces sobre cualquiera de los botones. Aparecerá un desplegable con los objetos y otro desplegable con los eventos a capturar. Puedes jugar con ambos para determinar a qué eventos asociar tus acciones. ■
Resumiendo... 1 Pulsar botón derecho del ratón sobre Proyecto 3 Agregar 3 Nuevo elemento 3 WindowsForms 3 Escribir nombre del formulario 3 Agregar 3 Convertir en formulario de inicio como en el caso anterior 3 Cuadro de herramientas 3 Arrastrar dos controles Button al formulario 3 Name 3
149_62_69_Curso.indd 7
Escribir: btnUno y btnDos 3 Text 3 Escribir: Botón 1 y Botón 2 2 Click dos veces sobre cada botón 3 Escribir código 3 Pulsar F5 3 Pulsar cada uno de los botones 3 Observar resultado 3 Click dos veces sobre botón 3 Desplegables de objetos y eventos 3 Probar ambos
30/6/06 08:32:14
Curso
Diseño de aplicaciones Si existen dos momentos fundamentales a la hora de desarrollar software son, sin duda, la fase de análisis y la capacidad de monitorización del estado del código -lo que se denomina depuración-. La capacidad de análisis es el paso principal para plasmar tus necesidades en una aplicación utilizable. En cuanto a la depuración, Visual Basic 2005 vuelve a destacar por su facilidad de uso y fácil acceso a la información.
Guía del curso 1. Aprende a programar con Visual Basic 2005 Introducción. Ayuda. Tu primer programa
PC Today no 146
2. Starter Kit y plantillas Creación y personalización de un proyecto
PC Today no 147
3. Controles, tipos y variables Programación orientada a objeto.
PC Today no 148
4. El lenguaje de programación Sentencias e instrucciones. Condiciones y bucles PC Today no 149
5. Diseño de aplicaciones Depuración del código
PC Today no 150
6. Acceder a bases de datos SQL Server 2005 Express
PC Today no 151
7. Asegurar e imprimir Control de acceso, usuarios y perfiles
PC Today no 152
8. Pruebas y control de errores Manejando los errores. El plan de pruebas
PC Today no 153
Instalación y despliegue Creación y ejecución de un instalador
60 150_60_65_Curso.indd 60
PC Today no 154
C
ualquier desarrollador debe afrontar el reto de realizar la mejor aplicación posible -que cubra sus necesidades, con la facilidad de uso necesaria para que no se convierta en parte del problema- en un plazo "razonable" de tiempo, de manera que no le suponga una excesiva dedicación. Este reto será para ti, con el tiempo, algo poco menos que ineludible. Ante esta problemática dispones de herramientas y modelos de trabajo que te facilitarán conseguir de manera exitosa dichos objetivos. Estos modelos, también denominados metodologías, se componen de una definición de fases por las que debe pasar tu desarrollo, una serie de documentos necesarios para finalizar cada fase
y unas "mejores prácticas" que te sirvan de ejemplo a la hora de llevar a cabo estas teorías. Para conseguir llevar a buen puerto tu proyecto de desarrollo software, y en general cualquier proyecto, sólo hay un camino: la planificación.
¿Qué hace tu programa?
En este mismo capítulo verás la resolución de otro de los problemas que te han ido surgiendo en capítulos anteriores: ¿Qué hace mi programa exactamente? Visual Basic 2005 Express Edition dispone de una capacidad de depuración con la que podrás realizar un seguimiento de la ejecución de tu aplicación paso a paso e instrucción a instrucción. El depurador de Visual Studio es una herramienta que
te permite observar el comportamiento de tu programa en tiempo de ejecución y determinar dónde se están produciendo exactamente lo errores semánticos. Con el depurador puedes detener o pausar la ejecución de tu programa para examinar el código que se ejecuta o, si el programa lo ha realizado otra persona, comprender el funcionamiento del mismo siguiéndolo paso a paso. Con la ejecución pausada o suspendida puedes ver y editar las variables de tu programa. Todo ello mediante un sencillo sistema de menús y ventanas de diálogo para acceder a sus numerosas herramientas. Si tienes dudas concretas sobre alguna opción, puedes pulsar F1 sobre ella y obtener información en la Ayuda de Visual Basic 2005.
www.pctoday.es 13/7/06 09:19:05
Visual Basic 2005 Express Edition. Parte 5ª
5
Después, añade las asociaciones. Para ello, pulsa el botón Asociación en la barra de herramientas y selecciona el origen y el destino de la misma. Por ejemplo, selecciona el Alumno como origen y el Curso como destino. En el nombre de la asociación, que aparece cuando haces click dos veces sobre la misma, teclea asiste. Del mismo modo, introduce las asociaciones para Profesor-Curso, ProfesorExamen y Alumno-Examen.
La fase de análisis Cada vez que emprendas un proyecto de desarrollo de software deberás afrontar una etapa crucial: la fase de análisis. En ella deberás determinar cómo plasmar las necesidades o requisitos que hayas o hayan determinado que debe implementar tu aplicación. Aunque en esta tarea puedas apoyarte en herramientas que faciliten tu labor, lo más importante es tu capacidad de abstracción y eso es algo que irás adquiriendo con el tiempo. En cuanto a las herramientas, podrás pensar que tu manera más fácil de expresar el pensamiento es el lápiz y el papel, pero en la era digital existen otras que, aunque quizás no superen estos métodos tradicionales, por lo menos, lo intentan.
1
Es necesario disponer de una herramienta que te facilite el diseño del análisis que hayas realizado. Para ello vas a utilizar una aplicación gratuita llamada Jude. Para obtenerla, dirígete a la web jude.change-vision.com/jude-web/index.html. Una vez que se haya abierto la página en tu navegador web, pulsa el botón Download (Descargar) del menú de navegación de la izquierda. En la nueva ventana que se abrirá, haz click sobre el botón New registration (Nuevo registro). Como resultado, aparecerán las condiciones legales de uso, léelas y, si estas de acuerdo,
pulsa I agree (Estoy de acuerdo). Rellena las casillas con tu nombre y dirección de correo electrónico. En el campo Company/School/Organization teclea Personal. Introduce Spain (España) como país, escribe una contraseña y rellena el resto de campos obligatorios con cualquier valor.
2
Una vez terminado el proceso vuelves a encontrarte en la página de Login (Contraseña). Introduce la dirección de correo y contraseña que acabas de indicar y pulsa el botón Login. Pulsa de nuevo el botón Download (Descargar). En la página de descarga, pulsa sobre el nombre del archivo jude-community-3_0-jre-setup.exe ( JRE-bundled Windows Installer) Recommended para descargar a tu PC la aplicación. Selecciona la opción Guardar y elige la carpeta que consideres oportu-
3
Dentro de tu fase de análisis lo primero que vas a realizar es un Diagrama de Clases. Este diagrama representará todos los componentes de tu programa así como la relación entre ellos. Una vez en Jude, desde el menú File (Archivo), pulsa la opción New (Nuevo). Ahora tienes que guardar el proyecto. Para ello pulsa File (Archivo) y Save (Guardar) o directamente sobre el botón Guardar
de la barra de menús. Selecciona la carpeta donde vas a almacenar tu nuevo archivo y dale un nombre, por ejemplo "MiPrograma". Por defecto, el programa ha creado un diagrama de clase con el nombre Class Diagram. Haz doble click sobre él. En la Ventana de propiedades, cambia la propiedad Name y escribe Diagrama de clases. Después, pulsa la tecla Enter y verás como cambia el título de la ventana que aparece en el área de trabajo.
4
Nº 150 150_60_65_Curso.indd 61
6
Aunque tengas identificadas las clases de tu programa y documentadas en un diagrama, existen otros diagramas que te pueden ayudar a clarificar el funcionamiento de tu programa. Estos son los Casos de Uso. Normalmente se deben pensar y realizar estos diagramas antes que el Diagrama de Clases, pero en este ejemplo has cambiado el orden
para familiarizarte con la herramienta de diseño. Desde la pestaña de Estructura de proyecto en Jude, selecciona el Diagrama de Casos de Uso que se crea automáticamente con el proyecto. Para hacerlo, haz click dos veces sobre él, modifica su propiedad Name e introduce Diagrama Casos de Uso.
7
Ahora debes identificar los actores que intervendrán en el manejo de tu programa. En este ejemplo manejarán tu aplicación: Secretarias, que darán de alta los cursos y asignarán profesores y alumnos a los mismos; Tutores que introducirán
▲
na para almacenar el fichero. Una vez finalizada la descarga, pulsa sobre Ejecutar. Selecciona el idioma -en esta versión sólo está disponible el inglés y el japonés-, elige la carpeta donde quieras instalar la aplicación, el nombre que tendrá la aplicación dentro de tu grupo de programas del menú Inicio y pulsa el botón Instalar para iniciar el proceso de instalación. Una vez finalizado el proceso, pulsa el botón Finish (Finalizar).
Ahora tienes que agregar tus clases al diagrama. Tomaremos una aplicación para gestionar los alumnos de una clase, los exámenes que realizan y las notas que obtienen en los mismos. Selecciona el icono de clase y haz doble click sobre el área de trabajo. Aparecerá una caja que representa una clase. Introduce el nombre Alumno para identificar la clase que acabas de añadir. Realiza la misma operación para añadir más clases, curso, profesor y exámenes.
Por último, añade una clase Persona de la que se dependerán las clases Profesor y Alumno. Selecciona la flecha de dependencia e indica Alumno y Profesor como origen y la clase Persona como destino.
61 13/7/06 09:19:11
Curso
9
la nota de los exámenes; y Estudiantes, que contestarán a los exámenes. Una vez identificados, tienes que reflejar todos estos actores en tu diagrama. Para ello, selecciona el icono Actor y haz doble click con el botón izquierdo de tu ratón sobre el área de trabajo. Según los vayas creando, introduce el nombre de cada uno de los actores, en este caso, Secretaria, Tutor y Estudiante.
8
También tienes que indicar las actividades que van a realizar cada uno de los actores que has señalado en el paso anterior. Para ello selecciona el control de Caso de uso y haz click sobre el área de trabajo. Asigna un nombre al caso, por ejemplo, Crea curso y pulsa Aceptar. Para crear las asociaciones entre los actores y los casos de uso pulsa el control de Asociación, selecciona el actor
Existen otros diagramas que también pueden llegar a serte útiles según vayas profundizando en tus conocimientos sobre programación orientada a objeto. Para añadir un nuevo diagrama, pulsa con el botón derecho de tu ratón sobre la aplicación que estás creando y despliega el menú Añadir diagramas (Create Diagram). Como ves, puedes seleccionar entre bastantes diagramas. Aunque no es el momento para que profundices en ellos, sí debes saber que el Diagrama de colaboración y el Diagrama de estados te serán muy útiles cuando realices diseños complejos para tus aplicaciones.
-en este caso Secretaria- y el caso -Crea curso-. Repite estas mismas acciones para relacionar tus actores con todos los casos de usos que desees implementar en tu aplicación. Recuerda guardar tus diagramas cada cierto tiempo, de esta forma evitarás que se puedan perder tus avances por algún fallo momentáneo en tu máquina.
Resumiendo... 1 Abrir jude.change-vision.com/jude-web/index.html 3 Download 3 New registration 3 I Agree 3 Rellenar las casillas correspondientes 2 Introducir dirección de correo y contraseña 3 Login 3 Pulsar sobre nombre del archivo 3 Guardar 3 Elegir ubicación 3 Ejecutar 3 Idioma: English 3 Instalar 3 Finish 3 File 3 New 3 File 3 Save 3 Elegir ubicación y nombre para el archivo 3 Name: Diagrama de clases 3 Pulsar Enter 4 Icono Clase 3 Click dos veces en el área de trabajo 3 Escribir Alumno 3 Repetir el proceso con Clases, Curso, Profesor y Exámenes
5 Asociación 3 Elegir origen y destino 3 Click dos veces sobre la asociación 3 Escribir: asiste 3 Repetir el proceso
6 Pestaña Estructura 3 Seleccionar carpeta diagrama de casos de uso 3 Name: Diagrama casos de uso
7 Icono Actor 3 Doble click sobre el área de trabajo 3 Introducir nombre del actor 3 Repetir el proceso tantas veces como sea necesario
8 Control de caso de uso 3 Click en el área de trabajo 3 Escribir nombre 3 Aceptar 3 Seleccionar actor y caso 3 Crear asociaciones 3 Repetir
9 Botón derecho del ratón sobre la aplicación 3 Añadir diagramas
Planifícate con GanttProject Uno de tus objetivos a la hora de crear un nuevo programa es no perder en esta labor más tiempo del necesario. Para ello es esencial organizarse. En este sentido hay numerosas aplicaciones que pueden facilitarte la tarea. Por un lado están los organizadores estilo agenda, como por ejemplo Outlook, y por otro lado están los planificadores. Estos últimos son los que vas a utilizar en este ejemplo. El planificador más extendido en el mercado de la programación es Microsoft Project. Sin embargo, se trata de un programa de pago por lo que, para hacer tus pinitos en casa, es probable que prefieras otros, de carácter gratuito con los que puedes realizar las mismas funciones. Este es el caso de GanttProject que será la aplicación que utilizarás en los siguientes pasos.
1
Para descargarte la aplicación GanttProject, introduce en la casilla de direcciones de tu navegador web el texto: ganttproject.sourceforge.net/ Una vez en la página principal, pulsa sobre el enlace llamado Download GanttProject 2.0.1. Desde este enlace, accederás a la página de descarga de las distintas versiones de la herramienta. Elige la opción Windows Installer y después selecciona el servidor desde el que vas a descargar el fichero, por ejemplo HEANet. Elige la carpeta donde quieres almacenar el fichero que vas a descargar
62 150_60_65_Curso.indd 62
y pulsa sobre el botón Guardar. Comenzará la descarga. Podrás observar el estado del proceso en la barra que aparece en pantalla.
2
Una vez finalizada la descarga pulsa Ejecutar para realizar la instalación. Tras aceptar las condiciones legales, en la pantalla de Selección de componentes marca todos ellos y pulsa Siguiente. Después, indica la carpeta donde quieres instalar la aplicación y pulsa de nuevo en Siguiente. Comenzará el proceso de instalación, que podrás seguir también mediante la barra de progreso. Una vez finalizada la instalación, pulsa el botón Cerrar. Para abrir por primera vez
la aplicación, pulsa sobre el botón Inicio y selecciona la opciones Todos los programas y GanttProject. Como resultado, se abrirá la ventana de Planificación.
3
En primer lugar, es necesario determinar las tareas que vas a realizar en tu proyecto de desarrollo de software. Por lo general, en todo desarrollo aparecen varias fases, que se pueden traducir en tareas: Requisitos, análisis, desarrollo, pruebas e implantación. Estas fases se pueden aplicar desde el proyecto más ambicioso hasta a tu pequeño programa casero para archivar DVDs y te permiten organizar tu trabajo de una manera eficaz y ordenada. Para dar de alta las tareas pulsa sobre el botón Nueva tarea que encontrarás en la barra de herramientas. Para la tarea que acabas de crear, teclea
www.pctoday.es 13/7/06 09:19:15
Visual Basic 2005 Express Edition. Parte 5ª pestaña Recursos, elige a la persona que va a realizar la tarea que has seleccionado. Recuerda que es posible realizar una misma tarea entre varias personas, por lo que tienes la posibilidad de añadir varias personas desde esta pestaña.
un nombre, por ejemplo, Requisitos. Repite la misma operación para añadir el resto de tareas que quieres planificar: Análisis, desarrollo, pruebas e instalación. Conseguirás así un listado de todas las tareas que vas a realizar en el proyecto.
4
Una vez tienes claras todas las tareas que vas a realizar, ahora hay que estimar el tiempo que te llevará realizar cada una de ellas. Para ello, pulsa con el botón derecho de tu ratón sobre cada una de ellas y, en el campo Duración, introduce el número de días que piensas dedicar a cada tarea. Por ejemplo, sobre la tarea Requisitos introduce una duración de cinco días; para la tarea de Análisis, una duración de 5 días; para la tarea de Desarrollo, 10 días; para la tarea de Pruebas,
5 días; y para la Instalación, 1 día. Estas proporciones suelen ser habituales en los proyectos de desarrollo aunque en los proyectos pequeños seguramente reduzcas la etapa de Requisitos y la etapa de Análisis en tiempo por relajación y comodidad, esto al final provocará que en la etapa de Desarrollo inviertas más tiempo.
5
Ahora tienes que identificar qué tareas requieren para su realización que finalice la anterior. De esta manera, crearás vínculos entre tus tareas o tareas anteriores. Para crear el vínculo, pulsa y arrastra el ratón desde la tarea que debe realizarse en primer lugar hacia la que debe realizarse después. Quedarán de
esta manera vinculadas y ordenadas. En el caso de este proyecto, todas las tareas dependen de la exitosa consecución de la anterior con lo que deberemos realizar la vinculación entre Requisitos-Análisis, Análisis-Desarrollo, Desarrollo-Pruebas y Pruebas-Instalación. Cuando hayas realizado todas las vinculaciones, pulsa sobre el botón Alejar de la barra de herramienta para tener una imagen global de tu proyecto: ver cuándo iniciar y cuándo acabar cada tarea y cuando finalizarás el proyecto en su totalidad.
8
Una vez hayas comenzado a realizar las tareas que tenías planificadas, las herramientas de las que dispones te permitirán realizar un seguimiento del avance de tu proyecto, indicando el grado de avance de cada una de las tareas. Pulsa con el botón derecho sobre la tarea en la que se haya producido el avance y selecciona Propiedades de la tarea.
6
Las planificaciones son de utilidad especialmente cuando en el proyecto interviene más de una persona. Así, puedes indicar con antelación a cada integrante del equipo cuándo comenzarán sus tareas y cuáles serán. Para determinar los participantes en el proyecto, pulsa la pestaña Recursos. De esta manera accederás al área desde donde podrás añadir recursos pulsando el botón Nuevo Recurso de la barra de herramientas. Introduce el nombre de recurso para tantos como consideres necesarios. Para el ejemplo, añade dos.
Verás cómo se abre una ventana de propiedades. En el campo Progreso aparece el grado de avance, en porcentaje, que se ha producido. Por ejemplo, si consideras que se ha producido un avance del 10% introduce un 10 y pulsa Aceptar. Observarás en el diagrama que una barra negra aparece sobre la verde de la tarea indicando el grado de avance en la misma.
9
También puedes detallar en qué ha consistido el avance que acabas de relatar. Pulsa de nuevo el botón derecho sobre la tarea y, en la opción Propiedades de la tarea, selecciona la pestaña Notas. Pulsa el botón que te permite introducir la fecha
7
Cuando ya dispones de todos las personas implicadas y todas las tareas a realizar, sólo te queda indicar qué persona va a realizar qué tarea. Vuelve a la pestaña de Gantt y pulsa con el botón derecho de tu ratón sobre una de las tareas. Después, selecciona la opción Propiedades. Sobre la
▲
y hora actuales para indicar el momento en que se produce el avance e introduce, también, un comentario sobre el avance que se ha producido; por ejemplo: Redacto listado de requisitos. Después, pulsa Aceptar para que la información quede almacenada en tu proyecto. Pulsa el botón Guardar de la barra de herramientas para salvar tu proyecto.
Resumiendo... 1 Abrir la página ganttproject.sourceforge.net/ 3 Download GanttProject
2
3 4 5
2.0.1 3 Seleccionar Windows Installer 3 Elegir servidor de descarga HEANet 3 Elegir ubicación 3 Guardar Ejecutar 3 Aceptar licencia 3 Marcar todos los componentes 3 Siguiente 3 Elegir ubicación para el archivo 3 Siguiente 3 Cerrar 3 Inicio 3 Todos los programas 3 GanttProject Nueva tarea 3 Escribir el nombre de la tarea 3 Aceptar 3 Repetir con todas las tareas Pulsar el botón derecho sobre la tarea 3 Propiedades de la tarea 3 Escribir duración de cada tarea en el campo Duración 3 Aceptar Seleccionar tareas que deben realizarse primero 3 Arrastrar el ratón
6 7
8 9
Nº 150 150_60_65_Curso.indd 63
hasta la tarea que debe realizarse después 3 Vincular 3 Realizar todas las vinculaciones 3 Alejar Pestaña Recursos 3 Nuevo Recurso 3 Escribir nombre del recurso Pestaña Gant 3 Pulsar el botón derecho sobre una de las tareas 3 Propiedades de la tarea 3 Pestaña Recursos 3 Seleccionar persona que va a realizar la tarea 3 Aceptar Pulsar el botón derecho sobre la tarea 3 Propiedades de la tarea 3 Progreso 3 Introducir cantidad en Progreso 3 Aceptar Pulsar botón derecho sobre la tarea 3 Propiedades de la tarea 3 Pestaña Notas 3 Botón Introducir fecha y hora 3 Añadir comentario 3 Aceptar 3 Guardar
63 13/7/06 09:19:18
Curso
Depurando tu programa En un mundo ideal, cada vez que realizaras un programa, este funcionaría perfectamente en el primer intento. Pero la realidad es que cada vez que programas cualquier cosa los resultados son poco menos que impredecibles y a menudo te cuesta seguir el rastro de tus instrucciones para saber qué está fallando e incluso, simplemente, conocer qué hace tu programa. Para facilitarte el trabajo, las herramientas de desarrollo disponen de un depurador de código que te permite realizar un seguimiento del código en ejecución y de los estados y valores asignados a las variables en cada momento.
1
Desde el menú de Inicio de Windows, ejecuta Visual Basic 2005 Express. Una vez abierto el programa, selecciona el menú Archivo, Nuevo Proyecto y Aplicación Windows. Tras esto, tienes que introducir un nombre para identificar el proyecto que vas a realizar. Escribe, por ejemplo, MisPracticas. Una vez has establecido el nombre, pulsa en el botón Aceptar para crear el proyecto. Dentro del Explorador de soluciones, selecciona el formulario Form1 –que es el que se ha creado por defecto- y arrastra un control Botón (Button). Edita la propiedad Text y escribe Repeticionesr. Después, haz doble click sobre el botón para acceder a la ventana de edición de código y declara dos variables: una para llevar un contador que denominarás i y otra para realizar una acción de suma. Para ello, escribe el siguiente código: Pulsa F5 para ejecutar tu programa y observa que el valor que aparece de la suma es el correcto (1+2+3+4 = 10). La instrucción Next ha añadido 1 al valor del contador i, ha comprobado si ya se ha llegado al último valor, en este caso 5, y ha iniciado otra repetición
ello vas a introducir una pausa dentro de tu código para observar qué está ocurriendo ahí dentro. Haz click dos veces en el botón de tu formulario para acceder al código que has desarrollado. Después en el margen izquierdo, haz click a la altura de la instrucción Suma = Suma + i. Comprobarás que aparece una gran bola roja. Esta representa el punto de interrupción que acabas de crear. Al mantener el ratón sobre la bola, aparece información acerca del punto de interrupción que acabas de incluir, como por ejemplo, si se trata de un formulario, control, método, línea o carácter.
3
Ahora, para ver qué efecto tiene este punto de interrupción, pulsa F5 y haz click también sobre el botón que has incluido en tu formulario. Observa como la ejecución se ha pausado. Posiciona el ratón sobre alguna de las variables -"suma" o "i"- y podrás observar el valor que ha tomado
en ese instante. Pulsa de forma consecutiva la tecla F8 y podrás ver cómo se desplaza el cursor amarillo por la siguiente instrucción a ejecutar. También puedes observar cómo van cambiando el valor de las variables en tiempo real. Por fin has desvelado el misterio de la programación, ya has visto qué hacen las líneas de código en acción y en tiempo real. Para eliminar el punto de interrupción y continuar la ejecución del programa normalmente, pulsa sobre la bola roja y de nuevo en F5.
4
Para continuar profundizando en las opciones de depuración, vuelve a señalar el punto de interrupción en la misma instrucción en el paso anterior (Suma = Suma + i) vuelve a pulsar la tecla F5 y el botón de tu formulario. Volverás al punto en que apareciste en el paso anterior pero,
2
Aparentemente todo funciona correctamente pero, ¿estás seguro de lo que has hecho? ¿Entiendes realmente el funcionamiento de tu programa? Las respuestas a estas preguntas pasan por la posibilidad de inspeccionar detalladamente qué está ocurriendo dentro de tu programa. Para
150_60_65_Curso.indd 64
5
También, si lo que pretendes es tener una visión instantánea de algunas variables o expresiones que quieras considerar, dispones de una ventana de Inspección rápida. Para acceder a ella, ejecuta la aplicación en modo Paso a Paso pulsando la tecla F8 o seleccionando la opción Paso a Paso por Instrucciones desde el menú Depurar. Una vez hayas pulsado el botón de tu formulario, estarás
en la ventana de Edición de código. Ahora, desde el menú Depurar, elige la opción Inspección Rápida o simplemente pulsa el atajo Mayúsculas+F9. Aparecerá la ventana de Inspección. En la parte superior puedes introducir la expresión o variable que quieras observar. Por ejemplo, teclea Suma en el campo Expresión. También puedes realizar cálculos con complementarios a tu código; por ejemplo, prueba a escribir Suma + 1 en Expresión y comprobarás cómo cambia el valor de la variable.
6
esta vez, prueba algo diferente. Sobre el valor de las variables que has visualizado, pulsa con el botón derecho de tu ratón y aparecerá un menú desplegable. Elige en él, la opción Agregar inspección. Realiza este mismo proceso tanto para la variable "Suma"
64
como para la variable "i". Verás cómo en la ventana de Inspección, que se encuentra en la parte inferior de tu pantalla, han aparecido las variables que has seleccionado, con los valores que tienen en ese momento y su tipo. Pulsa F5 y verás cómo los valores cambian. Cuando un valor cambia también cambia su color, apareciendo en color rojo para llamar tu atención. Vuelve a eliminar el punto de interrupción y pulsa F5 para continuar con la ejecución normal de la aplicación.
Dentro de las múltiples opciones de depuración de que dispones, cuentas con una potente vista que se denomina Ventana inmediato. Inserta la siguiente línea de código en tu programa: Debug.WriteLine(Suma). Esta instrucción realiza una escritura de línea en la Ventana inmediato utilizando el objeto del depurador Debug. Inicia la ejecución pulsando la tecla F8 para una ejecución Paso a Paso. Pulsa también el botón Ventana inmediato que aparece sobre el Explorador de soluciones cuando entras en modo depuración. Si pulsas repetidamente F8, podrás observar có-
www.pctoday.es 13/7/06 09:19:21
Visual Basic 2005 Express Edition. Parte 5ª mo cada vez que se ejecuta la instrucción Debug. WriteLine(Suma) se inserta una línea con el valor en la Ventana de inmediato. Esta funcionalidad te permite visualizar los distintos valores que quieras generar para tratar posteriormente la secuencia en Excel o en cualquier otra herramienta que necesites para corroborar tus cálculos.
Resumiendo... 1 Inicio 3 Todos los programas 3 Visual Basic 2005 Express 3 Archivo 3 Nuevo Proyecto 3 Aplicación Windows 3 Escribir nombre del proyecto 3 Aceptar 3 Seleccionar Form1 3 Arrastrar control Button 3 Doble click en botón 3 Escribir código 3 Pulsar F5 2 Click dos veces en botón 3 Insertar punto de interrupción 3 Pulsar F5 3 Pulsar en botón 3 Colocar el ratón sobre las variables a inspeccionar 3 Pulsar repetidamente F8 3 Comprobar 3
Domina el arte de la depuración Una vez comiences a utilizar el depurador de Visual Basic ya lo considerarás una herramienta indispensable para desarrollar, tanto que cualquier otra manera de desarrollar sin una utilidad de este tipo te parecerá "antediluviana". Ya se acabaron los tiempos del desarrollador con block de notas y línea de comandos. Según las circunstancias necesitarás moverte con el depurador hacia delante y hacia atrás, incluso capturar otros programas realizados en .NET y pasarlos por tu depurador de Visual Basic 2005.
1
En numerosas ocasiones te encontrarás situaciones en las que tu código esté compuesto de llamadas a funciones o a procedimientos, como has visto en el capítulo 4. En estas circunstancias, puede ser que quieras depurar el paso por una función o que quieras saltarla. Esta posibilidad es muy sencilla con Visual Basic. En primer lugar, introduce una subrutina en tu formulario. Desde la ventana de Diseño, haz doble click sobre el formulario del paso anterior. En la ventana de código introduce la siguiente función:
De nuevo desde la ventana de Diseño, a la que puedes acceder pulsando el botón Ver diseñador que se encuentra encima del Explorador de soluciones, haz click dos veces sobre el botón en el centro del formulario, denominado Repeticiones. Modifica el código para realizar una llamada a la función que acabas de programar, multiplicando así el valor que quieres sumar por 5. El código del evento quedaría finalmente:
Para avanzar a la siguiente instrucción puedes pulsar F8 y verás como la ejecución avanza instrucción a instrucción. Al llegar a la llamada a la función "Multiplo5", el depurador entra en la función y recorre cada una de sus instrucciones. Una vez ha terminado, vuelve al punto de la llamada a dicha función llevando el valor calculado. La próxima vez que te posiciones en la instrucción anterior a la llamada a la función, pulsa la combinación de teclas Mayúsculas+F8 y observa cómo, esta vez, el depurador no ha entrado en las instrucciones de la función sino que directamente ha realizado la llamada y ha devuelto el valor, posicionándose en la siguiente instrucción.
Pulsar sobre bola roja 3 Pulsar F5
4 Señalar punto de interrupción 3 Pulsar F5 3 Pulsar botón del formulario 3 Pulsar sobre el valor de las variables con botón derecho del ratón 3 Agregar inspección 3 Pulsar F5 5 Pulsar repetidamente F8 3 Pulsar botón del formulario 3 Depurar 3 Inspección rápida 3 Escribir: Suma 6 Insertar código de depuración 3 Pulsar F8 repetidamente 3 Pulsa botón Ventana inmediato 3 F8 hasta fin de ejecución
mento, tanto para volver a una instrucción anterior como para avanzar a una instrucción posterior. Para volver a avanzar en ejecución Paso a Paso, pulsa repetidamente sobre F8.
4
En ocasiones puede que quieras comenzar la depuración una vez tienes tu programa en ejecución. Si no has recordado poner ningún punto de interrupción, pulsa en el menú Depurar y luego en la opción Excepciones. Se abrirá la ventana desde donde puedes marcar las excepciones que determinarán una interrupción en la ejecución, para que "salte el depurador". Marca, por ejemplo, que sea cuando el formato de fecha no se corresponda
3
De la misma manera que te ha resultado útil ir hacia delante en la ejecución del programa, en ocasiones te puede resultar igualmente útil ir hacia atrás. Para ello selecciona la flecha amarilla en el margen de la línea de ejecución y, sin soltar el botón del ratón, desplázala hasta la instrucción que quieras que se vuelva a ejecutar. Esta funcionalidad de soltar y arrastrar la puedes realizar en cualquier mo-
con tu configuración. Al producirse esta circunstancia se realizará una interrupción de la ejecución. Al producirse esta circunstancia que has señalado previamente, se realizará una interrupción de la ejecución de tu programa. ■
Resumiendo... 1 Doble click sobre el formulario en la ven-
2
Pulsa el botón Repeticiones para iniciar las rutinas que tienes programadas para el evento click de ese botón. Verás que la ejecución se queda detenida en la primera línea de tu código. Esta línea aparecerá iluminada en color amarillo.
tana de Diseño 3 Introducir código 3 Ver diseñador 3 Doble click sobre el botón Repeticiones 3 Introducir llamada a la función correspondiente 2 Pulsar botón Repeticiones 3 Pulsar tecla F8 3 Comprobar resultado 3 Pulsar com-
Nº 150 150_60_65_Curso.indd 65
binación de teclas Mayúsculas + F8 3 Comprobar resultado 3 Seleccionar flecha amarilla 3 Arrastrar la flecha amarilla hasta la instrucción 3 Pulsar F8 para continuar Paso a Paso 4 Depurar 3 Excepciones 3 Seleccionar las excepciones a capturar 3 Aceptar
65 13/7/06 09:19:23
Curso
Accede a bases de datos Hoy en día, resulta indispensable que las aplicaciones te permitan almacenar datos y, además, utilizar esos datos previamente almacenados para realizar operaciones. En cualquier caso casi siempre querrás que los datos que maneja tu aplicación, bien sean de tu colección de DVDs, de tus libros, de tus facturas o de tus contactos, se almacenen permanentemente y para ello necesitarás de una buena base de datos.
Guía del curso 1. Aprende a programar con Visual Basic 2005 Introducción. Ayuda. Tu primer programa
PC Today no 146
2. Starter Kit y plantillas Creación y personalización de un proyecto
PC Today no 147
3. Controles, tipos y variables Programación orientada a objeto.
PC Today no 148
4. El lenguaje de programación Sentencias e instrucciones. Condiciones y bucles PC Today no 149
5. Diseño de aplicaciones Depuración del código
PC Today
no
150
PC Today
no
151
6. Acceder a bases de datos SQL Server 2005 Express
7. Asegurar e imprimir Control de acceso, usuarios y perfiles
PC Today no 152
8. Pruebas y control de errores Manejando los errores. El plan de pruebas
PC Today no 153
9. Instalación y despliegue Creación y ejecución de un instalador
60 151_60_66_Curso.indd 1
PC Today no 154
E
xisten numerosas maneras de gestionar los datos que manejan tus aplicaciones, pero la más utilizada por su facilidad y madurez, ya que existe prácticamente desde el nacimiento de la informática, son las bases de datos. Visual Basic 2005 Express Edition te facilita todas las tareas relacionadas con las bases de datos que quieras utilizar. Tanto el lenguaje como el entorno de desarrollo te proporcionarán las utilidades necesarias para facilitar el empleo de una base de datos. Hasta el punto que te resultará más sencillo utilizar este tipo de almacenamiento en lugar de otros, como ficheros de texto o el propio registro de Windows. Visual Basic 2005 Express Edition te permitirá
también la creación y gestión de bases de datos, así como su conexión con el proyecto de cualquier aplicación que estés desarrollando. Aunque podrás conectar con cualquier base de datos, las utilidades proporcionadas te facilitarán especialmente el empleo de SQL Server Express Edition y de Microsoft Access.
Aplicaciones de gestión
La mayoría de aplicaciones que vayas a desarrollar serán de las denominadas "aplicaciones de gestión" en las que, básicamente, estás gestionando información, es decir, datos. Aunque en numerosas ocasiones te plantees por qué complicar tu aplicación con un elemento complejo como una
base de datos, con el tiempo el volumen de datos que vaya a manejar tu aplicación justificará por si mismo la necesidad de esta. Además, debes considerar que, llegado un punto, tu aplicación irá mucho más lenta de no utilizar un buen motor de base de datos o lo que es aún más grave podrás acabar perdiendo parte de los datos que has ido gestionando. Para el diseño de la base debes poner atención en los pequeños detalles para conseguir una aplicación lo suficientemente completa para que sea fácilmente utilizable. No siempre lo más fácil de programar es lo más fácil de usar y eso debes tenerlo muy en cuenta. Para un usuario, cuanto menos cosas tenga que "hacer" él y más haga la aplicación, mejor.
www.pctoday.es 27/7/06 08:37:06
Visual Basic 2005 Express Edition. Parte 6ª
Crea una base de datos en SQL Server 2005 Aunque es posible gestionar tu base de datos directamente desde SQL Server, verás cómo te resultará mucho más sencillo emplear para esta labor las utilidades que te proporciona el entorno de desarrollo de Visual Basic; entorno al que además ya estás acostumbrado. SQL Server 2005 Express Edition es una potente y completa base de datos, por lo que puedes utilizarla para todas tus aplicaciones de alcance pequeño o mediano, tanto para tu hogar como para tu oficina. Aunque SQL Server tendría contenidos por sí mismo para un curso completo, en las próximas páginas verás cómo puedes realizar todas las funcionalidades que necesitas desde tu herramienta de desarrollo Visual Basic.
1
Desde el menú de Inicio ejecuta Visual Basic 2005 Express. Una vez en su interfaz principal, selecciona el menú Archivo y las opciones Nuevo proyecto y Aplicación Windows. Tras esto, debes introducir un nombre para el proyecto que vas a realizar. Escribe, por ejemplo, MisPracticas. Una vez has establecido el nombre, pulsa Aceptar para crear el
5
ahora tienes que crear las tablas donde se va a almacena la información de todos los cursos existentes, de todos los profesores, de todos sus alumnos y la relación de asistentes a un curso y profesor que lo imparte. Tendrás que crear una tabla Cursos, una tabla Profesores y una tabla Alumnos. En cada una de ellas almacenarás las características de cada grupo divididas en campos.
3
proyecto. Verás cómo se despliegan en el Explorador de soluciones varias carpetas y ficheros. Pulsa con el botón derecho de tu ratón sobre el nombre del proyecto. En el menú que aparecerá, selecciona Agregar, Nuevo elemento y Base de datos SQL. Añade un nombre -por ejemplo, "Cursos.mdf "- y pulsa Agregar. En la ventana de Selección de objetos de la base
de datos elige Tablas, ya que el resto de objetos no los vas a utilizar en este ejemplo. Para trabajar con la nueva base de datos que acabas de crear, pulsa, en el menú Ver, la opción Explorador de base de datos.
2
Desde el Explorador de bases de datos despliega la base de datos "Cursos.mdf". Después, sobre la carpeta Tablas pulsa con el botón derecho del ratón y selecciona la opción Agregar nueva tabla. Se abrirá la ficha de la tabla. En ella tienes que añadir los campos necesarios para cada una las tablas que vayas a crear. Vas a empezar creando la tabla Cursos. Para ello, una vez abierta la ficha de Nueva tabla, ve a la ventana de Propiedades y modifica la propiedad Name escribiendo Cursos. Después, introduce los distintos campos y el tipo de datos que contendrán. Un Curso tendrá como
6
atributos un nombre de curso, una fecha de inicio del curso, una fecha de fin del curso, un número máximo de asistentes y un código que identifique este curso de manera única.
un tipo numérico y, algo muy importante, para evitar que se pueda repetir ningún código, señala este campo como campo clave pulsando el botón Clave principal de la Barra de herramientas.
4
7
En la ficha de la Tabla Cursos, escribe Nombre en el Nombre de la columna. Tras esto, en la columna Tipo de datos, selecciona el tipo de datos; en este caso, como el nombre es un texto, elige el texto Varchar. Después, debes seleccionar una
Nº 151 151_60_66_Curso.indd 2
Ahora, añade el campo para la fecha de inicio del curso. En el Nombre de columna introduce Fecha_Inicio; en el tipo de datos, al tratarse de una fecha, introduce Datetime y señala el campo como no obligatorio, ya que es posible que en el momento de dar de alta el curso desconozcas la fecha exacta de inicio. Continúa definiendo la tabla introduciendo ahora el campo donde se almacenará la fecha de fin del curso. En el Nombre de columna escribe
Fecha_Fin; en el tipo de datos, al tratarse de una fecha, vuelve a introducir Datetime y señala de nuevo el campo como no obligatorio. Agrega ahora un campo para indicar el número máximo de alumnos que podrán asistir al curso. En el Nombre de columna escribe Max_alumnos; en el tipo de datos, al tratarse de un número, introduce "int" y señala que el campo tampoco será obligatorio. Por último, para agregar un campo para el código único de curso, en el Nombre de columna pon id_Curso; en el tipo de datos utiliza
De la misma manera que has hecho con la tabla Cursos tienes que actuar ahora con la tabla Profesores. Un profesor tendrá un nombre, unos apellidos, una dirección de email y un número de teléfono (Estos datos son de ejemplo y puedes adaptarlos al caso concreto que quieras desarrollar). Desde el Explorador de bases de datos despliega la base de datos "Cursos.mdf". Sobre la carpeta Tablas presiona
▲
Llegó el momento de añadir tablas a tu base de datos. Para ello tomarás el análisis que realizaste en el capítulo anterior para crear una aplicación de gestión de cursos, en los que tenías que recoger los profesores, alumnos y cursos. Recuerda el diagrama de clases en el que habías definido los cursos impartidos por profesores y a los que asistían los alumnos. Pues bien,
longitud para el campo, por ejemplo 50 caracteres -al final tienes que elegir Varchar(50)-. Para finalizar tienes que determinar si el campo es obligatorio -en este caso sí será obligatorio porque no podrías diferenciar un curso de otro si no es por el nombre-.
61 27/7/06 08:37:15
Curso el botón derecho y pulsa la opción Agregar nueva tabla. Verás cómo se abre la ficha de tabla. Desplázate hasta la ventana de Propiedades y modifica la propiedad Name, introduciendo el valor Profesores. Ahora tienes que agregar los diferentes campos tal y como has hecho en el apartado anterior.
8
En primer lugar, escribe Nombre en el apartado Nombre de la columna. Después, en la columna tipo de datos, selecciona el tipo de datos que vas a incluir -en este caso, como el nombre es un texto, elige la opción Varchar-. Además, debes determinar una longitud para el campo, por ejemplo, 50 caracteres. Para finalizar, debes establecer si el campo es obligatorio -como sí lo será en este caso-. Una vez acabado el proceso con el campo Nombre, repite el proceso con el campo relativo a los apellidos. Escribe, como Nombre de la columna, Apellidos, y se-
ñala que será de tipo Varchar aunque la longitud será de 128 y también será obligatorio. Introduce ahora el campo para almacenar el email. En el Nombre de columna escribe Mail; en el tipo de datos selecciona la opción Varchar(128) y establece el campo como no obligatorio. Agrega ahora un campo para indicar el número de teléfono del profesor. En el Nombre de columna introduce num_Telefono, en el tipo de datos, a pesar de tratarse de un número, introduce Varchar y dale una capacidad de caracteres de 12 por si se tratase de un número internacional y debieras poner delante el prefijo "00".
9
Por último, vas a agregar un campo para el código de profesor, aunque también podría utilizarse un identificador único como por ejemplo el DNI. En el Nombre de columna escribe id_Profesor, para el tipo de datos utiliza un tipo numérico y, para evitar que se pueda repetir ningún código, señala este campo como campo clave pul-
sando el botón Clave principal en la Barra de herramientas. En la pestaña de Propiedades del campo en la zona de Identidad indica Sí en el Valor de identidad. Guarda la tabla pulsando el botón Guardar de la Barra de herramientas.
10
Para finalizar tienes que crear la tabla Alumnos. Un alumno tendrá un nombre, unos apellidos, una dirección de email y un número de teléfono. Además, puedes añadir un campo para determinar si está al corriente de pago de su matrícula o no lo está. Desde el Explorador de bases de datos despliega la denominada "Cursos.mdf". Pulsa con el botón derecho de tu ratón sobre la carpeta Tablas y elige la opción Agregar nueva tabla. Se abrirá la Ficha de tabla. Ve a la Ventana de propiedades y modifica la propiedad Name escribiendo en ella el valor Alumnos.
11
Añade el campo Nombre en el Nombre de la columna. Ahora en la columna tipo de datos selecciona el tipo de datos así como, tal y como has hecho en apartados anteriores, una longitud para el campo, por ejemplo 50 caracteres. Al final tienes que elegir Varchar(50). Ahora debes determinar si el campo es obligatorio, como es el caso. Como ya hi-
ciste con los profesores, añade el campo Apellidos, que también será de tipo Varchar aunque la longitud será de 128. Continúa definiendo la tabla con un nuevo campo para el email. En el Nombre de columna introduce Mail en el tipo de datos también Varchar(128) y establece el campo para que no sea obligatorio. Agrega ahora un campo para indicar el número de teléfono del alumno. En el Nombre de columna introduce num_Telefono y para el tipo de datos elige Varchar(12).
12
Agrega un campo Corriente_Pago. Para ello, elige el tipo "bit" que tendrá valor 0 para el No y 1 para el Sí. Este campo lógicamente será obligatorio porque siempre ha de tener uno de los dos valores posibles. Por último, para agregar un
campo para el código de alumno, pon como Nombre de columna id_Alumno. En la pestaña de Propiedades indica Sí en el Valor de Identidad y señala este campo como campo clave pulsando el botón Clave principal. Haz click sobre el botón Guardar todo.
Resumiendo... 1 Inicio 3 Todos los programas 3 Visual Basic 2005 Express 3 Archivo
2 3
4 5
6
3 Nuevo proyecto 3 Aplicación Windows 3 Escribir nombre 3 Aceptar 3 Botón derecho en nombre del proyecto 3 Agregar 3 Nuevo elemento 3 Base de datos SQL 3 Escribir nombre Cursos. mdf 3 Agregar 3 Selección de objetos 3 Tablas 3 Ver 3 Explorador de base de datos Abrir el diagrama de clases creado en PC Today 150 Explorador de bases de datos 3 Abrir base de datos "Cursos.mdf" 3 Tablas 3 Pulsar con el botón derecho del ratón 3 Agregar nueva tabla 3 Propiedades 3 Name: Cursos Nombre de columna: Nombre 3 Tipo de datos 3 Varchar(50) 3 Campo obligatorio Nombre de columna: Fecha_Inicio 3 Tipo de datos 3 Datetime 3 Campo no obligatorio 3 Nombre columna: Fecha_Fin 3 Tipo de datos 3 Datetime 3 Campo no obligatorio Nombre de columna: Max_alumnos 3 Tipo de datos 3 Int 3 Campo no obligatorio 3 Nombre de columna: id_Curso 3 Tipo de datos 3 Numérico 3 Clave principal
62 151_60_66_Curso.indd 3
7 Tabla Profesores 3 Explorador de bases de datos 3 Abrir base "Cursos.
8
9 10 11 12
mdf" 3 Tablas 3 Botón derecho del ratón 3 Agregar nueva tabla 3 Propiedades 3 Name: Profesores Nombre de columna: Nombre 3 Tipo de datos 3 Varchar (50) 3 Campo obligatorio 3 Nombre columna: Apellidos 3 Tipo de datos 3 Varchar (128) 3 Campo obligatorio 3 Nombre de columna: Mail 3 Tipo de datos 3 Varchar (128) 3 Campo no obligatorio 3 Nombre de columna. num_ Telefono 3 Tipo de datos 3 Varchar(12) Nombre de columna: id_Profesor 3 Tipo de datos 3 Numérico 3 Clave principal 3 Propiedades del campo 3 Identidad 3 Guardar Repetir paso 7 Repetir paso 8 Nombre de columna: Corriente de pago 3 Tipo de datos 3 Bit con valor 0 para No y 1 para Sí 3 Nombre de columna: id_Alumno 3 Tipo de datos 3 Numéricos 3 Propiedades del campo 3 Identidad 3 Sí 3 Clave principal 3 Guardar todo
www.pctoday.es 27/7/06 08:37:24
Visual Basic 2005 Express Edition. Parte 6ª
Hasta las tablas tienen relaciones Una vez ya tienes todas tus tablas con sus campos definidos, todavía hay un punto fundamental por tratar, cómo se van a relacionar las tablas entre sí. Es decir, ¿cómo se van a asociar alumnos a cursos?, ¿Es necesario hacerlo en las tablas? En un sentido práctico, y aunque desde tu código Visual Basic mantengas las relaciones entre tus clases, siempre es mejor tener estas relaciones también reflejadas en tu base de datos. De esta manera puedes asegurar una buena integridad de los datos. Esto es que, por ejemplo, que no puedas asignar un alumno a un curso que no existe. En definitiva, aunque puedes garantizar la integridad de tus datos desde un código Visual Basic bien construido, siempre es aconsejable asegurarte esta integridad mediante relaciones en tu base de datos.
1
En primer lugar, cuando analizas las relaciones que puedan existir entre un alumno y el curso o cursos a los que asiste se presentan unas condiciones determinantes. Un alumno puede asistir a muchos cursos y en un curso hay muchos alumnos. Esta es la relación más compleja que se
puede dar entre dos tablas y que implica la necesidad de crear una nueva tabla intermedia que diga qué alumnos asisten a cada curso. La estructura de esta tabla será muy simple ya que sólo debe almacenar los identificadores de cursos y alumnos asociados. Para ello, desde el Explorador de bases de datos despliega la base de datos "Cursos.mdf", sobre la carpeta Tablas pulsa con el botón derecho y elige la opción Agregar nueva tabla.
3
Llega el momento de añadir las relaciones entre estas tablas. Para ello, pulsa el botón Relaciones de la Barra de herramientas. Entrarás en la ventana de relaciones. Pulsa el botón Agregar y se abrirá una nueva ventana de creación de la relación. En esta ventana, selecciona Especificación de tablas y columnas y pincha en el globo de Selección. Ahora podrás ver una nueva ventana de selección de tablas y campos. Elige como Tabla de clave princi-
pal la tabla "Curso" y como Tabla de clave externa ya tendrás seleccionada "Alumnos_Cursos", puesto que es en la que te encontrabas cuando has pulsado el botón Relaciones. Ahora tienes que seleccionar las columnas de cada una de las claves del desplegable de selección de columnas en cada una de las tablas. Es sencillo. En ambos casos elige id_curso, ya que has utilizado el mismo nombre en las dos tablas para facilitar la relación, incluso, recuerda que indicaste que las dos columnas tuvieran el mismo tipo de datos. Pulsa Aceptar para confirmar la relación.
4
De la misma manera, ahora tienes que agregar la relación con alumnos. Vuelve a pinchar en el botón Agregar, selecciona Especificación de tablas y columnas y pincha en el globo de Selección. Elige como Tabla de clave principal la tabla "Alum-
2
Se abrirá la ficha de tabla. Dirígete a la ventana de Propiedades y modifica la propiedad Name introduciendo el valor Alumnos_Cursos. Después, añade el campo id_curso en el Nombre de la columna; en la columna tipo de datos selecciona
5
Ahora se te presenta otra situación diferente con los profesores, ya que, un profesor puede impartir muchos cursos pero un curso sólo puede ser impartido por un profesor. Por ello debe existir una referencia a la tabla profesores para asegurarte que el profesor que vas a indicar que imparte ese curso realmente existe en tu sistema. Desde el Explorador de bases de datos despliega "Curso.mdf", así como la carpeta Tablas. Selecciona la tabla "Cursos" haciendo click dos veces sobre ella. Se desplegará la ficha de la tabla con los datos que has especificado en apartados
anteriores. Añade un nuevo campo cuyo Nombre de columna sea id_profesor, el tipo de datos sea numérico y que sea obligatorio para que no pueda existir ningún curso sin profesor. Pulsa el botón Guardar de la Barra de herramientas para almacenar los cambios realizados en la base de datos.
6
De nuevo hay que añadir relaciones entre estas tablas. Para ello pulsa el botón Relaciones de la Barra de herramientas. Una vez en la ventana de Relaciones, pulsa el botón Agregar, se abrirá una nueva ventana de creación de la relación. En esta ventana selecciona Especificación de tablas y columnas y pincha en el globo Selección. Elige como Tabla de clave principal la tabla "Profesores" y como Tabla de clave externa ya tendrás seleccionada "Cursos".
nos" y como Tabla de clave externa ya tendrás marcada "Alumnos_Cursos". Ahora tienes que seleccionar las columnas de cada una de las claves en cada una de las tablas. En ambos casos elige id_alumno. Pulsa
7
Ahora tienes que seleccionar las columnas de cada una de las claves del desplegable de selección de columnas de cada una de las tablas. Elige id_profesor en ambos casos para facilitar la relación, incluso recuerda que has indicado que las dos columnas tengan el mismo tipo de datos.
Nº 151
▲
numéricos -ya que es el tipo que asignaste al campo id_curso en la tabla Cursos- y añade también el campo id_alumno con el tipo numerico por el mismo motivo. Ambos campos deben ser obligatorios ya que no tendría sentido que faltara alguno de los valores en esta asociación.
151_60_66_Curso.indd 4
Aceptar. Cierra la ventana de Relaciones pulsando el botón Cerrar y guarda de nuevo pulsando el botón Guardar todo de la Barra de herramientas.
63 27/7/06 08:37:32
Curso nar todos los cambios que has realizado en tu base de datos. Al verse afectadas las tablas por estos cambios, el programa te pide un confirmación de que deseas proseguir. Debes pulsar Sí.
Pulsa Aceptar para confirmar la relación. Después, cierra la ventana haciendo click en el botón Cerrar y, por último, pulsa en Guardar todo para almace-
8
Una vez definida toda la estructura de la base de datos simplemente quedaría insertar datos, que es el objetivo final de toda base de datos. Para ello desde el Explorador de bases de datos despliega "Curso.mdf", abre la carpeta Tablas y selecciona la tabla "Profesores". Pulsa con el botón derecho del ratón sobre ella y elige la opción Mostrar datos de tabla. Se abrirá una ficha donde aparece la tabla vacía con un solo registro con todos sus valores a Null (Vacíos). Introduce los valores para los profesores que consideres oportunos y pulsa Enter. Ten en cuenta que el campo id_profesor se rellenará automáticamente al haberlo estable-
cido como un Campo clave y de Identidad. Puedes insertar tantos registros como consideres oportuno. Realiza los mismos pasos para insertar registros en la tabla "Cursos" y en la tabla "Alumnos".
Resumiendo... 1 Explorador de bases de datos 3 Abrir "Cursos.mdf" 3 Carpeta Tablas 3 Pulsar botón derecho 3 Agregar nueva tabla
2 Propiedades 3 Name: Alumnos_Cursos 3 Nombre de la columna: id_ curso 3 Tipo de datos 3 Numéricos 3 Nombre de la columna: id_alumno 3 Tipo de datos 3 Numéricos 3 Relaciones 3 Agregar 3 Especificación de tablas y columnas 3 Selección 3 Tabla de clave principal: "Curso" 3 Tabla de clave externa: "Alumnos_Cursos" 3 Elegir id_curso 3 Aceptar 4 Agregar 3 Especificación de tablas y columnas 3 Globo de Selección 3 Tabla de clave principal: "Alumnos" 3 Tabla de clave externa: "Alumnos_ Cursos" 3 Elegir id_alumno 3 Aceptar 3 Cerrar 3 Guardar todo
5 Explorador de bases de datos 3 Abrir "Curso.mdf" 3 Tablas 3 Seleccionar la tabla "Cursos" 3 Nombre de columna: id_profesor 3 Tipo de datos 3 Numéricos 3 Guardar 6 Relaciones 3 Agregar 3 Especificación de tablas y columnas 3 Globo de Selección 3 Tabla de clave principal: "Profesores" 3 Tabla de clave externa: "Cursos" 7 Elegir id_profesor 3 Aceptar 3 Cerrar 3 Guardar todo 3 Sí 8 Explorador de bases de datos 3 Abrir "Cursos.mdf" 3 Carpeta Tablas 3 Seleccionar tabla "Profesores" 3 Pulsar con el botón derecho del ratón 3 Mostrar datos de tabla 3 Introducir los valores para los profesores 3 Repetir el procedimiento para insertar registros de Cursos y Alumnos
Conecta tu proyecto a la base de datos Ya que has creado un entorno de base de datos y sabes cómo modificarlo y acceder a él, llega el momento de conectar tu base de datos a un proyecto que quieras realizar en Visual Basic y que te proporcione un interfaz de usuario con todas las funcionalidades que necesites. Tienes que saber que puedes realizar tantas aplicaciones como necesites, que escriban y recojan datos de la misma base de datos, lo que te da mucha versatilidad a la hora de pensar en una solución apropiada para tu casa u oficina. De la misma manera, desde una misma aplicación podrás acceder a varias bases de datos y así se podría complicar tu desarrollo todo lo necesario según las necesidades que llegues a tener. Aunque siempre que diseñes la arquitectura de tu sistema piensa en la solución más simple y que ofrezca un mejor rendimiento.
Agregar nuevo origen de datos, selecciona la base de datos y pulsa botón Siguiente. Tras esto, elige también la tabla de profesores y, dentro de ellas, todos los campos excepto el campo id_profesor. Introduce un nombre para el conjunto de datos -por defecto será CursosDataSet1-. Aunque podrías poner cualquier nombre como por ejemplo dsProfesores. Pulsa en Finalizar.
1
Aunque puedes programar absolutamente todos los detalles del acceso a datos, lo más cómodo, sobre todo ahora que estás empezando, es utilizar los asistentes que proporciona Visual Basic 2005 Express Edition para configurar estas conexiones e incluso para crear formularios de edición simple de tus datos. Pulsa la pestaña Orígenes de datos que se encuentra junto al Explorador de soluciones. Después, presiona el botón
64 151_60_66_Curso.indd 5
2
Ya has creado el conjunto de datos de profesores y puedes acceder a él desde la pestaña de Orígenes de datos. Para incluir esta información en un formulario, selecciona el tipo de vista Detalle y después el dataset Profesores. Arrástralo hasta el formulario –Form1- existente en tu proyecto. Sorprendentemente verás como en tu formulario se crea una barra de edición de registros con los botones necesarios: Siguiente, Anterior, Primero, Último, Añadir, Modificar y Eliminar.
También aparecerá un campo con el número de registro por si quieres acceder a algún registro directamente. Asimismo aparecerán en el formulario todos los campos que tenías seleccionados en tu conjunto de datos de Profesores, con lo que ya dispones de todo lo necesario para tu pantalla de administración de profesores y todo ello sin haber introducido una sola línea de código.
www.pctoday.es 27/7/06 08:37:39
Visual Basic 2005 Express Edition. Parte 6ª
3
Todavía quedan un par de detalles, sobre todo de carácter estético. Selecciona y alarga los controles para que ocupen más espacio en el formulario. En la ventana de Propiedades, edita la propiedad Name e introduce el valor Profesores. En la misma ventana edita la propiedad Text, que representa el título a mostrar en el formulario, y añade el valor Profesor. Por último, y para dar
Pulsa la pestaña de Orígenes de datos que se encuentra junto al Explorador de soluciones. Tras esto, presiona el botón Agregar nuevo origen de datos, selecciona la base de datos y pulsa el botón Siguiente. En un siguiente paso, selecciona la cadena de conexión a tu base de datos -concretamente CursosConnectionString, que es la que aparece seleccionada por defecto-. Finalmente, elige la tabla de "Cursos" e introduce un nombre para el conjunto de datos, por ejemplo dsCursos.
formulario con la propiedad Backcolor. Elige, como antes, el valor PowderBlue de la pestaña de Colores Web. Pulsa el botón Guardar todo. Para comprobar cómo funciona tu formulario pulsa con el botón derecho sobre el nombre de tu proyecto en el Explorador de soluciones, indica como Formulario de inicio a Cursos, pulsa Guardar y cierra la ficha.
7
Por último, resta agregar y configurar el formulario para la gestión de alumnos. Para ello, pulsa el botón derecho de tu ratón sobre el proyecto en el Explorador de soluciones. Selecciona la opción Agregar, Nuevo elemento y WindowsForm. Después, indica el nombre del formulario -en este caso, será Alumnos.vb-. Pulsa Agregar y comprueba, por si su hubiera producido algún error, que tu nuevo formu-
1 Inici
2005 3A del p 3A botó 2 Click inter 3 Puls rató Puls
5
Ya has creado el conjunto de datos de cursos y puedes acceder a ellos desde la pestaña de Orígenes de datos. Para incluir esta información en un formulario, selecciona el tipo de vista Detalles, haz click sobre el dataset Cursos y arrástralo hasta el formulario que has creado anteriormente en tu proyecto. Verás cómo en tu formulario se crea de nuevo la
lario aparece en tu Explorador de soluciones. Ahora tienes que agregar el conjunto de datos (dataset) para Alumnos. Para ello, abre la pestaña de Orígenes de datos, pulsa el botón Agregar nuevo origen de datos, selecciona la base de datos y pulsa el botón Siguiente. Después, elige la cadena de conexión a tu base de datos así como la tabla Alumnos. Introduce un nombre para el conjunto de datos, por ejemplo dsAlumnos, que se referirá al conjunto de datos de gestión de alumnos.
un aspecto más agradable a tu formulario, desde la ventana Propiedades selecciona la propiedad llamada Backcolor y elige, por ejemplo, el valor PowderBlue de la pestaña de Colores Web. Finalmente, pulsa el botón Guardar todo. Si presionas F5 podrás comprobar cómo aparecen los registros de la base de datos y también podrás fácilmente añadir nuevos o modificar los existentes.
barra de edición de registros con los botones necesarios: Siguiente, Anterior, Primero, Último, Añadir, Modificar y Eliminar. Además, aparecerá un campo con el número de registro por si quieres acceder a algún registro directamente. Asimismo han aparecido en el formulario todos los campos que tenías seleccionados en tu conjunto de datos de Cursos.
8
Ya puedes acceder al dataset de alumnos desde la pestaña de orígenes de datos. Para incluir esta información en un formulario, selecciona el tipo de vista Detalle, así como el dataset Alumnos y arrástralo hasta el formulario que has creado anteriormente en tu proyecto. En el formulario se crea una barra de edición de registros con sus botones necesarios, así como un campo con el número de registro por si quieres acceder a algún registro de forma
6
4
Nº 151 151_60_66_Curso.indd 6
directa. Vuelve a retocar los detalles estéticos con has hecho con el formulario anterior. Tras pulsar el botón Guardar todo, pulsa con el botón derecho sobre el nombre de tu proyecto en el Explorador de soluciones e indica como formulario de inicio Alumnos. Pulsa el botón Guardar y cierra la ficha. Presiona F5 para ejecutar tu aplicación.
▲
Ahora tienes que crear el formulario para la administración de cursos. Para ello pulsa con el botón derecho sobre el proyecto en el Explorador de soluciones. Selecciona la opción Agregar, Nuevo elemento, WindowsForm e indica el nombre del formulario, en este caso Cursos.vb. Haz click sobre Agregar y verás cómo tu nuevo formulario aparece en tu Explorador de soluciones. Ahora tienes que agregar el conjunto de datos (Data Set) para cursos.
Vuelve a retocar detalles estéticos. Selecciona y alarga los controles para que ocupen más espacio en el formulario, En la ventana de Propiedades, edita la propiedad Name e introduce el valor Cursos. En la misma ventana escribe, en la propiedad Text el nombre Curso. Por último y para dar un aspecto más estético a tu formulario, cambia el color del
65 27/7/06 08:37:48
Curso Resumiendo... 1 Pestaña Orígenes de datos 3 Agregar nuevo origen de datos 3 Seleccionar base de datos 3 Siguiente 3 Elegir tabla "Profesores" 3 Elegir todos los campos excepto "id_profesor" 3 Poner nombre al conjunto de datos 3 Finalizar 2 Seleccionar Vista Detalles 3 Arrastrar dataset Profesores al formulario 3 Seleccionar y alargar los controles del formulario 3 Name: Profesores 3 Text: Profesor 3 Propiedades 3 Backcolor: PowderBlue 3 Guardar todo 3 Presionar F5 4 Botón derecho sobre el nombre del proyecto 3 Agregar 3 Nuevo elemento 3 WindowsForm 3 Escribir nombre del formulario 3 Agregar 3 Pestaña Orígenes de datos 3 Agregar nuevo origen de datos 3 Seleccionar base de datos 3 Siguiente 3 Seleccionar cadena de conexión 3 Seleccionar tabla Cursos 3 Dar nombre al conjunto de datos
5 Seleccionar Vista Detalle 3 Arrastrar dataset Cursos al formulario 6 Seleccionar y alargar los controles del formulario 3 Name: Cursos 3 Text: Curso 3 Propiedades 3 Backcolor: PowderBlue 3 Guardar todo 3 Botón derecho sobre nombre del proyecto 3 Formulario de inicio: Cursos 3 Guardar 3 Cerrar 7 Botón derecho sobre el nombre del proyecto 3 Agregar 3 Nuevo elemento 3 WindowsForm 3 Escribir nombre del formulario 3 Agregar 3 Pestaña Orígenes de datos 3 Agregar nuevo origen de datos 3 Seleccionar base de datos 3 Siguiente 3 Seleccionar cadena de conexión 3 Seleccionar tabla Cursos 3 Dar nombre al conjunto de datos 8 Seleccionar Vista Detalle 3 Arrastrar dataset Alumnos al formulario 3 Guardar todo 3 Botón derecho sobre nombre del proyecto 3 Formulario de inicio: Alumnos 3 Guardar 3 Cerrar
Consulta tus datos Aunque, una vez tengas tu aplicación terminada, será esta la que se encargue de gestionar los datos que almacenes en tu base de datos, siempre te vendrá bien conocer algunos conceptos básicos sobre cómo ver los datos almacenados. Para ello Visual Basic 2005 te ofrece, en su entorno de desarrollo, la posibilidad de acceder a realizar consultas de tus datos así como la potencia para poder realizar las consultas más complejas.
2
De nuevo, desde el Explorador de base de datos, selecciona tu base de datos "Cursos" y pulsa con el botón derecho sobre la tabla "Cursos". En el menú desplegable, elige la opción Mostrar datos. Se abrirá la ficha de Edición de datos, como en el paso anterior.
1
Desde el Explorador de base de datos que se encuentra junto al Cuadro de herramientas, selecciona tu base de datos "Cursos" y pulsa con el botón derecho sobre la tabla "Profesores". Después, selecciona la opción Mostrar datos. Se abrirá la ficha de Edición de datos. Esta vista se denomina Panel de resultados. Pulsa el botón del Panel de diagrama de la Barra de herramientas y después el de Panel de
Pulsa el botón del Panel de diagrama y el Panel de criterios, de nuevo aparecerá la tabla "Cursos" con todos sus campos, en la que podrás seleccionar los que desees. Elige, por ejemplo, los campos Nombre, Fecha Inicio y Fecha Fin. Después, marca la opción Filtro del campo, Fecha inicio, e indica "< ‘01/06/2006’", con esto indicas que quieres realizar una consulta de todos los cursos, listados
por nombre y fechas de inicio y fin, que comiencen antes del mes de junio. Si además quieres que aparezcan ordenados por orden cronológico en la columna tipo de orden del campo Fecha de inicio, selecciona o introduce el valor Ascendente. Pulsa el botón Ejecuta SQL de la Barra de herramientas para obtener el resultado.
3
Una vez más, vuelve al Explorador de base de datos, selecciona tu base de datos "Cursos" pero ahora pulsa con el botón derecho sobre la tabla "Alumnos". Selecciona la opción Mostrar datos. Se abrirá la ficha de Edición de datos que has utilizado anteriormente. Pulsa el botón del Panel de diagrama y el Panel de criterios de la Barra de herramientas. La tabla que aparecerá ahora con todos sus campos es la de Alumnos. Elige, como el ocasiones anteriores, los campos Nombre, Apellidos y Corriente de Pago. En el filtro del campo Corriente de pago, indica = 0", para realizar una consulta de todos los alumnos listados por nombre y apellidos, además de conocer si están al corriente de pago. Si además quieres que aparezca el campo teléfono, selecciónalo del Panel de diagra■ ma y vuelve a pulsar el botón Ejecuta SQL.
Resumiendo... 1 Explorador de bases de datos 3 Base de criterios. Estos paneles te permiten, en la práctica, generar todas las consultas que necesites hacer a tu base de datos de la manera más visual y sencilla posible. Aparecerá la tabla Profesores con todos sus campos y una opción de marcado que te permite seleccionar cada uno de ellos. Selecciona, por ejemplo, los campos Nombre y Apellidos. También selecciona en la columna tipo orden, del campo Nombre, la opción Ascendente. De esta manera has conseguido realizar una consulta de todos los profesores, listados con nombre y apellidos y ordenados alfabéticamente de manera ascendente.
datos "Cursos" 3 Botón derecho sobre "Profesores" 3 Mostrar datos 3 Ficha de Edición de datos 3 Panel de diagrama 3 Panel de criterios 3 Marcar: Nombre y Apellidos 3 Tipo de orden 3 Ascendente 2 Explorador de bases de datos 3 Base de datos "Cursos" 3 Botón derecho sobre "Cursos" 3 Mostrar datos 3 Ficha de Edición de datos 3 Panel de diagrama 3
Panel de criterios 3 Marcar: Nombre, fecha inicio y Fecha fin 3 Indicar "< ‘01/06/2006’" 3 Tipo de orden 3 Ascendente 3 Ejecuta SQL 3 Explorador de bases de datos 3 Base de datos "Cursos" 3 Botón derecho sobre "Alumnos" 3 Mostrar datos 3 Ficha de Edición de datos 3 Panel de diagrama 3 Panel de criterios 3 Marcar: Nombre, Apellidos y Corriente de pago 3 Indicar =0"
66 151_60_66_Curso.indd 7
27/7/06 08:37:52
Curso
Asegurar e imprimir Aunque tu aplicación cumpla las funcionalidades que hayas definido no es suficiente. Además, tienes que pensar en otros aspectos como la seguridad y en numerosas funcionalidades que son comunes a varias aplicaciones, como las de impresión.
Guía del curso 1. Aprende a programar con Visual Basic 2005 Introducción. Ayuda. Tu primer programa
PC Today no 146
2. Starter Kit y plantillas Creación y personalización de un proyecto
PC Today no 147
3. Controles, tipos y variables Programación orientada a objeto.
PC Today no 148
4. El lenguaje de programación Sentencias e instrucciones. Condiciones y bucles PC Today no 149
5. Diseño de aplicaciones Depuración del código
PC Today no 150
6. Acceder a bases de datos SQL Server 2005 Express
PC Today no 151
7. Asegurar e imprimir Control de acceso, usuarios y perfiles
PC Today no 152
8. Pruebas y control de errores Manejando los errores. El plan de pruebas
PC Today no 153
9. Instalación y despliegue Creación y ejecución de un instalador
58 152_58_65_Curso VB.indd 1
PC Today no 154
U
n asunto cada vez más importante en el desarrollo de aplicaciones es el de la seguridad. La seguridad desde el punto de vista del desarrollo se puede agrupar, por un lado en el control de acceso a la aplicación -lo cual incluiría la gestión de usuarios y contraseñasy, por otro lado, en la defensa frente ataques que pretenden llegar a los datos almacenados en tu aplicación o bases de datos a las que se conecta. En este sentido, es habitual en las aplicaciones de gestión registrar qué usuario realiza cada modificación de datos o, al menos, cuál ha sido el último usuario en modificarlos. Estos controles son muy útiles a la hora de determinar fallos en la aplicación producidos por una
utilización indebida por parte de los usuario, lo que supone un error de tu aplicación. Una utilidad del control de acceso consiste en personalizar el acceso o funcionamiento para cada usuario, ya sea mediante un saludo personalizado, funcionalidades diferentes para cada usuario relacionadas con los privilegios que quieras otorgar a cada uno, etc. También puedes personalizar objetos por usuario. Por ejemplo, en una aplicación de gestión de películas de DVDs puedes asociar a cada usuario las películas que le pertenecen y luego decidir si quieres compartirlas con el resto de usuarios o no. En definiti-
va, el número de opciones a la hora de establecer controles de acceso es enorme y siempre dependerá de las funcionalidades que quieras o tengas que implementar en tu aplicación. Otra funcionalidad muy requerida en todas las aplicaciones de Escritorio es la de impresión. Y es que, aunque las aplicaciones te permiten sustituir completamente el soporte de papel, con la experiencia en el desarrollo de software te irás dando cuenta que te resistirás a abandonar la costumbre de ver tus datos en papel impreso. Además con estas funcionalidades Visual Basic 2005 Express te hará la vida más fácil.
La capacidad de imprimir es una de las utilidades más valoradas en las aplicaciones de Escritorio
www.pctoday.es 10/8/06 10:41:50
Visual Basic 2005 Express Edition. Parte 7ª
Recupera tu proyecto Aunque no es la solución óptima –lo mejor es diseñar el programa teniendo en cuenta ya los aspectos de seguridad- es posible añadir seguridad y funciones extendidas a tu programa una vez has finalizado las funcionalidades principales. El cuándo añadir estas funcionalidades, si fueran necesarias, lo decidirás en la etapa de análisis. Del mismo modo, mediante la planificación sabrás cuándo vas a implementarlas en tu programa.
1
Vas a recuperar el proyecto de Mi Colección de Películas con conexión a Amazon con datos que ya creaste en capítulos anteriores. Para ello, desde el menú de Inicio de Windows, ejecuta Visual Basic 2005 Express. Una vez en la interfaz principal del programa, selecciona el menú Archivo y Abrir proyecto. Después, localiza la carpeta donde almacenaste el proyecto "MisDvdsAmazon", selecciona el fichero de solución y pulsa el botón Abrir. Si por alguna razón no encuentras este proyecto, puedes rea-
pulsar Finalizar. Tras esto, un mensaje en la pantalla te indicará que la instalación se ha realizado correctamente. Pulsa el botón Cerrar para que desaparezca el Asistente de instalación del Starter kit.
3
Crea un nuevo proyecto utilizando el Starter Kit que acabas de descargar. Desde el menú de Inicio, ejecuta Visual Basic 2005 Express y, en su barra de menús, selecciona Archivo. Dentro de este menú, elige la opción Nuevo proyecto. Después, selecciona el Starter Kit denominado Amazon-Enabled Movie Collection desde la nueva carpeta Starter Kit que has creado tras la instalación. En la casilla corres-
ninguna otra propiedad que afecte a la programación -recuerda que la referencia a objetos de un formulario se realiza mediante la propiedad Name, esta propiedad no la has modificado y de realizarse en el programa alguna acción sobre el control lo haría llamando a Label1-. De la misma manera ve seleccionando en el formulario todos los textos que quieras traducir y modifica su propiedad Text, por ejemplo, selecciona el botón Search -el objeto SearchButton1- y edita su Text insertando el valor Buscar.
5 pondiente, introduce el nombre que quieras para este nuevo proyecto -por ejemplo, MisDvds- y pulsa Guardar. Nuevamente aparecerá la ficha de documentación del nuevo proyecto que has creado y se desplegarán en el Explorador de soluciones todos los ficheros necesarios del proyecto.
▲
lizarlo de nuevo. Accede a msdn.microsoft.com/vbasic/ downloads/starterkits/default.aspx para descargarte el Starter kit de Mi colección de películas. Selecciona el Starter Kit Amazon-Enabled Movie Collection Starter Kit. Será necesario que aceptes unas cláusulas legales de uso de esta plantilla. A continuación aparecerá una ventana en la que se pregunta sobre qué deseas hacer con el fichero de instalación del Starter kit. Indica que quieres descárgalo a tu PC para ejecutarlo una vez terminada la descarga.
Para el ver el resultado, ejecuta tu aplicación Para ello, pulsa en el menú Depurar y en Iniciar depuración. Después, haz click sobre el botón Search online (o Búsqueda en línea, si lo has traducido). Aparecerá la ventana de búsqueda con todas las funcionalidades habilitadas. Introduce el nombre de la película que deseas buscar y pulsa el botón Buscar. Debes tener habilitada tu conexión a Internet dado que esta funcionalidad se conecta al servicio Web de Amazon para realizar la búsqueda.
4
El proyecto que has creado se puede editar por completo. Prueba, por ejemplo, a cambiar el texto en las etiquetas para modificar el idioma. Puedes hacerlo desde el Explorador de soluciones si seleccionas el formulario "SearchOnline. vb" y pulsas sobre el botón de Vista diseño. Posteriormente, en la ventana de Propiedades, selecciona el control Label1, edita la propiedad Text e introduce el valor Buscar por. Como puedes observar, en la pantalla se modifica el texto sin que se haya alterado
Resumiendo... 1 Inicio 3 Visual Basic 2005 Express 3
2
Una vez descargado el fichero de instalación, ahora tienes que ejecutarlo. El fichero se ha almacenado con el nombre "AmazonMovieCollection_1_3_vb_rtm.vsi". Haz doble click sobre él. Una vez más tendrás que aceptar los términos legales de uso. Hecho esto, visualizarás el Starter Kit que deseas instalar y deberás pulsar en Siguiente. Aparecerá una nueva ventana de confirmación en la que debes
Archivo 3 Abrir proyecto 3 Localizar "MisDVdsAmazon” 3 Abrir 3 Descargar Amazon-Enabled Movie Collection Starter Kit 3 Descargar 2 Ejecutar "AmazonMovieCollection_1_3_ vb_rtm.vsi" 3 Aceptar términos legales 3 Siguiente 3 Finalizar 3 Cerrar 3 Inicio 3 Visual Basic 2005 3 Archivo 3 Nuevo
Nº 152 152_58_65_Curso VB.indd 2
proyecto 3 Amazon-Enabled Movie Collection 3 Escribir nombre para el proyecto 3 Guardar 4 Explorador de soluciones 3 Seleccionar formulario "SearchOnline.vb" 3 Vista diseño 3 Ventana Propiedades 3 Label1 3 Text: Buscar por 3 Repetir el proceso con todos los textos a traducir 5 Depurar 3 Iniciar depuración 3 Search online 3 Introducir nombre de la película 3 Buscar
59 10/8/06 10:41:58
Curso
Maneja usuarios Simplificando mucho el problema de la seguridad y el control de acceso, finalmente deberás dar credenciales a ciertos usuarios para que puedan acceder a ciertas partes de tu programa o, de la misma manera, negar el acceso a otras partes de tu programa a otros usuarios. La manera más simple de hacerlo es que guardes los usuarios y sus permisos en alguna tabla dentro de la base de datos de tu programa.
1
Desde el Explorador de bases de datos despliega la base de datos "DVDCollectionDataBase.mdf". Hecho esto, sobre la carpeta Tablas, pulsa con el botón derecho de tu ratón y elige la opción Agregar nueva tabla. Verás cómo se abre la ficha de tabla. En ella tienes que añadir los campos necesarios para cada una las tablas que vayas a crear. Para crear la tabla Usuarios, una vez abierta la ficha de nueva tabla, ve a la ventana de Propiedades y modifica la propiedad Name introduciendo en ella el valor Usuarios. Ahora tienes que incluir los distintos campos y el tipo de datos que contendrán.
Arquitectura de 3 capas
3
conexión, deja la marcada por defecto -Connection (My Settings)- y vuelve a pulsar Siguiente. Finalmente llegarás a la ventana de Selección de objetos de tu base de datos. Despliega las tablas y selecciona la tabla de usuarios que acabas de crear. Escribe un nombre para tu "dataset" que te permita distinguir su uso y contenido –por ejemplo, UsuariosDataSet- y haz click sobre Finalizar.
4
Arrastra el nuevo objeto "dataset" a tu formulario. Verás como se crean, en la parte inferior de este, un objeto TableAdapter y un objeto DataSet para conectar con tu origen de datos. Al crear estos controles también ha surgido, en el método de carga del formulario, una llamada para cargar los datos: Me.UsuariosTableAdapter. Fill(Me.UsuariosDataSet.Usuarios) Ahora tienes que crear una función que consulte si el usuario y contraseña son correctos. Esta función será pública y puedes situarla, bien en el formulario de login, bien creando una nueva clase. En este caso, y para simplificar la implementación, defínela directamente en la clase del formulario de login. Así, la función quedaría definida de tal manera que devolverá el valor verdadero si el usuario y contraseña son correctos y falso si no lo son. Lógicamente los parámetros que debe recibir la función serán usuario y contraseña.
5
Ahora tienes que añadir el formulario de login. Para ello, desde el Explorador de soluciones, pulsa con el botón derecho del ratón sobre tu proyecto y selecciona Agregar y Windows Forms. En la nueva ventana que se abre, debes seleccionar el tipo LoginForm. Determina también el nombre del formulario que, por defecto, será "LoginForm1.vb" y pulsa sobre Aceptar. Aparecerá, en la ventana de edición, un completo formulario con los campos de usuario y contraseña así como un bonito diseño. Vuelve al Explorador de soluciones y pulsa con el botón derecho sobre el proyecto. Después, haz click en el botón Propiedades. Aparecerá la ventana, que has visto ya en numerosas ocasiones, en la que podrás cambiar el formulario de inicio. Indica como Formulario de inicio el formulario de login: FormLogin1. También debes modificar la propiedad Modo de apa-
▲
2
En la ficha de la tabla, añade los campos introduciendo el nombre del campo en la columna Nombre de columna. En primer caso, añade Nombre en el nombre de la columna, selecciona el tipo de datos en la columna correspondiente y, en este caso, como el nombre es un texto, elige la opción varchar. Además, debes seleccionar una longitud para el campo -por ejemplo, 50 caracteres-. Para finalizar, determina si el campo es obligatorio -en este caso, sí lo será-. Prosigue aña-
Lo que en programación se denomina arquitectura de 3 capas se compone de los siguiente elementos. En primer lugar, la Capa de presentación, que está formada por los componentes de la interfaz de usuario (IU). Estos componentes pueden entenderse como la parte con la cual interactuará el usuario: las ventanas o formularios de tu programa. La Capa de negocio encapsula la lógica de negocio de tu programa; las entidades empresariales, que representan objetos que van a ser manejados o consumidos por toda la aplicación. Estos podrían ser un modelo de objetos, xml, etc., con tipo, estructuras de datos, etc. que permitan representar objetos de tu aplicación. También podrás utilizar otros tipos de objetos que contengan lógica de negocio, como componentes realizados en Visual Basic 6 o C++ y generados como dll o ejecutables. Finalmente, la Capa de acceso a datos es la que contendrá las clases que interactúan con la base de datos. Estas clases surgen como una necesidad de mantener la cohesión entre clases y te ayudarán a reducir la dependencia existente entre las clases y capas. ■
Otro aspecto importante es el relativo al acceso a esos datos. Como principio general de todo desarrollo que vayas a realizar, es conveniente separar en capas las diferentes clases de tu programa -esto es lo que se denomina Arquitectura software de 3 capas-. Desde la pestaña de Orígenes de datos pulsa el botón Nuevo origen de datos. Una vez en la ventana de Selección de origen de datos elige la opción Nueva base de datos y pulsa Siguiente. Por lo que se refiere a la Cadena de
diendo el campo Apellidos -también será de tipo varchar aunque la longitud será de 128 y también será obligatorio-, el campo para almacenar el usuario -en el nombre de columna introduce Usuario, en el tipo de datos también varchar(50) y ajusta el campo como obligatorio-, y el campo de la Contraseña –bajo el nombre Password-.
60 152_58_65_Curso VB.indd 3
www.pctoday.es 10/8/06 10:42:04
Curso gado, marcando, Al cerrar el último formulario. De esta forma te asegurarás que la aplicación permanecerá ejecutándose hasta que cierres la última ventana.
6
Ahora te quedaría realizar la comprobación de que todo funciona correctamente. Al pulsar el botón OK, si el usuario y contraseña son correctos, deberías poder continuar hasta el formulario principal de tu aplicación, donde podrás añadir
y consultar tus películas DVD. De lo contrario, debe aparecer un mensaje indicándote que el usuario y la contraseña no son correctos. Desde la ventana de Diseño del formulario, haz doble click sobre el botón Aceptar cuya propiedad Name es OK. Se abrirá la pantalla de edición de código sobre el método Ok_click que representa el método que se va a ejecutar cuando se produzca el evento click de ese botón. O, en otras palabras, lo que ocurrirá cuando el usuario haga click sobre OK.
7
Como puedes observar, aparece una advertencia del Editor de Visual Basic porque no has definido la propiedad CurrentUserID en el formulario principal. Esta propiedad la utilizarás para poder saber en todo momento el usuario que ha introducido su contraseña y está trabajando en tu sistema. Para añadir la propiedad desde el Explorador de soluciones, ve a la ventana Ver código del formulario MainForm.
Ahora puedes comprobar que la advertencia que aparecía en el formulario de login ha desaparecido. Después de pulsar el botón Guardar todo, para asegurarte de que no perderás ningún dato, pulsa sobre el botón F5 y prueba la aplicación. Introduce en las casillas correspondientes, el nombre de usuario y contraseña válido que hayas insertado en la base de datos y espera a que la aplicación te dé acceso.
Resumiendo... 1 Explorador de bases de datos 3 "DVDCollectionDataBase.
4 Arrastrar el "dataset" al formulario 3 Crear objeto TableAdapter y
mdf" 3 Botón derecho del ratón sobre Tablas 3 Agregar nueva tabla 3 Crear tabla Usuarios 2 Nombre de columna: Nombre 3 Varchar (50) 3 Campo obligatorio 3 Nombre de columna: Apellidos 3 Varchar (128) 3 Campo obligatorio 3 Repetir proceso con campos Usuario y Contraseña 3 Orígenes de datos 3 Nuevo origen de datos 3 Siguiente 3 Selección de origen de datos 3 Nueva base de datos 3 Siguiente 3 Dejar marcada Cadena de conexión por defecto 3 Siguiente 3 Selección de objetos de la base de datos 3 Analizar
DataSet 3 Crear función de verificación de contraseña 5 Explorador de soluciones 3 Pulsar con botón derecho del ratón sobre el proyecto 3 Agregar 3 Windows Forms 3 Seleccionar LoginForm 3 Escribir nombre del formulario 3 Aceptar 3 Propiedades 3 Formulario de inicio: formulario de login 6 Comprobar funcionamiento 3 Introducir usuario y contraseña 3 Pulsar OK 7 Explorador de soluciones 3 Formulario MainForm 3 Ver código 3 Guardar todo... 3 Pulsar F5
Comienza a imprimir Debes recordar que las aplicaciones que estás desarrollando en este curso son de las llamadas de Escritorio o aplicaciones Windows. Estas se ejecutan en tu PC utilizando controles instalados en tu propia máquina. Dentro de este tipo de aplicaciones son especialmente importantes las funcionalidades de impresión, ya que aportan un valor añadido que otro tipo de aplicaciones, como por ejemplo las aplicaciones Web, tienen más difícil ofrecer, puesto que, por principio, no instalan componentes en tu máquina y eso hace que la comunicación entre tu PC y tu impresora se realice siempre a través del navegador en el que se ejecuten (Ya sea Internet Explorer, Mozilla Firefox, etc.).
1
Continúa con tu proyecto "MisDvds". Si no lo tienes abierto, pulsa en las opciones Inicio, Todos los programas y Visual Basic 2005 Express Edition. Desde la pantalla de proyectos recientes, elige el proyecto "MisDVDs". Una vez abierto dicho proyecto verás que tienes a tu disposición todas las fichas que dejaste en la ocasión anterior en la que trabajaste con
Consejo Es una buena costumbre que cierres las fichas que no utilices ya que en proyectos grandes puedes tener un volumen de fichas en pestañas que puede resultar incluso inmanejable.
62 152_58_65_Curso VB.indd 4
el proyecto. Desde el Explorador de soluciones, elige el formulario "listDetails.vb" y pulsa el botón Ver diseñador. Aparecerá la ficha del formulario donde se listan y buscan las películas que tienes. En este formulario puedes ver una zona de Búsqueda y otra zona de Edición dentro del área de visualización de los datos de la película elegida. Desde ahí vas a acceder a las opciones de impresión que vas a implementar.
2
Pulsa F5 para comprobar el funcionamiento de la aplicación. Después de pasar por la pantalla de control de acceso que has implementado en los pasos anteriores, accederás a la página de búsqueda de películas de tu colección. Puedes insertar una película desde esta pantalla o pulsar el botón Búsqueda online. Introduce el nombre de una película, selecciona alguna de las opciones encontradas y pulsa el botón Añadir. Esto introducirá una nueva película en tu colección. Recuerda que en este momento te encuentras en un entorno de ejecución, por lo que las películas que estás añadiendo no permanecerán en la siguiente ejecución de la aplicacion. Desde la ficha de diseño del formulario arrastra un control de tipo button, edita la propiedad Name e introduce btn_imprimir.
www.pctoday.es 10/8/06 10:42:10
Visual Basic 2005 Express Edition. Parte 7ª Principales propiedades y métodos del objeto DefaultPrinter
Modifica también la propiedad Text y escribe el valor Imprimir. Finalmente, modifica la propiedad ForeColor e introduce el valor Black para que las letras del botón aparezcan de color negro.
3
Algo importante a la hora de utilizar las clases que no has creado tú mismo -incluso aunque sean las propias del Framework de Microsoft .NET- es la referencia. Para ello debes incluir, al principio del ámbito de ejecución, las librerías que vayas a utilizar. Por ejemplo, en el caso de la impresión, haz
doble click en el formulario y ve al principio del código mostrado e introduce encima de la declaración del formulario la referencia a las clases que vayas a utilizar. La sentencia para la inclusión es "Imports".
Métodos
BackColor: color de Fondo
DrawCircle: dibuja una circunferencia
ForeColor: color de letra
DrawFilledCircle dibuja un círculo
FontName: tipo de letra
WriteHorizontalLine: dibuja una ínea horizontal
MarginBottom: margen inferior
NewPage: inserta una nuava página
FontSize: tamaño de fuente
WriteLine: inserta un retorno de carro
Footer: pie de página
PrintToFile: imprime en un fichero
tanto System.Drawing.Text como System.Drawing. Printing -aunque ya tengas incluido System.Drawingy también que no existe posibilidad de incluir todo. Esto es así para optimizar el rendimiento, ya que sólo dispondremos de las referencias que realmente vayas a utilizar. Ten en cuenta este criterio de manera que sólo referencies los objetos necesarios y en el momento que dejes de utilizarlos eliminalos de tus referencias.
6
Desde el Explorador de soluciones selecciona de nuevo "ListDetails.vb" y pulsa el botón Ver diseñador. Aparecerá el formulario donde acabas de insertar el botón Imprimir. Haz doble click sobre el botón para acceder al código del evento click de ese control e inserta el siguiente código:
Siempre que realices una impresión, puedes controlar mediante el código cada uno de los aspectos relacionados con ella, a partir de la captura del evento "printpage". Cada impresión "levanta" el evento y debes tener en cuenta que por cada página de impresión, desde este evento se levantará otro evento del mismo tipo. Si quieres controlar cuándo se imprimirá la última página para enviar, por ejemplo, un aviso de finalización de impresión, debes consultar el valor de la variable "hasmorepages" y que su valor sea igual a "true". También debes tener en cuenta que, aunque Visual Basic 2005 ofrece la posibilidad de controlar mediante código hasta el más mínimo detalle en la implementación de cualquier acción, en la práctica nunca llegarás a este extremo ya que tendrás gran cantidad de con-
Puedes observar el uso de la instrucción "With", que te permite utilizar las propiedades de un objeto sin necesidad de introducir su nombre constantemente. Simplemente lo introduces al comienzo del bloque y pulsando el "." el editor del lenguaje Visual Basic sabrá a qué objeto te refieres.
troles que te facilitarán todas las tareas, Algunos de estos controles los proporciona el propio Visual Basic 2005 Express Edition, como verás en siguiente apartado, pero también existen muchos otros controles bien desarrollados por otras empresas o bien de libre distribución.
5
▲
4
A continuación debes introducir los nombres de los elementos. Para ello, una vez más, Intellisense te servirá de ayuda. A diferencia de otros lenguajes como Java, es necesario que en estas referencias incluyas todas las ocurrencias y de todos los niveles. Por ejemplo, como aparece en el ejemplo, debes incluir
Propiedades
Resumiendo... 1 Inicio 3 Todos los programas 3 Visual Basic
Consejo En programación, no debes tener miedo a "probar". El método prueba-error resulta de lo más efectivo: introduces las instrucciones que creas realizarán las funciones necesarias y pruebas su funcionamiento. Enseguida descubres qué es lo que falla, lo corriges y vuelves a probar.
2005 Express > Seleccionar "MisDVDs" 3 Explorador de soluciones 3 Seleccionar formulario listDetails.vb 3 Ver diseñador 2 Pulsar F5 3 Introducir usuario y contraseña 3 Introducir nombre de la película a buscar 3 Buscar 3 Elegir película 3 Añadir 3 Arrastrar control button al formulario 3 Name: btn_ imprimir 3 Text: Imprimir 3 ForeColor: Black 3 Click dos veces en formulario 3 Ir al princi-
Nº 152 152_58_65_Curso VB.indd 5
pio del código 3 Introducir referencia a las clases que se van a usar: Imports 4 Incluir System.Drawing.Text 3 Incluir System.Drawing.Printing 3 Incluir la posibilidad de incluir todo 5 Explorador de soluciones 3 Seleccionar "ListDetails.vb" 3 Ver diseñador 3 Click en botón Imprimir 3 Insertar código 6 Controlar la impresión mediante código 3 Capturar el evento "printpage"
63 10/8/06 10:42:16
Curso
4
Objetos avanzados de impresión
Una funcionalidad muy interesante es la de tener una vista previa el documento que has enviado a la impresora. Para ello, arrastra desde el Cuadro de herramientas un control del tipo
Pero la impresión va un poco más allá. Los usuarios están acostumbrados a tener funciones avanzadas para la impresión y, aún más, están habituados a tener gran control sobre todo el proceso de impresión. Para todo ello Visual Basic 2005 Express Edition ofrece una gran cantidad de controles que te permitirán manejar hasta los más pequeños detalles.
1
Vuelve a la ventana de Diseño del formulario donde estabas trabajando y añade, desde el Cuadro de herramientas, un control del tipo PrintDocument. Haz click dos veces sobre el objeto que aparece en tu pantalla, en la parte inferior y fuera del formulario. Como puedes observar es aquí donde se muestran todos los controles que has utilizado y que no corresponden propiamente al interfaz de tu aplicación, como los objetos de datos o los de impresión. Ahora, si haces doble click sobre el control PrintDocument1, se abrirá la ventana de código que corresponde al control de impresión de la página. Prueba a introducir algún código de configuración como, por ejemplo, el siguiente:
3
Para permitir que el usuario personalice sus propias opciones de impresión, debes utilizar el control PrintDialog. Arrastra al formulario un control de este tipo desde el Cuadro de herramientas. Edita la propiedad Document desde la ventana de Propiedades que se encuentra debajo del Explorador de soluciones. Recuerda que puedes personalizar todas las opciones de impresión desde tu código, tal y como has visto en pasos anteriores, si por cualquier razón no quieres que tus
PrintPreviewControl si deseas visualizar la impresión en el mismo formulario. Para tener la vista como un paso previo a la impresión debes utilizar el control PrintPreviewDialog. Arrastra un control de este tipo al formulario, aparecerá en la parte inferior junto al resto de controles.
5
Edita su propiedad Document y selecciona el documento de impresión PrintDocument1.Para mostrar el cuadro haz doble click en el botón de impresión y sustituye la instrucción Print() por: PrintPreviewDialog1.ShowDialog(). Haz click sobre Guardar todo en la barra de herramientas y pulsa F5 para ejecutar tu aplicación. Navega hasta la pantalla de listado de películas, selecciona una y pulsa el botón Imprimir. Verás como aparece la vista previa.
En estas líneas has preparado los objetos de configuración y otros de presentación para imprimir un documento con un borde rectangular.
2
Para añadir el contenido de la impresión, vas a utilizar los objetos del formulario en el que te encuentras. De esta manera no tendrás que realizar nuevos accesos a datos que, en definitiva, son los elementos que más van repercutir en el rendimiento de cualquier aplicación y, por supuesto, también en esta. Como te encuentras en el mismo formulario, para dar a los restantes objetos la referencia de dónde se encuentran los resultados de la selección que ha realizado el usuario, debes utilizar el objeto "me". Dicho objeto, en este caso, hará referencia al formulario en el que te encuentras. En el método donde has configurado las opciones de impresión ahora tienes que añadir las instrucciones necesarias para recuperar los datos de la película que quieres imprimir, por ejemplo, el título de la película y el director. Pulsa sobre el botón Guardar todo que encontrarás en la barra de herramientas de la parte superior de la pantalla. Para comprobar el resultado de la impresión incluye la instrucción de impresión haciendo click dos veces en el botón Imprimir y sustituyendo el código que aparece por el siguiente: PrintDocument1.Print()
usuarios puedan manejar estas opciones: cambio de impresora, cambio del tamaño del papel o incluso no permitir la impresión a color. En este caso, es aconsejable que no utilices el control PrintDialog.
Resumiendo... 1 Diseño del formulario 3 Arrastrar control PrintDocument al formulario 3 Click dos veces sobre el objeto de la pantalla 3 Doble click sobre control PrintDocument 3 Introducir código 2 Escribir código 3 Guardar todo 3 Doble click en Imprimir 3 Sustituir el código que aparece 3 Arrastrar control PrintDialog al formulario 3
Ventana de propiedades 3 Editar propiedad Document 4 Arrastrar control PrintPreviewControl al formulario 5 Editar la propiedad Document 3 Seleccionar PrintDocument1 3 Doble click en el botón Imprimir 3 Sustituir la instrucción Print() 3 Guardar todo 3 Pulsar F5 3 Seleccionar una película 3 Imprimir
64 152_58_65_Curso VB.indd 6
10/8/06 10:42:24
Visual Basic 2005 Express Edition. Parte 7ª
Permisos de impresión para tu usuario Si revisas los conceptos que has aprendido en los pasos anteriores es fácil asociar las posibilidades que Visual Basic te permite controlando los aspectos de seguridad y las funcionalidades como, por ejemplo, las de impresión. Podrás de esta manera controlar qué usuario podrán imprimir y cuál no o incluso, en funcionalidades propias de tu aplicación, controlar quién puede hacer qué -por ejemplo, qué usuario puede dar de alta nuevas películas y quién sólo puede consultarlas-.
1
En primer lugar debes plantearte qué roles identificas en tu aplicación y establecer qué funcionalidades quieres permitir que pueda realizar cada rol o, por el contrario, qué funcionalidades quieres denegar a cada rol. De esta manera deberás asociar a cada usuario de tu sistema uno o varios roles para establecer las acciones que pueden realizar dentro de tu aplicación. Si tomas como ejemplo la aplicación de gestión de tu colección de películas de DVDs, y si quieres añadir una gestión de identidad basada en roles, podrías pensar en dos roles diferentes: por un lado el rol de administrador, que podrá añadir nuevas películas a tu colección e imprimirlas, y por otro el rol de invitado, que proporcionarás a familiares y amigos para que puedan consultar qué películas tienes en tu colección pero sin correr el riesgo de que eliminen alguna por accidente.
2
Una capacidad que ofrece Visual Basic Express es que permite obtener atributos de aquel usuario de tu sistema que se encuentra utilizándolo en ese momento. Por ello, si tienes diferentes usuarios para las diferentes personas que utilizan tu PC simplemente deberás otorgar a cada uno de ellos los privilegios de "Administrador" o "Invitado" para que puedan actuar de esta manera. Estos privilegios los puedes modificar pulsando en el botón Inicio, Panel de control y Cuentas de usuario. Una vez allí, introduce la cuenta de usuario y elige la opción Cambiar mi tipo de cuenta. Así, podrás establecer si el usuario es Administrador, con lo que no tendrá restricciones
a la hora de realizar acciones sobre tu PC, o si, por el contrario, limitas su cuenta para que no pueda instalar aplicaciones o acceder a ciertos ficheros. Debes tener en cuenta que estas limitaciones se aplicarán a todas las aplicaciones que tengas instaladas en tu sistema, incluso a funcionalidades del sistema mismo, como pueden ser la de modificar perfiles de usuario o crear nuevas cuentas de usuario.
3
Utilizando la propia configuración de acceso de Windows, desde Visual Basic tienes predefinidos algunos roles que se encuentran almacenados en un tipo enumerado denominado "BuiltInRole". En este enumerado puedes encontrar, entre otros, los siguientes roles: Administrador, Invitado, Operador de impresión, Operador del sistema, etc. Para conocer los tipos que tienes definidos en este enumerado, haz doble click sobre el formulario de tu aplicación "ListDe-
tails.vb" cuando te encuentres en la Vista de diseño. Accederás así al método "Load" del formulario. Este método se ejecutará cada vez que abras el formulario y antes de que llegues a visualizarlo por lo que es ahí donde debes controlar, por ejemplo, qué botones serán accesibles para el usuario y cuáles no. Teclea las siguientes instrucciones: If My.User.IsInRole (applicationServices.BuiltInRoleAdministrator)Then Después de teclear el último ".", Intellisense desplegará todos los tipos que registra el enumerado. Continua, finalizando con la instrucción "If" y estableciendo que si se cumple la condición "then" el botón de impresión ha de ser visible ya que el usuario es Administrador, en caso contrario ("else") el botón ha de ser invisible.
tar la posibilidad de añadir nuevas películas, de modificarlas y, lo que es más importante, de eliminarlas. Para ello debes ocultar los botones que realizan dichas funciones. Desde la ficha de Diseño del formulario, selecciona los botones que quieres ocultar y desde la pestaña Propiedades comprueba su nombre en la propiedad Name. Puedes desplegar la ventana de propiedades pulsando F4. Para cada uno de estos controles añade una línea, tanto en el cumplimiento de la condición como en el incumplimiento para hacer visible o invisible el control respectivamente. El código quedaría de la siguiente manera. ■
Resumiendo... 1 Identificar roles: Administrador e Invitado 3 Establecer las funcionalidades permitidas para cada rol 2 Inicio 3 Panel de control 3 Cuentas de usuario 3 Seleccionar la cuenta de usuario 3 Cambiar mi tipo de cuenta 3 Vista Diseño 3 Doble click sobre
Nº 152 152_58_65_Curso VB.indd 7
4
Fíjate que si deseas aclarar alguna otra instrucción -como en el caso anterior, en la que querías especificar que Button1 es el botón de impresión- puedes hacerlo añadiendo el carácter "" (comilla simple) delante de tu comentario, con lo que el mismo quedará en color verde en tu editor y el compilador no lo tendrá en cuenta al generar el programa. A partir de la comprobación que has realizado sobre el perfil de usuario, tienes que limi-
"ListDetail.vb" 3 Acceder al método Load 3 Teclear instrucciones 3 Teclear código 4 Añadir comillas para hacer comentarios a instrucciones 3 Ficha de diseño del formulario 3 Seleccionar botones a ocultar 3 Añadir una línea para hacer el control visible o invisible 3 Comprobar código
65 10/8/06 10:42:31
Curso
Control de errores Si hay algo que persigue a todos los productos de software son los errores. Los desarrolladores dedican mucho tiempo a la corrección de los mismos. Por este motivo, si no quieres que los errores de tus aplicaciones te "persigan" debes prevenirlos con una buena gestión de errores y unas pruebas adecuadas de tu programa que te permitan detectar los fallos antes de distribuirlo.
Guía del curso 1. Aprende a programar con Visual Basic 2005 Introducción. Ayuda. Tu primer programa
PC Today no 146
2. Starter Kit y plantillas Creación y personalización de un proyecto
PC Today no 147
3. Controles, tipos y variables Programación orientada a objeto.
PC Today no 148
4. El lenguaje de programación Sentencias e instrucciones. Condiciones y bucles PC Today no 149
5. Diseño de aplicaciones Depuración del código
PC Today no 150
6. Acceder a bases de datos SQL Server 2005 Express
PC Today no 151
7. Asegurar e imprimir Control de acceso, usuarios y perfiles
PC Today no 152
8. Pruebas y control de errores Manejando los errores. El plan de pruebas
PC Today no 153
9. Instalación y despliegue Creación y ejecución de un instalador
56 153_56_60_Curso VB.indd 60
PC Today no 154
S
iempre que estás desarrollando, tu interés principal es ir avanzando funcionalidades de la aplicación. Además, cuando realizas pruebas en tiempo de ejecución o mediante el depurador todo parece funcionar bien y no reparas en más. El problema aparece cuando tu programa lo utilizan otras personas que no tienen tus conocimientos. Es entonces cuando comienzan a aparecer un montón de fallos. Esto es algo normal porque nadie va a conocer nunca tu aplicación como tú. Además, está comprobado que cuando un desarrollador maneja su propia aplicación, esta no le falla porque, aunque sea inconscientemente, siempre realizará las opciones que funcionan. Por ello, lo primero que
tienes que intentar es evitar que los fallos lleguen a producirse. Para ello es necesario probar todas las posibilidades que ofrezca tu programa, ya sea de una manera automatizada -mediante un programa que pruebe otros programas- o bien de una manera manual pero sistematizada -mediante pruebas, planes de pruebas e informe de las pruebas realizadas-. La importancia de las pruebas ha llegado a tal punto que existen empresas y profesionales dedicados exclusivamente a ello. Son los Tester y están tan bien considerados como los mismos desarrolladores. Aunque sepas que tu programa va a ser probado por otras personas, tú también debes realizar todas las pruebas que puedas ya que todos los errores que puedeas detectar en la fase de
desarrollo podrás resolverlos de manera más rápida y eficaz, puesto que tienes el código "fresco" en tu memoria y todavía no has comenzado a crear nuevos programas. Resulta poco productivo estar desarrollando un programa nuevo y "parcheando" varios programas antiguos, aunque es la triste realidad de cada día de la mayoría de los desarrolladores de software. Aparte, como desarrollador, debes controlar que cuando estos errores ocurran tu aplicación continúe funcionando y que, en la medida de lo posible, el usuario no pierda los datos que estaba manejando. Esto lo puedes conseguir utilizando rutinas de control de errores en tu programa que capturen estas excepciones y realicen las acciones apropiadas para paliarlas.
www.pctoday.es 24/8/06 11:46:51
Visual Basic 2005 Express Edition. Parte 8ª "Try", pulsando sobre el margen izquierdo de esa misma línea. Podrás comprobar que lo has hecho correctamente porque aparece un vistoso círculo rojo. Pulsa F5 para ejecutar la aplicación. Después, pulsa el botón Prueba y, como ya te podías imaginar, verás cómo la ejecución de la aplicación se detiene sobre la instrucción. Para seguir con la ejecución Paso a paso puedes ir pulsando la tecla F11 para continuar.
Prueba y comprueba Existen muchas posibilidades de errores en tu programación, por ejemplo, cuando tu programa intenta realizar un división entre 0, cuando parte de tu aplicación intenta crear un fichero que ya existe o conectar a una base de datos que no existe o está caída, etc. Sería bueno para ti, cada vez que realices alguna instrucción como las anteriores, que pudiera producir errores, el poder comprobar si existen errores antes ¿no? Para ello Visual Basic 2005 te ofrece la instrucción Try Catch que no existía en las versiones anteriores de Visual Basic.
1
Desde el menú de Inicio, ejecuta Visual Basic 2005 Express. Después, selecciona Archivo, Nuevo proyecto y Aplicación Windows. Ahora tienes que introducir un nombre para el proyecto que vas a realizar. Escribe, por ejemplo, MisPracticas. Este es el nombre con el que el proyecto se almacenará en tu disco duro. Una vez has establecido el nombre, pulsa Aceptar para crear el proyecto. Verás como se despliega en el Explorador de soluciones varias carpetas y ficheros. Elige el formulario creado por defecto con el nombre "Form1" y arrastra un control botón. Tras esto, edita la propiedad Text y ponle el valor Pruebas. Haz doble click sobre el botón para acceder a la ventana de edición de código, declara dos variables, una de ellas con el valor "cero" para probar una división entre cero:
5 la ficha de edición de código. Una vez allí, sitúate sobre la instrucción División y marca un punto de interrupción pulsando sobre el margen izquierdo. Aparecerá un punto rojo. De nuevo pulsa F5 y el botón Pruebas. Esta vez observarás que la ejecución se detiene en el punto de interrupción que has señalado. Si utilizas la ejecución Paso a paso observarás que es el valor de la variable "y" de tu instrucción lo que produce el error. Si quieres estar todavía más seguro, puedes modificar directamente el valor de la variable poniendo el ratón sobre ella y, en la inspección que aparece junto a tu línea de código, modificando el valor cero que aparece junto a la "y".
3
Como has podido comprobar la anterior era la manera errónea de programar. Visual Basic 2005 ofrece, a diferencia de las versiones anteriores, la posibilidad de evaluar una instrucción y capturar la posible excepción que se vaya a producir. Esto se realiza mediante la instrucción Try-CatchFinally. Desde la ficha de edición de código -a la que puedes llegar desde el Explorador de soluciones, pulsando sobre tu formulario y después sobre el botón Ver código-, introduce este nuevo bloque de código en el que utilizarás una instrucción de tipo Try catch para capturar, si se produce, la excepción en la división.
En primer lugar se ejecuta la instrucción que contiene la división. El error se produce de la misma manera que anteriormente, pero la diferencia es que en tu propio código tienes controlado el tratamiento de ese error. De esta manera no se detiene la ejecución de la aplicación ni se llega a bloquear tu ordenador como en los apartados anteriores. Cuando se ha producido el error tú has decidido emitir un pitido y continuar.
6
Debes tener en cuenta que existen cientos de excepciones que pueden ocurrir en la programación que realices. Es difícil llevar un perfecto control de todas ellas. Ni tan siquiera conocerlas. Ante esta problemática Visual Basic 2005 Express Edi-
tion aporta una completa ayuda. Si recuperas la instrucción que no ha sido tratada con Try catch, puedes observar la ventana de tratamiento de excepciones en la cual aparece la descripción del error que se ha producido, pero que no ha entorpecido la ejecución del programa.
Pulsa F5 para ejecutar tu programa y observa que se produce un error. Al estar en tiempo de ejecución, Visual Basic intenta descifrar dicho error y ofrecerte ayuda. En esta caso ,es una división entre cero que la herramienta detecta. Presiona F5 para ejecutar el programa. Pulsa sobre el botón Prueba. Escucharas un pitido en tu PC y después aparecerá el mensaje Final de instrucción.
4
Puedes ahora volver a depurar tu aplicación para saber exactamente qué ha ocurrido. Para ello, haz click dos veces sobre el botón prueba desde la ficha de edición de tu formulario "Form1". Inserta un punto de interrupción en la línea de la instrucción
2
Nº 153 153_56_60_Curso VB.indd 61
▲
Para poder observar lo que ha ocurrido, es el momento de utilizar la depuración tal como aprendiste en capítulos anteriores. En el Explorador de soluciones, pulsa sobre tu formulario y después sobre el botón Ver código para llegar a
7
De la misma manera aparece un listado completo con todas las sugerencias posibles que puedes emplear. Cuando pulsas sobre alguna de estas sugerencias, obtienes, en una nueva ventana, ayuda detallada de cómo corregir o tratar el error que se está produciendo. Junto a ello, también tienes acceso a un informe completo y en detalle de la excepción producida. Esta información ampliada te será de gran utilidad sobre todo cuando estés trabajando en proyectos grandes, en los que en las tareas de desarrollo aparecerán una gran cantidad de excepciones que deberás tratar. Por último, puedes copiar todos los datos del detalle de la excepción al Portapapeles de tu PC -selecciona el texto y usa el atajo de teclado Ctrl+C- para, si deseas obtener aún más información o ayuda, posteriormente copiarlo
57 24/8/06 11:46:53
Curso Resumiendo... 1 Inicio 3 Todos los programas 3 Visual
-mediante el atajo de teclado Ctrl+V- en un documento, en un buscador de Internet o en tu propio registro de errores.
Basic 2005 Express 3 Archivo 3 Nuevo proyecto 3 Aplicación Windows 3 Nombre: MisPracticas 3 Arrastrar control Button 3 Escribir código 3 F5 2 Explorador de soluciones 3 Ver código 3Insertar punto de interrupción 3 F5 3 Ver la excepción
1
Vas a incluir una variación en el código que has introducido en el paso anterior. Desde el Explorador de soluciones, pulsa sobre tu formulario y sobre el botón Ver código para acceder a la ficha de edición de código. Una vez allí, introduce este nuevo bloque, en el que utilizarás una instrucción Try Catch para modificar la acción a realizar cuando se produce el error.
Pulsa F5 para ejecutar este nuevo programa. Después, presiona el botón Prueba. Como resultado aparecerá el mensaje del error y después otro mensaje que indica Final de instrucción.
2
Un aspecto a tener muy en cuenta con los mensajes de error es la interpretación que el usuario hará de ellos. Un mensaje demasiado alarmante puede generar un efecto de "pánico" no deseado. Por el contrario, un mensaje demasiado benevolente puede
llevar al usuario a ni tan siquiera avisar de que el error se ha producido. Sustituye el código para mostrar el mensaje de error por: MsgBox(ex.Message.ToString) ‘Muestra un mensaje de error amigable Este código, en lugar de mostrar todos los datos de la excepción, simplemente muestra el atributo "message", que corresponde a una descripción básica del error. Puedes añadir otros mensajes aclaratorios como: consulte al Administrador, llame a un determinado número de teléfono o envíe un email a una dirección con el error producido. En definitiva, puedes modelar el mensaje en función de la gravedad o de las necesidades de tu aplicación.
3
Existen más posibilidades a la hora de personalizar y tratar los errores producidos por tu aplicación. Por ejemplo puedes, en función de la excepción que se haya producido, realizar esta o aquella acción asociada -entre las que se puede encontrar la más simple, que es mostrar un mensaje-. Puedes capturar un error en concreto especificando el tipo de error de manera explícita. Por ejemplo, para captu-
rar la excepción de división por cero debes introducir la siguiente instrucción: Catch errDBZObject As DivideByZeroException When y = 0
paso
6 F5 3 Pulsar botón Prueba 7 Obtener sugerencias 3Mostrar detalles
5
Una circunstancia muy común en programación se produce cuando el código está siendo "llamado" desde otra parte de tu programa o incluso en otro programa diferente. En ese caso, lo que es necesario es trasmitir el error al programa que ha llamado a tu código. Esto se llama "levantar la excepción". De esta manera el programa "llamante" podrá realizar su propia gestión de errores, mostrando los mensajes de error que considere oportunos en función del ámbito de ejecución de ese programa. Si no se levantara la extensión, el programa llamante se quedaría colgado sin más explicación para el usuario, esperando una respuesta apropiada de tu programa, función o subrutina o de tu parte de código. Para realizar una prueba tienes que incluir la división entre cero que estás manejando en una subrutina.
4
Resumiendo... instrucción Try Catch 3 F5 2 Hacer doble click botón Prueba 3 Modificar instrucción MsgBox 3 F5 3 Hacer doble click botón Prueba 3 Modificar
153_56_60_Curso VB.indd 64
3Insertar punto de interrupción
5 Pulsar F11 3 Comprobar ejecución Paso a
Cuando declaras la excepción y tecleas la palabra "As", Intellisense te muestra una lista con todos los tipos de excepciones declarados en Visual Basic 2005. Esto te puede resultar muy útil cuando no sabes qué excepción está ocurriendo. Normalmente cuando estés desarrollando te aparecerá la
1 Hacer doble click botón Prueba 3 Insertar la
58
Try Catch 3 F5
4 Explorador de soluciones 3 Ver código
ventana de excepción, en la que puedes introducir el tratamiento de la excepción genérico o personalizado según te interese.
Errores "amigables" Una vez has conseguido capturar los errores que se producen en tu aplicación debes decidir qué hacer con ellos, dependiendo de la naturaleza de la aplicación. El tratamiento básico es mostrar el error en pantalla para que el usuario pueda informar de que el error se ha producido y de cuál ha sido el mismo. Pero en ocasiones este sistema no es suficiente, porque las aplicaciones son demasiado críticas como para depender del aviso de un usuario o porque el usuario no tiene medio de hacer llegar el aviso al desarrollador. La solución a cada problema debe aplicarse en función de la criticidad: desde el registro en un fichero de errores que se consulta periódicamente, el envío de un email de aviso con el error o, incluso, el envío de un SMS.
3 Doble click en Prueba 3 Insertar instrucción
instrucción Catch para capturar excepción DivideByZeroException 4 Observar tipos de excepciones 3 F5 5 Hacer doble click botón Prueba 3 Modificar instrucción Try Catch
www.pctoday.es 24/8/06 11:46:56
Visual Basic 2005 Express Edition. Parte 8ª
Plan de pruebas Una vez que tu aplicación es lo bastante sólida como para no quedarse colgada con el menor error, llega el momento en el que debes realizar un exhaustivo plan de pruebas para asegurarte que los errores los encontrarás tú antes que los usuarios. La idea del plan de pruebas consiste en repasar todas las funcionalidades de tu aplicación y comprobar su correcto funcionamiento. De esta manera te aseguras tanto el cumplimiento de tus requisitos iniciales como el funcionamiento de lo que has desarrollado. Existen numerosas herramientas que te facilitan la realización de pruebas, así como la generación de informes y de planes de pruebas; incluso te dan la oportunidad de realizar pruebas de carga para determinar el número de usuarios que podrían utilizar la aplicación concurrentemente. Estas herramientas suelen ser caras y, como comprobarás más adelante, no son realmente imprescindibles para desarrollos pequeños. Verás cómo con una simple hoja Excel podrás llevar un buen control de tus pruebas
1
A la hora de realizar un plan de pruebas debes tener presente toda la información que has ido recopilando durante la realización de tu proyecto: la información de requisitos, que debes asegurar que se cumplan; así como la información de diseño de la aplicación, donde se recogen todas las clases y funcionalidades que has desarrollado.
Consejo aplicación tiene dos pantallas: una para búsqueda online y otra para ver DVDs. En cada una de estas pantallas hay funcionalidades que debes probar. Comienza a escribir las pruebas por Pantalla. Modifica la plantilla Excel para identificar las pantallas y las funciones cambiando las columnas de menú
Puedes establecer una prueba para cada campo o considerar una prueba global de todos los campos. En general, a la hora de corregir cualquier error que se produzca es más fácil asociarlos a pruebas más sencillas que puedas volver a comprobar una vez realizadas las modificaciones necesarias.
dad. En la columna Pantalla, escribe Ver DVDs. A continuación, ve introduciendo pruebas. En primer lugar introduce la prueba para insertar una nueva película. La descripción de la prueba sería Introduce todos los campos de la película y el resultado a obtener -La película aparece en el listado
y opción de menú de la plantilla genérica que has creado. Si lo consideras oportuno puedes también añadir algunas columnas para el dato que introduces -en este caso, el texto de búsqueda- o el dato que obtienes -en este caso, las películas-.
3
Comienza creando las pruebas para la pantalla de búsqueda online. Introduce este valor en la columna Pantalla y ve recorriendo sus distintas funcionalidades. En primer lugar, la funcionalidad del botón Buscar. En la columna de Pantalla, escribe Búsqueda online; en la columna Funcionalidad introduce el texto Botón buscar; finalmente, el ID de y todos los campos están rellenos-. La siguiente prueba podría ser, por ejemplo, modificar una película añadida desde la búsqueda online.
prueba será el 1. Después debes introducir el texto de descripción de la prueba: Introduce un nombre de película y pulsa el botón Buscar.
6
Ahora, presiona el botón Inicio. Despliega el menú y ejecuta Visual Basic 2005 Express. Una vez dentro de la aplicación, selecciona el menú Archivo y Abrir para buscar el proyecto "MisDVDs". Pulsa F5 para ejecutar la aplicación. Al
4 Desde el menú de Inicio, selecciona Microsoft Excel. Introduce un título para la aplicación para la que vas a desarrollar el plan de pruebas en la celda superior. Crea una columna para cada uno de los conceptos que necesitas reflejar en un buen plan. En primer lugar, debes indicar la ubicación desde la que estás probando la funcionalidad. Esta puede ser, por ejemplo, la opción de menú o la pantalla. Tienes también que indicar un identificador a la prueba, esto es, un número auto-incremental. Además, añade un campo de descripción de la prueba que se va a realizar, otro campo para describir el resultado que esperas cuando realices la prueba, y por último otro para indicar si la prueba ha sido correcta o no.
Por último, añade el Resultado esperado cuando realizas la prueba en este caso, escribe el texto Aparece un listado de películas-. El último campo de la tabla debes dejarlo en blanco hasta que realices el informe del plan de pruebas mientras estés ejecutando la aplicación. Continúa introduciendo pruebas para las funcionalidades: Click sobre el listado deberá mostrar los datos de la película en el área de detalle, incluyendo la fotografía, doble click sobre el listado para añadir película a tu colección, etc.
5
De la misma manera debes introducir las pruebas para la pantalla Ver DVDs, desde la que visualizas y modificas tu colección. Repasa todas las funcionalidades de la pantalla para realizar al menos una prueba por cada funcionali-
2
Nº 153 153_56_60_Curso VB.indd 65
▲
Las pruebas que vas a realizar en este ejemplo serán sobre la aplicación de catalogación de DVDs que has implementado en capítulos anteriores. Revisando las funcionalidades de la aplicación deberás determinar las pruebas a realizar. La
mismo tiempo abre el fichero Excel del plan de pruebas que acabas de realizar. Ahora debes ir siguiendo cada prueba con detalle y seleccionando, en la última columna, si la prueba ha sido satisfactoria. Si la prueba obtiene los resultados esperados marca en la última columna un 0K. Si el resultado de la prueba ha sido fallido o se ha producido un comportamiento inesperado, entonces marca la columna como MOK.
59 24/8/06 11:46:59
Curso Sigue hasta que completes todo el informe. Este documento que incluye todos los resultados completos se denomina Informe de pruebas. Una vez has terminado de realizar las pruebas con todas las funcionalidades de tu aplicación, comprueba si alguna no está OK. Si es así, y alguna ha fallado, deberás volver al editor de Visual Basic 2005 para corregirlo. Es importante que tengas en cuenta que, una vez has corregido un error, debes volver a realizar el plan de pruebas entero. Esto es así porque es posible que, al corregir el error que tenías localizado, has podido provocar otro error de manera involuntaria. Así evitarás pasarlo por alto.
Resumiendo... 1 Inicio 3 Todos los programas 3 Microsoft Excel 3 Introducir columnas
2 Revisar información de requisitos diseño y pantallas de la aplicación 3 Pantalla: Búsqueda online 3 Funcionalidad: Botón Buscar 3 Insertar ID 4 Resultado: Aparece un listado de películas 3
El seguimiento de las incidencias Siempre que una de tus aplicaciones comience a ser utilizada por otros usuarios o por ti mismo empezarán a aparecer pequeños errores o pequeñas modificaciones. El tratamiento de estos errores puede llegar a consumirte tanto tiempo y esfuerzo como el desarrollo inicial, con el inconveniente de que tu motivación no es la misma ni el resultado tan gratificante. El cómo consigas organizar el tratamiento de estos errores y las soluciones que realices en forma de "versiones" debe conseguir hacerte la tarea más llevadera y, algo muy importante, que puedas medir el esfuerzo que conlleva el mantenimiento de esas aplicaciones y si sería mejor realizar una aplicación nueva partiendo desde cero.
1
Nuevamente, la manera más sencilla de llevar esta gestión es una hoja Excel -aunque existen numerosas aplicaciones para realizarlas, incluso gratuitas, que son las denominadas aplicaciones de Help Desk-. Desde el menú de Inicio, abre Microsoft Excel. Introduce, en la celda superior, un título para la aplicación para la que vas a desarrollar el plan de pruebas. Vuelve a crear una columna para cada uno de los con-
3
Ahora tienes que realizar una gestión de la incidencia que se ha producido. Para ello abre la hoja Excel que has diseñado anteriormente y comienza a dar de alta los datos que has recibido. En el Número de la incidencia debes introducir un número único,
filas vacías 3 Insertar prueba
6 Inicio 3 Todos los programas 3 Visual Basic 2005 Express 3 Archivo 3 Abrir 3 "MisDvds" 3 F5 3 Completar hoja Excel con resultados
por lo que lo más fácil sería introducir un secuencial. Como esta es tu primera incidencia escribe un 1. En la siguiente columna debes incluir el tipo de incidente. Por lo general existirán dos tipos: Incidencias, que son las producidas cuando ocurre un error en la programación, o Solicitudes, cuando lo que se requiere es una mejora en el programa o una modificación para introducir nuevas funcionalidades. En la siguiente columna debes determinar si el incidente está resuelto o no lo está. Como lo acabas de dar de alta, lógicamente estará sin solucionar por lo que debes introducir el valor N. La siguiente columna no aplicaría, al no estar solucionado el incidente, dado que reflejará la fecha en que se soluciona. En el momento que resuelvas el problema debes actualizar ambas columnas cambiando el campo solucionado a S e introduciendo la fecha en la que lo has realizado. La última columna es de uso libre, para incluir comentarios aclaratorios o, por ejemplo, los comentarios del usuario que ha notificado la incidencia. ■
El usuario tiene la última palabra Es muy importante que pienses en el usuario a la hora de resolver las incidencias. Debes tener sensibilidad por sus necesidades. Actúa con él del mismo modo que si se tratara de ti mismo a la hora de dar una respuesta adecuada a sus necesidades. Da igual si se trata de tus familiares, compañeros de oficina o verdaderos clientes.
ceptos que necesitas reflejar. Por ejemplo: número de la incidencia, descripción de la incidencia, tipo de incidencia, estado de la incidencia, fecha de resolución y unos comentarios por si necesitas aclaraciones. Estos campos son orientativos y siempre podrás incluir otra información en función de tus necesidades. Por ejemplo, si hay varias personas resolviendo las incidencias puedes indica quién es la persona que lo está resolviendo.
2
Supón que durante el manejo de la aplicación has detectado un error al añadir una película a tu colección. El error se produce cuando la longitud del campo "director" es demasiado grande –por ejemplo, cuando hay más de un director-. La aplicación da un error, en el que indica que no ha sido posible dar de alta la nueva película pero no detalla más información. En este caso se ha mostrado un mensaje de error amigable para no alarmar al usuario. Sin embargo, tienes la necesidad de una solución, dado que cada vez más películas tienen varios directores y por lo tanto cada vez se producirán más errores de este tipo en tu aplicación.
Dejar último campo en blanco
5 Seleccionar pantalla Ver DVDs 3 Seleccionar
Una incidencia no está realmente resuelta hasta que el usuario indica que así es. No es bastante con que tú realices la modificación de la aplicación, dado que si no llega hasta el usuario que tiene la necesidad es como si no se hubiera realizado. La fecha de solución que debes indicar en tu documento Excel de gestión siempre será en la que el cliente ha dado su visto bueno a la solución aplicada. Cuando tengas varias aplicaciones tuyas funcionando, puedes realizar la gestión de incidencias con una hoja Excel por cada aplicación o proyecto. Sin embargo te será mucho más útil, incluso a la hora de realizar informes para analizar tu actividad, disponer de todos los datos en una misma hoja. Para esto tienes dos soluciones: o insertas una hoja por cada aplicación o, más sencillo, incluir una nueva columna para describir la aplicación o proyecto en el que se ha producido la incidencia. ■
Resumiendo... 1 Inicio 3 Todos los programas 3 Microsoft Excel 3 Introducir columnas 2 Inicio 3 Todos los programas 3 Visual
Basic 2005 Express 3 Archivo 3 Abrir 3 "MisDVDs" 3 F5 3 Identificar error 3 Seleccionar filas vacías 3 Insertar incidencia
60 153_56_60_Curso VB.indd 66
24/8/06 11:47:01
Curso
Instalación y despliegue Durante este curso has aprendido a realizar grandes aplicaciones software. Aplicaciones que ofrecen un gran rendimiento, con acceso a datos, conexiones a servicios remotos y un montón de funcionalidades avanzadas. Todas ellas funcionan perfectamente pero, eso sí, en tu PC. Ahora es el momento de distribuir tus aplicaciones para que puedas funcionar en otras máquinas distintas con las mismas prestaciones.
Guía del curso 1. Aprende a programar con Visual Basic 2005 Introducción. Ayuda. Tu primer programa
PC Today no 146
2. Starter Kit y plantillas Creación y personalización de un proyecto
PC Today no 147
3. Controles, tipos y variables Programación orientada a objeto.
PC Today no 148
4. El lenguaje de programación Sentencias e instrucciones. Condiciones y bucles PC Today no 149
5. Diseño de aplicaciones Depuración del código
PC Today no 150
6. Acceder a bases de datos SQL Server 2005 Express
PC Today no 151
7. Asegurar e imprimir Control de acceso, usuarios y perfiles
PC Today no 152
8. Pruebas y control de errores Manejando los errores. El plan de pruebas
PC Today no 153
9. Instalación y despliegue Creación y ejecución de un instalador
62 154_62_67_Curso VB.indd 60
PC Today no 154
E
l PC en el que has realizado tu desarrollo no es un entorno corriente, debes tener en cuenta todas las herramientas que has instalado para realizar tu aplicación. Visual Basic 2005 Express Edition instala en tu máquina componentes que son necesarios simplemente para la realización de aplicaciones. Estos componentes, naturalmente, no van a estar presentes en máquinas que no dispongan de Visual Basic 2005, del mismo modo tampoco puedes instalar Visual Basic 2005 en cada una de las máquinas en las que quieras ejecutar tu programa. Debes considerar tu máquina a todos los efectos como un entorno de "desarrollo". Este tipo de entornos serán los que utilices para toda la fase
de creación de tu aplicación. Es muy importante que tengas en cuenta que para realizar las pruebas de validación de tu aplicación necesitarás de un entorno adicional de "pruebas". Si no andas sobrado de recursos para disponer de otra máquina puedes utilizar las tecnologías de virtualización de máquinas –con aplicaciones como Virtual PC de Microsoft o VM Ware- mediante las cuales puedes disponer de otro PC dentro de tu PC. Como ya pudiste ver en el primer capítulo del curso, Microsoft .NET Framework facilita enormemente la distribución de tu software, ya que aglutina en un paquete todos los componentes necesarios para la ejecución de tu programa salvo, claro está, tu propio programa. Además, cualquier componen-
te de tu programa utilizará, o mejor dicho reutilizará, código incluido en el .NET FrameWork, con lo que se optimiza el número de componentes que tendrás que distribuir. Otro aspecto a considerar es la manera de distribuir tu aplicación. Frente a la tradicional distribución por CD o DVD, cada vez más se comprueba la necesidad de una distribución online, principalmente por las actualizaciones que necesites distribuir para la corrección de errores o la inclusión de nuevas funcionalidades. Para control de los cambios que implementes en tu aplicación Visual Basic 2005 también te ofrece la facilidad de controlar y gestionar las versiones de la misma manera que te ayudará a la distribución de tu software.
www.pctoday.es 7/9/06 13:10:27
Visual Basic 2005 Express Edition. Parte 9ª
Instala el framework Aunque, como verás más adelante, Visual Basic 2005 también te permite generar un instalador del Microsoft .NET Framework, es importante que aprendas a gestionarlo de manera independiente a tus aplicaciones. Como otros productos, dispones de diferentes versiones que pueden convivir en una misma máquina y que pueden soportar diferentes aplicaciones. La versión necesaria para la ejecución de las aplicaciones que has desarrollado con Visual Basic 2005 Express Edition es MS .NET Framework 2.0.
1
Abre una sesión en tu navegador. Puedes acceder a la descarga desde la página de Microsoft (www.microsoft.es) en su área de descargas por medio de la zona de Descargas más populares o introduciendo Framework 2.0 en el campo de Búsqueda. Debes tener cuidado porque existen varios paquetes de instalación del framework en sus diferentes versiones, 1, 1.1 y 2.0. La versión que debes instalar es
la 2.0. También existen paquetes para desarrolladores, los denominados SDK o Software Development Kit. Este no es el paquete que debes descargarte ya que lo que necesitas es el paquete de ejecución, también denominado "Run time". El nombre exacto es Microsoft .NET Framework, versión 2.0, Redistributable Package (x86) (Paquete redistribuible de Microsoft .NET Framework versión 2.0). La notacion (x86) se refiere al tipo de procesador y significa que sirve para procesadores Intel o compatibles, como son toda la familia Pentium y también los procesadores AMD.
2
Desde el Asistente de instalación pulsa Siguiente, acepta los términos de la licencia, una vez hayas leído cuidadosamente todas las cláusulas y pulsa Instalar. Cuando haya terminado todo
3
de 64bits. En la ventana de descarga del paquete tienes, de nuevo, que pulsar el botón Descargar. Después, elige la opción Guardar, selecciona la carpeta destino donde quieras guardar el instalador del componente y pulsa Aceptar.
el proceso de instalación, pulsa el enlace Centro de soporte de productos a fin de descargar las posibles actualizaciones que se hayan publicado desde que salió el paquete de distribución. Por lo general siempre es recomendable visitar este centro de soporte o activar las actualizaciones automáticas que ofrece Windows
Cuanto termine la descarga, aparecerá una ventana de opciones en la que tienes que seleccionar Ejecutar. Si no aparece ninguna ventana, debes buscar el fichero "langpack.exe" en la carpeta que has seleccionado al descargar. Haz doble click sobre él para ejecutarlo. Aparecerá una ventana de confirmación de la ejecución donde aparece el componente y el fabricante. Asegúrate que es el Paquete de Idioma para español de Microsoft y pulsa Ejecutar. Una vez en la ventana de bienvenida, haz click en Siguiente, acepta las condiciones legales y pulsa
5
XP para actualizar la versión con los sucesivos parches que distribuya Microsoft. Gracias a la tecnología de .NET Framework estas actualizaciones no afectarán a los desarrollos que hayas realizado, ya que siempre se almacena la versión de los componentes que utiliza tu aplicación y no se borran, sino que se acumulan.
4
Para actualizar el idioma del framework que acabas de descargar, todavía necesitas un componente más: el denominado Language pack. Este componente sirve para actualizar algunos elemento y convertirlos al idioma español. Para esto, en la parte inferior de la página en la que te has descargado .NET Framework 2.0 aparece un listado de enla-
Resumiendo... 1 Ir a www.microsoft.es 3 Descargas más populares 3 Elegir Microsoft .NET Framework, versión 2.0, Redistributable Package (x86) 2 Descargar 3 Elegir ubicación 3 Guardar 3 Aviso de seguridad 3 Iniciar instalación 3 Siguiente 3 Aceptar términos de licencia 3 Instalar 3 Aceptar 4 Volver a la página de descarga 3 Pulsar
Nº 154 154_62_67_Curso VB.indd 61
Continuar para completar el proceso de instalación. Una vez finalizada la actualización de ensamblados, y si no ha ocurrido ningún error, aparecerá la ventana de confirmación con el botón Finalizar. Pulsando sobre él se cerrará la ventana y se dará la instalación por completada.
▲
Desde la pantalla de descarga pulsa el botón Descargar, selecciona la carpeta donde quieras guardar el fichero y pulsa de nuevo en Guardar. Una vez finalizada la descarga, que llevará más o menos tiempo en función de tu velocidad de conexión a Internet, pulsa sobre Ejecutar. Se abrirá una nueva ventana de confirmación para la eje-
cución del programa de instalación. Es un aviso de seguridad que te señala el producto a instalar y su fabricante para comprobar que ambos son de tu confianza. Comenzará de esta manera el proceso de instalación del MS Framework 2.0. A continuación deberás seguir el Asistente de instalación para completar el proceso completo.
ces relacionados. Pulsa sobre el enlace para descargar, este paquete. Al igual que el anterior, es para procesadores Intel Pentium o compatibles. Debes tener en cuenta que no será apto si dispones de un procesador
sobre Paquete de idioma para español de Microsoft .NET Framework versión 2.0 (x86) 3 Descargar 3 Guardar 3 Elegir destino 3 Aceptar 5 Buscar fichero "langpack.exe" 3 Doble click 3 Ejecutar 3 Siguiente 3 Aceptar licencia 3 Continuar 3 Finalizar
63 7/9/06 13:10:30
Curso
La forma más simple: copiar y pegar Una vez ya tienes instalado el MS .NET Framework tienes las posibilidad de distribuir tu software de la manera más sencilla, que es el tradicional "copiar y pegar". Puedes pasar los ficheros necesarios de tu máquina a la máquina donde quieres que se ejecute tu aplicación simplemente copiando allí los ficheros. Aunque parezca la solución perfecta en realidad no es así ya que, por desgracia, en la distribución de software normalmente necesitaremos siempre algo más.
general la carpeta se suele denominar "release" si ya está lista para su distribución o "debug" si todavía está en proceso de mejora.
la Red. Incluso, puedes editar alguno desde Visual Basic 2005 si lo agregas a la solución, pulsas sobre él con el botón derecho y seleccionas la opción Abrir. Para ejecutar tu aplicación haz doble click sobre el fichero "MisDvds.exe". Verás cómo se abre la ventana inicial de tu desarrollo.
4
Una vez has comprobado que tu aplicación funciona perfectamente en tu entorno de desarrollo -en el PC en el que tienes instalado Visual Basic 2005- llega el momento de probarlo en otra máquina. Para ello debes utilizar la máquina donde hayas instalado MS Framework 2.0 siguiendo las instrucciones del paso anterior. Selecciona todos los ficheros de la carpeta "release", o incluso la propia carpeta. Elige la opción Copiar. Si tienes los PCs conectados en red, selecciona la máquina donde vayas a probar la aplicación desde Mis sitios de Red y, allí elige la carpeta que consideres oportuna para ejecutar la aplicación. Si los PCs no
1
Desde el menú de Inicio ejecuta Visual Basic 2005. Una vez en la pantalla de Página de Inicio, dentro de los proyectos recientes, selecciona "MisDvds". Este es el proyecto con el que has estado realizando tus prácticas a lo largo de todo el curso. Al cabo de unos instantes se abrirá el proyecto con las fichas que hubieras dejado abiertas la última vez que trabajaste con él. Es aconsejable que cierres todas las fichas si no estás trabajando con ellas. Desde el menú Generar pulsa la opción Generar MisDvds. Si no se
3
produce ningún error de compilación se generaran los ficheros necesarios para la ejecución del programa en la carpeta donde hubieras guardado tu proyecto. Esto ocurre porque, cuando Visual Basic realiza la compilación, deja una copia de todos los ficheros necesarios en una carpeta del proyecto.
Para comprobar el funcionamiento de la aplicación, desde el Explorador de archivos dirígete a la carpeta donde resida tu proyecto de Visual Basic 2005 Express Edition. Por defecto, se encontrará en la carpeta Visual Studio 2005/ Projects dentro de Mis documentos, aunque esta ruta la puedes modificar cuando creas o grabas tu proyecto. Puedes observar que en la carpeta se encuentran todos los ficheros necesarios para la ejecución de tu aplicación, desde los ficheros de datos -como "DvdcollectionDatabase.mdf"-, las librerias
están conectados en red, selecciona el soporte donde quieras trasportar los ficheros, que bien podrá ser un Pen drive USB, otro dispositivo extraíble o incluso un CD o DVD grabable. Ahora simplemente
Consejo Aunque este sistema de despliegue es extremadamente sencillo no es recomendable para aplicaciones complejas ya que el riesgo de olvidar algún fichero es elevado. Por otra parte Visual Basic 2005 Express Edition ofrece numerosas opciones avanzadas de distribución que te facilitarán la tarea y te proporcionarán nuevas posibilidades para actualización del software así como para proporcionar ayuda online a los usuarios.
2
Para determinar la ruta donde se almacenarán los ficheros para la ejecución cuando generas el proyecto, pulsa con el botón derecho de tu ratón sobre el nombre del proyecto en el Explorador de soluciones y selecciona la opción Propiedades. Se desplegará la ventana de propiedades que ya has utilizado en otras ocasiones pero, si te fijas, en la parte izquierda aparecen varios grupos de opciones. Anteriormente habías utilizado el grupo de opciones Aplicación para modificar el formulario de arranque, por ejemplo. En esta ocasión debes seleccionar el grupo Compilación. Como resultado, se despliegan las opciones de compilación. En concreto, pulsa el botón Examinar del campo Generar ruta de acceso de resultados. Selecciona una carpeta dentro de la carpeta del proyecto. Por lo
64 154_62_67_Curso VB.indd 64
necesarias -como "MisDvds.XmlSerializer.dll"- o, por supuesto, el fichero que deberás ejecutar. que será el que tenga la extensión .EXE. Este fichero tendrá un icono personalizado para la aplicación si se lo has especificado en la ventana de Propiedades del proyecto dentro del grupo Aplicación. Para generar iconos existen numerosas aplicaciones gratuitas en
"pega" los ficheros. Haz doble click sobre el fichero "MisDvds.exe" y tendrás la aplicación funcionando en la nueva máquina.
Resumiendo... 1 Inicio 3 Todos los programas 3 Visual Basic
3 Localizar el proyecto en la carpeta corres-
2005 3 Proyectos recientes 3 "MisDVDs" 3 Cerrar todas las fichas no necesarias 3 Generar 3 Generar MisDvds 2 Explorador de soluciones 3 Botón derecho sobre nombre del proyecto 3 Propiedades 3 Compilación 3 Generar ruta de acceso de resultados 3 Examinar
pondiente 3 Doble click sobre "MisDvds. exe" 4 Seleccionar todos los ficheros de la carpeta release 3 Copiar 3 Mis sitios de Red 3 Seleccionar máquina y carpeta de destino 3 Elegir el soporte de grabación 3 Pegar 3 Click dos veces en "MisDvds.exe"
www.pctoday.es 7/9/06 13:10:32
Visual Basic 2005 Express Edition. Parte 9ª
Publica tu aplicación El problema de los instaladores no es nuevo y desde los orígenes del desarrollo software se han ido perfeccionando. Visual Basic 2005 proporciona un sistema avanzado de distribución de software. Comparado, por ejemplo, con Windows Installer, la distribución de Visual Basic no hace necesaria una completa reinstalación de todo el sistema para actualizar a una nueva versión y tampoco es necesario ser administrador del sistema tal y como ocurría con los instaladores tradicionales. En definitiva se cambia el concepto de instalación por el de "publicación".
1
Desde el menú de Inicio ejecuta Visual Basic 2005. Desde la pantalla de Página de inicio, y dentro de los proyectos recientes, selecciona "MisDvds". Entra en el Explorador de soluciones, pulsa con el botón derecho del ratón sobre el proyecto y selecciona la opción Publicar, con lo que se abrirá el Asistente para la publicación del proyecto. Debes tener en cuenta que la distribución la puedes realizar tanto a ficheros locales, en una ruta en tu PC, como a una d i r e c c i ó n We b desde la que posteriormente podrás descargarte la aplicación. Esta última es una excepcional manera de distribución, tanto en entornos de Intranet en tu casa u oficina como, por supuesto, en Internet, donde dispones de acceso público.
2
Pulsa el botón Examinar para seleccionar la carpeta en la que deseas dejar los ficheros para la distribución, por ejemplo "c:\publicar" o cualquier ruta que consideres. En esta pantalla puedes leer las opciones de publicación. Además de la distribución a una ruta local, también podrás realizarla a una ruta de tu red tipo "\\nombre_maquina\carpeta"o a un servidor FTP "ftp://servidor/carpeta". Para
Compartir. Al seleccionar la ruta "c:\publicar" estás, lógicamente, seleccionando una instalación local, que es la opción más sencilla, la cual posteriormente podrás copiar en un CD, DVD, cualquier otro dispositivo de almacenamiento USB, etc.
3
Ahora debes seleccionar la forma en la que vas a realizar la instalación, que puede ser desde un sitio Web, desde un recurso compartido en red o, el más tradicional, por distribución en CD o DVD. Selecciona esta última opción ya que te resultará la más sencilla. De cualquier formas, a medida que tus desarrollos sean más complejos o aumente el número
de usuarios de tus aplicaciones deberás considerar la opción de distribución Web. Siempre deberás adaptarte a las necesidades de tus usuarios para facilitarles el uso de tu aplicación lo más posible. Selecciona CD o DVD y pulsa en Siguiente.
ciones y pulsa Siguiente. Aparecerá la pantalla resumen de la instalación en la que comprobar todas las opciones que hayas seleccionado durante los pasos anteriores. Si todo es correcto pulsa Finalizar. Puedes controlar el estado de la publicación en la barra de estado que se encuentra en la parte inferior de la ventana de tu herramienta Visual Basic.
5
Una vez finalizada la publicación se abrirá la carpeta destino que has seleccionado, con todos los ficheros de la instalación. Se creará un fichero "MisDvds.application" con la última versión de tu aplicación. Se habrá generado, del mismo modo,
un fichero "Setup.exe" y un fichero con el nombre de la versión generada. Podrás ver también que existe una carpeta con todos los ficheros necesarios para la instalación. Para ello podrás utilizar cualquiera
4
Ahora estás en la pantalla para la búsqueda de actualizaciones. Si deseas que tu aplicación vaya a buscar posibles actualizaciones cada vez que se ejecute, deberás establecer la ubicación donde debe dirigirse. De esta manera te ahorrarás mucho trabajo en la distribución de las distintas actualizaciones de tu software. Pero siempre debes tener en cuenta las circunstancias de tu aplicación, el número de usuarios, así como la ubicación de los mismos. Si no deseas búsqueda de actualizaciones selecciona La aplicación no buscará actualiza-
▲
de los tres ficheros. Haz doble click sobre alguno de ellos, realiza la comprobación de requisitos para comprobar, por ejemplo, si dispones de la versión del framework adecuada. Después aparecerá un aviso de confirmación para la instalación. Pulsa la opción Instalar. Al finalizar la instalación podrás observar que la aplicación se ejecuta directamente. También tendrás disponible un acceso a tu aplicación desde el menú de Inicio.
Resumiendo... 1 Inicio 3 Todos los programas 3 Visual Basic
configurar tanto el recurso compartido en red como el servidor FTP debes tener permisos de administración en las máquinas de tu red, de no ser así consulta con tu administrador de red sobre la manera más sencilla de hacerlo. Por lo general y si se trata de una red pequeña, en tu casa o tu oficina, puedes utilizar recursos compartidos de red pulsando con el botón derecho sobre la carpeta a compartir y seleccionando
2005 3 Proyectos recientes 3 "MisDvds" 3 Explorador de soluciones 3 Botón derecho sobre el proyecto 3 Publicar 2 Examinar 3 Seleccionar carpeta de distribución para los ficheros 3 Pulsar con botón derecho en la carpeta a compartir 3 Compartir 3 Seleccionar la forma en que se realizará la
Nº 154 154_62_67_Curso VB.indd 65
instalación 3 CD o DVD 3 Siguiente
4 Establecer ubicación para buscar actualizaciones 3 La aplicación no buscará actualizaciones 3 Siguiente 3 Comprobar pantalla resumen 3 Finalizar 5 Se generan ficheros "MisDvds.application", "Setup.exe" y con nombre de la versión 3 Doble click sobre alguno de los tres 3 Instalar
65 7/9/06 13:10:35
Curso
Opciones avanzadas de publicación Como estás observando, Visual Basic 2005 además de una poderosa herramientas de desarrollo también se ha convertido en una potente herramienta de publicación de tu software. Por ello debe anticiparse a tus necesidades y ofrecerte opciones avanzadas para los casos menos habituales o aquellos en los que quieras aportar un valor añadido a tu producto.
1
Desde el Explorador de soluciones pulsa con el botón derecho sobre el nombre del proyecto y selecciona la opción Propiedades. Esta ventana ya te es familiar y has trabajado con ella en numerosas ocasiones para diversos propósitos. Esta vez tienes que seleccionar la opción Publicar que en-
contrarás dentro de los grupos de opciones de tu izquierda. De esta manera llegarás a las Opciones de configuración de tu publicación como ya has visto en pasos anteriores. Debes saber que puedes publicar tu aplicación en una web o en un recurso compartido y ejecutarlo desde allí.
2
También puedes incluir otra ubicación remota para el instalador de la aplicación. Para ello introduce la dirección web Dirección URL de instalación. Escribe, por ejemplo, HYPERLINK “\\\\mipcpruebas\\publicaciones\\misdvds"\\ mipcpruebas\publicaciones\misdvds si se tratara
de un recurso compartido de tu red. En esta misma pantalla aparece la opción para indicar si tu aplicación se va a ejecutar desde una ubicación remota o como una aplicación convencional accesible desde el menú de Inicio. Para que se ejecute desde el menú de Inicio selecciona la opción La aplicación también está disponible sin conexión.
3
En esta misma pantalla pulsa el botón Archivos de aplicación, desde esta opción podrás controlas los archivos que vas a distribuir con tu aplicación, esta opción te permite, por ejemplo añadir algunos ficheros extras que quieras distribuir con tu aplicación, bien sean documentos de la misma o también algún programa auxiliar o cualquier
66 154_62_67_Curso VB.indd 66
otro fichero que, sin pertenecer exactamente a la aplicación, puede facilitar su uso o proporcionar alguna utilidad de valor añadido para tus usuarios, algo en lo que siempre debes pensar. Dentro de los ficheros de la aplicación puedes generar grupos de ficheros para aclarar su uso. Por defecto, los ficheros generados son del grupo "Requerido" ya que sin ellos la aplicación no funcionará correctamente, pero del mismo modo puedes crear tu propio grupo documentación donde adjuntarás toda la documentación que quieras distribuir con tu producto. Cierra la ventana de Archivos de aplicación pulsando sobre el aspa.
4
Continúas en las opciones de Publicación de las propiedades de tu proyecto. Ahora tienes que configurar las opciones de instalación de los componentes adicionales que tu aplicación utilizará. En este caso puedes distribuir el mismo .NET Framework si quieres asegurarte que el usuario final no tenga problemas de versión. Algo imprescindible para la correcta ejecución de esta aplicación es disponer de SQL Server Express, ya que ha sido el
repositorio de datos que has elegido para almacenar toda la información de tus DVDs. Naturalmente, debes asegurarte que el usuario final disponga de la base de datos para poder utilizarla desde tu programa, para ello la manera más sencilla es incluir el fichero de instalación de la misma base de datos en la distribución de tu programa. Para ello debes mantenerla marcada esta pantalla. El último componente a instalar será Windows Installer que facilitará la ejecución de la instalación en sí.
5
Si deseas incluir más componentes puedes pulsar sobre el enlace Buscar más componentes redistribuibles en el centro de actualizaciones de Microsoft. Aún te resta un parámetro por configurar que es dónde se ubicarán los ficheros de distribución de estos componentes. Aquí debes tener
en cuenta varios factores, si vas a disponer de bastantes aplicaciones que compartan los mismos requisitos y que estén todos en ubicación accesible, como por ejemplo en tu casa o en la oficina puedes mantener una ubicación común para los paquetes de instalación de tus componentes que deberás indicar para todos los paquetes de distribución de todos tus programas. Si por el contrario tus aplicaciones tienen usuarios muy dispares o tienes dudas si tendrán acceso a una ubicación común deberás mantener estos componentes en el mismo lugar que tu programa. Si tienes dudas deja marcada la opción Descargar los componentes del Sitio Web del proveedor de los componentes.
6
Recuerda que un tema importante es la distribución de actualizaciones, si ya es costosa la distribución de la versión inicial de tu programa, cada vez que realices una mejora en él deberás actualizar la versión de todos tus usuarios. Si la actua-
lización se debe a un error en tu aplicación, querrás que este error afecte a la menor cantidad de usuarios posibles por lo que debes actualizar su versión antes de que el error se produzca. Visual Basic 2005 te permite la mejor manera de realizar estas actualizaciones y puedes elegir cuándo quieres que tu programa se auto-actualice. Para ello pulsa la opción Actualizaciones de la pantalla de Opciones de publicación en la que te encuentras. Deberás seleccionar si deseas que tu programa busque nuevas actualizaciones, si quieres que lo realice antes o después de que se inicie la aplicación, incluso puedes señalar periodicidad en las que quieres que se realicen la comprobación en busca de actualizaciones. Por último puedes también señalar la versión mínima a partir de la cual se deben buscar actualizaciones y la ubicación donde buscarlas.
7
Las últimas opciones de actualización puedes configurarlas desde la misma pantalla pulsando la Opciones. En estas ventana puedes incluir el idioma en el que quieres distribuir la aplicación, tu nombre o el nombre
www.pctoday.es 7/9/06 13:10:38
Visual Basic 2005 Express Edition. Parte 9ª que quieras que aparezca en la distribución, etc. Otra opción muy interesante es la de generar una web de soporte para el producto en el que se ha convertido tu aplicación. Para ello, indica un nombre para la implantación, por ejemplo Soporte, y marca la opción Generar automáticamente la Web de implementación. Si tu aplicación es muy sencilla o si no consideras necesario emplear esta
opción de soporte, bastará, simplemente, con que la mantengas desmarcada. En el resto de opciones puedes mantener aquellas que aparecen marcadas por defecto. Entre ellas destaca la utilización de la extensión .DEPLOY lo que te permite realizar la distribución de tu nuevo software, así como de las distintas versiones que de este vayas creando, con un solo click.
Resumiendo... 1 Explorador de soluciones 3 Botón derecho sobre nombre del proyecto 3 Propiedades 3 Publicar 3 Opciones de configuración
2 Dirección URL de instalación 3 Escribir dirección Web 3 Activar opción La aplicación también está disponible sin conexión 3 Pulsar el botón Archivos de aplicación 3 Añadir ficheros dentro del grupo Requerido 3 Cerrar ventana 4 Configurar las opciones de instalación de los componentes adicionales 3 Seleccionar .NET Framework 3 Seleccionar SQL Server Express 3 Seleccionar Windows Installer
5 Buscar más componentes redistribuibles en el centro de actualizaciones de Microsoft 3 Descargar los componentes del Sitio Web del proveedor de los componentes 6 Opciones de publicación 3 Actualizaciones 3 Elegir las opciones necesarias 7 Opciones 3 Generar una web de soporte 3 Indicar un nombre 3 Marcar Generar automáticamente la Web de implementación 3 Mantener resto de opciones por defecto
Controlando tus versiones Como ya comprobaste en el capítulo anterior es muy importante el control de los cambios y versiones que realizas en tu aplicación. Será el control de estas versiones lo que te permitirá convertir tus aplicaciones en auténticos productos software. En cualquier caso, esto facilitará enormemente el control de las distribuciones de tus aplicaciones.
1
Abre, como hiciste en el caso anterior, el Asistente para la publicación del proyecto. Finaliza la ejecución del Asistente con los mismos parámetros que en las instrucciones descritas y comprobarás cómo se genera, en la misma carpeta de publicación, un nuevo grupo de ficheros. Si observas las capetas, el nombre de la carpeta y el fichero terminan en 1 en lugar de 0 como lo hacían anteriormente. Esto quiere decir que la versión ha aumentado en su último dígito. Visual Basic 2005 ha realizado el trabajo por ti y ha generado una versión por cada publicación. De esta manera puedes llevar el registro de los cambios realizados.
2
Para hacer una última comprobación, vuelve a generar otra versión. Una vez más, desde el Explorador de soluciones pulsa con el botón derecho sobre el proyecto y selecciona la opción Publicar. Se abrirá el Asistente para la publicación del proyecto. Finaliza la ejecución del Asistente como en el caso anterior. Ahora, la versión generada será la 1.0.0.2. Para comprobar qué está ocurriendo pulsa con el botón derecho sobre el proyecto y elige la opción Propiedades, vuelve al grupo de opciones Publicar y verás que en la parte inferior aparecen las cajas de texto para cada dígito de la versión. En este caso puedes observar que la versión que aparece será
la 1.0.0.3 que es la que se deberá generar la siguiente vez que ejecutes la publicación. Esto se debe a que está marcada la opción Incrementar la versión automáticamente en cada publicación.
3
En numerosas ocasiones necesitarás dar un salto mayor en la versión que deseas generar. Así, cuanto mayor sea el cambio o los cambios menor deberá ser el orden del dígito a modificar. Por ejemplo, para añadir nuevas pantallas para la clasificación de tus DVDs deberías cambiar el segundo dígito e introducir el valor 1. Recuerda que cuando modi-
4
Todavía te resta identificar las últimas configuraciones de la ejecución de tu aplicación. Accede a las propiedades del proyecto pulsando botón derecho sobre el mismo en el Explorador de soluciones. Señala el grupo de opciones Segu-
ridad para determinar el nivel de seguridad de tu aplicación. Selecciona Habilitar configuración de seguridad y, posteriormente, la opción Aplicación de plena confianza. ■
Resumiendo... 1 Explorador de soluciones 3 Botón derecho sobre nombre del proyecto 3 Publicar 3 Introducir parámetros del apartado anterior 3 Finalizar Asistente 3 Observar que el nombre de los ficheros termina en 1 2 Explorador de soluciones 3 Botón derecho sobre nombre del proyecto 3 Publicar 3 Introducir parámetros del apartado anterior 3 Finalizar Asistente 3 Observar que el nombre de los ficheros termina en 2 3 Botón derecho sobre nombre del proyecto 3
Nº 154 154_62_67_Curso VB.indd 67
ficas el valor de uno de los dígitos de una versión el resto de números más a la derecha deberán cambiar a 0 a modo de contadores. También recuerda desmarcar la opción de autoincremento automático si vas a llevar el control de los números de versión por tu propia cuenta. Pulsa el botón Publicar si ya has establecido todos los parámetros o, si quieres modificar alguno, vuelve a pulsar el botón Asistente para publicación.
Propiedades 3 Publicar 3 Observar el resultado obtenido 3 Escribir el número de versión en las casillas correspondientes 3 Desactivar la opción Incrementar la versión automáticamente en cada publicación 3 Publicar 4 Explorador de soluciones 3 Botón derecho sobre nombre del proyecto 3 Seguridad 3 Habilitar configuración de seguridad 3 Aplicación de plena confianza
67 7/9/06 13:10:40