Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Aprende a programar
Si siempre has tenido el gusanillo de la programacin pero nunca te has atrevido, o si ya hiciste tus "pinitos" con el tradicional y entraable Visual Basic, ahora tienes la oportunidad de iniciarte en el mundo de la programacin con la nueva tecnologa .NET. Para ello vas a aprender a usar la aplicacin Visual Basic Express Edition, la herramienta gratuita de programacin creada por Microsoft.
4. El lenguaje de programacin
Sentencias e instrucciones. Condiciones y bucles PC Today no 139
5. Diseo de aplicaciones
Depuracin del cdigo PC Today no 140 PC Today no 141 PC Today no 142 PC Today no 143 PC Today no 144
7. Securizar e imprimir
Control de acceso, usuarios y perfiles
Instalacin y despliegue
Creacin y ejecucin de un instalador
icrosoft tiene claro desde hace varios aos que ha de apostar por sus desarrolladores y por ello est dedicando una especial atencin 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 ms completas, potentes y fciles de usar por el programador. La ltima de ellas ha sido la versin Express de Visual Basic. Con esta aplicacin, Microsoft democratiza definitivamente el desarrollo de aplicaciones para su plataforma .NET. Sobre todo, porque se trata de una herramienta gratuita, pero tambin por su sencillez de uso y por el gran
nmero 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 ejecucin en tu PC, en cualquier PC de tu red local, en Internet o mediante CDs de distribucin. Para que puedas hacer todo esto vas a revisar las principales caractersticas de la herramienta de desarrollo; vas a ponerte en contacto, de una manera sencilla y muy prctica, con una autntico lenguaje de programacin orientado a objeto, y utilizars la potencia de una base de datos como SQL Server 2005 Express. Debido a la rapidez con la que obtendrs resultados, descubrirs que programar es
divertido y disfrutars creando aplicaciones de aspecto profesional que cubran tus necesidades especficas lo que, a menudo, no es sencillo conseguir con herramientas comerciales estndar-.
Visual Basic es uno de los mltiples lenguajes de programacin que acepta el .NET Framework. Como lenguaje de programacin, 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 fcil de aprender y
60
www.pctoday.es
Si alguna vez comenzaste a programar usando Visual Basic pero hace tiempo que lo abandonaste y quieres actualizarte, es importante que co-
Las opciones de Ayuda son numerosas en esta aplicacin y te permitirn recibir soporte, incluso, de otros desarrolladores
La programacin con Visual Basic 2005 te ofrece una alternativa a los programas comerciales
nozcas algunas de las novedades que presenta esta versin respecto a las antiguas. Ms adelante en este curso tendrs la oportunidad de aprender a utilizarlas en casos prcticos. Entre ellas, destacan:
Visual Basic haba conseguido completamente- con las ventajas que ello supone. Este sistema hace la programacin ms comprensible porque acerca los objetos abstractos de programacin a los objetos del mundo real. La versin Express Edition de Visual Basic es una herramienta de desarrollo para implementar aplicaciones Windows de forma sencilla. Con ella podrs crear, bsicamente, tres tipos distintos de aplicaciones: Aplicaciones Windows. Se ejecutan en un entorno Windows y se manejan a
Libreras de clases. Libreras de cdigo, 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. Como podrs comprobar a lo largo de este curso, la base de la sencillez conseguida por Visual Basic es que la aplicacin ofrece te ofrece un montn de ayuda para realizar una mejor programacin y, lo que es ms importante, para hacerlo de una manera fcil.
Code Snippets (Fragmentos de cdigo reutilizables). Proporcionan cdigo para las funciones ms comunes que quieras realizar. Adems de los fragmentos de cdigo ms usuales, que ya
La principal novedad de esta versin es que se trata, por primera vez, de un autntico lenguaje orientado a objeto
Qu es .NET?
Seguramente te preguntars: 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 ms del conjunto de utilidades que hemos denominado plataforma .NET Framework. instrucciones de .NET en un lenguaje intermedio llamado CLR (Common Language Runtime) para, en un paso posterior, convertirlo al cdigo que realmente entiende Windows -que podramos denominar "cdigo maquina"-. Y claro, te preguntars: Para qu todo este jaleo? Es como si para traducir una frase del ingls al espaol primero la tradujramos al esperanto y del esperanto al espaol. Qu ventajas puede tener eso? Pues muy sencillo. Resulta que en las aplicaciones Windows tradicionales la "traduccin" a lenguaje mquina de una misma instruccin resultaba diferente segn el lenguaje de programacin original y la herramienta utilizada. Debido a ello se producan 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 instruccin independientemente del lenguaje en que fuera programada y la herramienta de desarrollo utilizada. Adems, 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 aplicacin.
Esto quiere decir que, en lugar de ejecutar la aplicacin en Windows directamente, lo que
se hace es introducir una capa intermedia que es la encargada de convertir todas las
N 146
61
Curso
trminos del contrato de licencia y pulsa en el botn Siguiente. dispondrs de informacin adicional, as como acceso a enlaces de utilidad, formacin, ejemplos de cdigo y muchos recursos gratuitos procedentes de la comunidad de desarrolladores. 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 documentacin de ayuda MSDN Express Library. Te re-
Consejo
En la misma web desde la que vas a descargarte el programa, haz click en la palabras "siguiente" que encontrars dentro de la advertencia remarcada en rojo. De esta manera acceders a una nueva pgina donde podrs descargarte una herramienta de desinstalacin que te ayude en esta labor. Antes de emplearlo, lee las advertencias que Microsoft hace al respecto de su uso.
Si tienes instaladas otras versiones anteriores de Visual Studio no tendrs ningn 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 mquina. Para ello, debes pulsar en el botn 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-
Haz click en el texto Versin final en espaol. Se abrir una ventana en la que tienes que hacer click en Ejecutar (no pulses el botn Guardar) lo que iniciar la descarga. Finalizada esta, vuelve a pulsar en Ejecutar. Durante unos segundos aparecern varias pequeas ventanas que te indicarn que se estn aadiendo los componentes necesarios para la instalacin. Finalmente se iniciar un asistente que te ayudar durante el proceso de instalacin. Al elegir el botn Siguiente, se mostrarn en pantalla las instrucciones de uso y licencia de usuario. Lelas atentamente y, una vez ests seguro de la aceptacin, marca la casilla Acepto los
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 debers disponer constantemente de acceso a Internet para realizar las consultas de ayuda y documentacin que necesitars para poder desarrollar adecuadamente
tu tarea. Si vas a instalarlas, marca la casilla que encontrars delante de cada opcin y, despus, pulsa sobre Siguiente.
te, el siguiente orden de desinstalacin: 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. Ahora, ya est todo listo para que puedas descargarte la aplicacin con la que vas a seguir este curso. Abre tu navegador Web e introduce la direccin www.microsoft.com/spanish/msdn/ vstudio/Express/VB/default.mspx. En esta misma pgina podrs leer las ltimas advertencias de la versin y tambin
En la siguiente pantalla, el asistente te pedir que elijas la carpeta de destino de la instalacin. En concreto para esta aplicacin, es recomendable que respetes la ruta que se seala 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 ms experto. Pulsa en Instalar.
Resumiendo...
1 Abrir update.microsoft.com 3 Rpida 3 Descargar e instalar ahora 2 Modificar la configuracin de antivirus y/o firewall 3 Permitir actuali3 4 5 6 7
zacin de libreras de Windows Inicio 3 Panel de Control 3 Aadir/Quitar programas 3 Desinstalar los productos en orden Abrir www.microsoft.com/spanish/msdn/vstudio/Express/VB/default.mspx Click en Versin final en espaol 3 Ejecutar 3 Ejecutar 3 Siguiente 3 Marcar casilla Acepto 3 Siguiente Marcar las dos opciones 3 Siguiente Mantener la carpeta de destino 3 Instalar
Si cuentas en tu PC con algn software antivirus, antispyware o firewall es importante que modifiques su configuracin para permitir la actualizacin de algunas libreras propias del sistema operativo. Normalmente tu programa antivirus te pide autorizacin
62
www.pctoday.es
Curso
Registra tu programa
Ya has instalado tu versin de Visual Basic 2005 Express Edition. Pero todava quedan unos pasos importantes. De hecho, al acabar la instalacin 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 versin no expire a los 30 das y adems supone el acceso al Portal de beneficios que ofrece Microsoft, donde encontrars documentacin tutoriales, imgenes y multitud de elementos y componentes para enriquecer tus desarrollos y crear soluciones ms fcilmente. Para registrar tu versin de Visual Basic 2005 Express, en la pantalla que aparece al acabar la instalacin, pulsa en el texto Registrar ahora. Se abrir la pgina de acceso para usuarios de MSN. Si ya cuentas con una direccin de correo electrnico de Hotmail, introduce en los campos correspondientes la direccin y la contrasea. Despus, pulsa Aceptar. Si no, primero tendrs que crearte una.
Al hacer click en Aceptar aparecer un formulario en el que debes introducir tus datos personales. Slo son obligatorios los que aparecen sealados con un asterisco rojo. Sobre todo, asegrate de haber introducido correctamente tu direccin de correo electrnico. Cuando hayas finalizado, pulsa sobre Continuar.
Una nueva pantalla te pedir que revises ahora tu correo. En la Bandeja de entrada encontrars un mensaje de confirmacin de Microsoft con el asunto "Correo electr-
Express Edition para abrir por primera vez el programa. Tardar un poco. Una vez dentro, pulsa en la barra de mens sobre Ayuda y selecciona Registrar producto. En la ventana que aparece, pega
nico de confirmacin". Al abrirlo, dentro del cuerpo del correo, encontrars un vnculo. Haz como te solicita el mensaje y pulsa con el ratn sobre l. Como resultado, aparecer una ventana con tu clave de registro. Cpiala y cierra tu correo.
la clave que has obtenido en la pgina de registro y pulsa sobre el botn Completar registro. Tu software ya est registrado.
4
Consejo
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
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
Resumiendo...
1 Pulsar en Registrar ahora 3 Introducir direccin de correo electrnico
y tu contrasea 3 Aceptar 2 Rellenar el formulario 3 Continuar 3 Abrir el correo electrnico 3 Abrir mensaje: Correo electrnico de confirmacin 3 Click en el vnculo 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
Hasta el programador ms experto sabe apreciar el verdadero valor de una buena Ayuda. Y es nadie lo sabe todo. Adems, para qu vas a memorizar cosas que son accesibles mediante un simple click de ratn o que, incluso, tu herramienta de desarrollo puede escribir por ti?
La Ayuda
este men se puede situar a la izquierda, como una ficha ms en el rea principal, como men flotante y as hasta un interminable nmero de posibilidades. Pulsa sobre la ficha de bsqueda que aparece en el rea principal Desde esta ficha puedes acceder online a numerosos recursos en espaol y en ingls para obtener conocimientos del mundo entero. Introduce el concepto para el cual deseas obtener ayuda -por ejemplo, "Explorador de archivos"-, selecciona el lenguaje de programacin al que se refiere tu consulta
-en este caso, Visual Basic- y la tecnologa, Visual Studio. Los resultados de la bsqueda aparecern agrupados para que te sea ms simple localizarlos.
Existen otras maneras rpidas para que puedas acceder a la Ayuda del modo que ms te interese en cada momento. Si pulsas Ctrl+F1 desde la misma pantalla del
Explorador de soluciones acceders a la seccin Cmo de la Ayuda. Aparecer, a modo de gua rpida, la manera de realizar las tareas ms frecuentes en Visual Basic 2005 Express Edition as como otras funciones o conceptos que se mostrarn de manera organizada. Si lo que pulsas es la combinacin de teclas Ctrl+Alt+F1, llegars a la seccin Contenido. Recuerda hacerlo desde el punto, sentencia o palabra sobre la que requieras ayuda. Por ejemplo, desde el Explorador de soluciones. Aparecern de manera agrupada los temas de Ayuda. De esta forma puedes mantener tus ideas ordenadas y jerarquizar los conceptos y contenidos que quieres utilizar.
64
www.pctoday.es
2 4
que no aparecer ningn control hasta que no crees tu primer proyecto. Explorador de soluciones (4). Desde aqu puedes acceder a todos los ficheros de cdigo, de configuracin y propiedades del proyecto- que componen un proyecto, de una manera organizada.
Barra de estado (5). Esta barra muestra una amplia variedad de informacin dependiendo de la operacin en curso. Tambin obtendrs informacin sobre el resultado de la ejecucin de dicha operacin. Proyectos recientes (6). Desde aqu dispondrs de un acceso directo a los proyectos con los que hayas trabajado recientemente. Tambin puedes buscar otros proyectos o crear uno nuevo. Introduccin (7). Ayuda de primera mano para que recibir el soporte bsico necesario. Ideal para saber por dnde empezar.
Tambin puedes crear tu propio acceso directo a la ayuda mediante la opcin 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 cuestin, por ejemplo el que has encontrado en el paso 1 sobre el Explorador de soluciones, y presiona el botn Agregar a favoritos de la Ayuda. Cuando quieras acceder a estos Favoritos de la Ayuda bastar con pulsar Ctrl+Alt+F.
Desde aqu podrs personalizar completamente los temas que ms te interesen o los que utilices ms asiduamente pudiendo organizarlos de la manera que creas ms conveniente. Tambin puedes guardar bsquedas en la seccin de Favoritos.
Resumiendo...
1 Seleccionar Explorador de soluciones 3 Pulsar en F1 3 Buscar en el
ndice de temas 2 Pulsar sobre la ficha de bsqueda 3 Escribir Explorador de archivos 3 Seleccionar lenguaje de programacin: Visual Basic 3 Seleccionar: Visual Studio 3 Pulsar Ctrl+F1 3 Buscar en la seccin Cmo de la Ayuda 3 Pulsar Ctrl+Alt+F1 3 Buscar en la seccin Contenido de la Ayuda 4 Seleccionar un tema de Ayuda 3 Agregar a Favoritos 3 Pulsar Ctrl+Alt+F
que hayas formulado. Tambin puedes dar rplica a las respuestas recibidas para aclarar conceptos o pedir ms informacin referente al tema original. 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 mens. Acceders a un rea de la web de Microsoft desde donde puedes
CodeZone. En ambas encontraras multitud de recursos de utilidad para aprender y para mejorar cualquier desarrollo que hayas realizado. Tambin podrs estar informado de todas las novedades del producto y de la tecnologa. Dentro de cada una de estas zonas encontrars instrucciones detalladas de los servicios y secciones que te ofrecen.
enviar tus sugerencias, tus comentarios y los errores que hayas podido detectar. De esta manera ayudars 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 nmero de desarrolladores. Desde la barra de mens y mediante la opcin Acceso a centros de desarrolladores, podrs acceder a la comunidad Microsoft Visual Basic Developer Center o a
pregunta desde la Web o desde un lector de News como Outlook) y el tema Visual Basic. A continuacin, introduce la pregunta y haz click sobre el botn Guardar. Recuerda que tienes que utilizar el
De la misma manera que anteriormente has realizado la bsqueda en la ventana de Ayuda, tambin puedes realizar bsquedas en contenidos y documentos de las comunidades de desarrolladores. Para ello, pulsa el botn Bsqueda de la comunidad, que se encuentra en la barra de mens dentro de la opcin Comunidad. Con ello se desplegar un buscador para acceder a las ltimas plantillas, Starter Kits, ejemplos, fragmentos de cdigo Intellisense, con-
N 146
65
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 ms sencilla. Introduce el tema que quieras buscar en la casilla diseada para este fin. Hecho esto,
pulsa sobre el botn Aceptar. Se iniciar en proceso de bsqueda, que puede durar varios segundos. Los resultados se mostrarn de manera similar a los de la bsqueda que has realizado anteriormente en la seccin de Ayuda.
trol Botn e identifcalo como btnSumar. De la misma manera modifica la propiedad Text para que el texto del botn muestre la palabra Sumar.
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 ttulo del formulario. Escribe, en este caso, Mi Calculadora. De esta manera tan sencilla ya has creado una aplicacin. Se trata de la aplicacin ms simple posible ya que slo tiene una ventana. Para probarla, pulsa sobre
El ltimo paso para completar tu programa es aadir 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 botn "Sumar", se produzca la suma de los nmeros
Mediante cualquiera de estos medios logrars que se abra la ventana de Nuevo proyecto. Ahora, selecciona el tipo de aplicacin que vas a crear, en este caso Aplicacin para Windows, y, desde la misma ventana, dentro de la casilla destinada a tal fin, indica
el men Depurar y elige la opcin Iniciar depuracin. Conseguirs 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.
el nombre que hayas elegido para tu aplicacin. Escribe, por ejemplo, "MiPrimerPrograma" y pulsa en Aceptar. 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-
Ahora tienes que agregar controles a tu programa. Aunque ser un tema que vers ms 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.
introducidos en las cajas de texto y semuestre el resultado en la etiqueta que has colocado junto a los TextBox. Desde la ventana de diseo, tienes que hacer click dos veces sobre el botn "Sumar" que acabas de modificar dentro de tu formulario. Se abrir la ventana de cdigo, creando la clase del formulario en el que te encuentras y el mtodo Click del botn que acabas de pulsar. No te asustes por todos estos conceptos ya que los veremos a lo largo del curso.
66
www.pctoday.es
Curso
Colcate dentro del mtodo btnSumar_Click. Una vez all, vas a escribir tu fragmento de cdigo. Como an no cuentas con los conocimientos necesarios, bastar con que copies literalmente el texto que reproducimos a continuacin. Podrs observar como la ayuda de Intellisense -mediante su funcin de autorellenado- te va "sugiriendo" cdigo 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 ests escribiendo ya que durante el curso vas a ver los tipos y operacio-
a nmero los contenidos de las cajas de texto, sumarlos y asignar el resultado a la etiqueta correspondiente. Una vez hayas introducido el cdigo, desplzate a la barra de mens que hay en la parte superior de tu ventana. All, pulsa de nuevo sobre el men Depurar y, dentro de l, elige la opcin Iniciar depuracin.
lgicamente casi nunca lo encontraras. Visual Basic 2005 Express te ayuda a guardar y clasificar estos fragmentos de cdigo pre-programados mediante los Code Snippet. Pero lo ms importante, como vers en sucesivos captulos de este mismo curso, es que VB 2005 Express trae incluida en su Ayuda las 500 tareas de programacin ms comunes para que puedes utilizar este cdigo en tus propios programas. Adems podrs almacenar tu propio cdigo.
nes que se utilizan aqu, en detalle. Simplemente, para tu informacin, comentarte que a travs de esta instruccin 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, segn vayas adquirirendo ms experiencia, recuerda tus inicios y colabora contestando a las preguntas de otros usuarios menos expertos. Ellos lo agradecern tanto como t.
Como resultado, se volver a abrir la ventana. La nica diferencia es que en ella podrs ver ahora, adems de los elementos de los que ya disponas, los controles que acabas de aadir. Para asegurarte de que tu programa funciona correctamente, prueba a introducir diversos nmeros en las casillas correspondientes y pulsa con el ratn sobre el botn "Sumar". Si todo ha ido bien, comprobars 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 cdigo para comprobar que no hay ningn error de sintaxis en ste.
Para terminar, tienes que guardar el proyecto del programa que has realizado. Pulsa en la barra de mens sobre Archivo y elige la opcin Guardar todo. Como resultado, aparecer una nueva ventana
en la que tendrs que selecciona la carpeta de tu disco duro donde deseas guardar tu proyecto -o crear una especfica para este fin-. Pulsa en el botn Aceptar para guardar tu programa y finalizar tu proyecto.
Resumiendo...
1 Archivo 3 Nuevo proyecto 3 Seleccionar Aplicacin para Windows 3
Escribir nombre 3 Aceptar 2 Ventana Propiedades 3 Name 3 Escribir: FormInicio 3 Text 3 Escribir: Mi calculadora 3 Depurar 3 Iniciar depuracin 3 Comprobar el funcionamiento de la aplicacin 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
6 7 8 9
68
www.pctoday.es
Curso
4. El lenguaje de programacin
Sentencias e instrucciones. Condiciones y bucles PC Today no 149
5. Diseo de aplicaciones
Depuracin del cdigo PC Today no 150 PC Today no 151 PC Today no 152 PC Today no 153 PC Today no 154
7. Asegurar e imprimir
Control de acceso, usuarios y perfiles
Instalacin y despliegue
Creacin y ejecucin de un instalador
no de los elementos ms 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 autntico estndar en el mundo del desarrollo- son los Starter Kits. Se trata de lo que, en el lenguaje de programacin se denomina plantillas de proyectos. Es decir, componen un proyecto completo con todos sus elementos (formularios, controles, cdigo, etc.) que t puedes utilizar para realizar tu propia aplicacin. La utilidad que te aportan estas plantillas es que te permiten conseguir una aplicacin que se adapte completamente a tus necesidades a partir de otra ms genrica. Es como si te dieran
el examen ya resuelto y t solo tuvieras que modificar las frases que realmente te sabes o que no estn del todo correctas en las soluciones propuestas. Los Starter Kit te permiten, en definitiva, modificar aplicaciones ya realizadas, accediendo a su cdigo fuente. Esta tcnica no es nueva. Desde siempre se han creado nuevos programas a partir de cdigo ya realizado por otras personas ms expertas. La novedad que aporta Visual Basic 2005 Express es la facilidad de uso de esta funcionalidad. Adems, en este caso, la aplicacin ofrece la posibilidad de crear estas plantillas, no slo para tu uso personal, sino tambin para distribuirlas a gente que trabaje contigo. De hecho, en este captulo aprenders 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 automticamente en tu equipo con la instalacin tpica de Visual Basic 2005 Express. La primera te permitir crear tu propia aplicacin de clasificacin de DVDs. Adems de darte la oportunidad de introducir, ordenar y localizar las pelculas de tu videoteca, podrs ampliar los datos que posees sobre ellas accediendo a la base de datos de la web de Amazon. Mediante el otro ejemplo, podrs crear tu propio salvapantallas utilizando imgenes propias o eligiendo entre las que te ofrece la base de imgenes del programa.
62
www.pctoday.es
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 botn Guar-
Consejo
Recuerda que debes tener instalado SQL Server 2005 Express. Esta aplicacin realiza una conexin a base de datos por lo que si seguiste todos los pasos de la instalacin en el captulo anterior no tendrs problemas.
cipal de la aplicacin, de manera que sta ya estar plenamente funcional. Para comprobar su correcto funcionamiento puedes ir introduciendo los datos correspondientes a tu primera pelcula. Introduce los campos requeridos: Ttulo, Director, Ao, etc. Segn pulses la tecla Tab para pasar de un campo a otro, se estar produciendo la grabacin de los datos. Cuando hayas acabado con tu primera pelcula, pulsa sobre el botn Agregar ttulo para aadir una nueva pelcula tu lista.
Desde el men de Inicio, ejecuta Visual Basic 2005 Express. En la barra de mens, selecciona Archivo y Nuevo proyecto. Los Starter Kit aparecen junto al resto de aplicaciones
dar todo de la barra de herramientas. En la ventana que aparecer, selecciona la carpeta donde quieres almacenar los archivos y pulsa en Guardar. Ahora tienes que ejecutar tu aplicacin. Para ello, dentro de la barra de mens, haz click en Depurar y despus en la opcin Iniciar depuracin. Tambin puedes ejecutar
Ahora puedes probar todas las funcionalidades implementadas. De momento solo podrs utilizar las funcionalidades de la zona Ver DVD ya que el mdulo Bsqueda en lnea
que puedes realizar (Aplicacin Windows, Biblioteca de clases, Aplicacin de consola). Selecciona el Starter Kit de "Mi coleccin de pelculas" 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 aplicacin. Una vez has establecido el nombre, pulsa Aceptar para crear el proyecto. Vers como se despliegan en el Explorador de soluciones varias carpetas y ficheros.
todava no est funcional. Para utilizar el buscador introduce el principio del ttulo a buscar en la casilla correspondiente y pulsa Filtrar. En el listado aparecer la pelcula que ests buscando y que ya est introducida. Si lo que quieres es un listado completo de todas las pelculas que has introducido, pulsa el botn Ver todos los DVD. De manera
personalizar la documentacin del proyecto con tus propios comentarios y las modificaciones que hayas realizado. Haz click dos veces sobre la pgina .htm de Ayuda. Modifica cualquier texto, por ejemplo <h1>Starter Kit: Mi colección de películas</h1> y pon en su lugar <h1>Proyecto: La colección de películas de Quique</h1>. Pulsa el botn Guardar de la barra de herramientas. Ahora, vuelve a la ficha de documentacin, pulsa con el botn derecho sobre ella y elige Actualizar. Podrs ver c-
Una vez creado el proyecto, aparecer en el rea de trabajo una gua de uso del Starter Kit que acabas de utilizar -que en este caso sera el Starter Kit "Mi coleccin de pelculas"-. En esta documentacin dispondrs de informacin de cmo utilizar la aplicacin, informacin tcnica sobre los ficheros que componen
esta opcin directamente desde la barra de herramientas mediante el botn Ejecutar o simplemente pulsar F5, que es la opcin ms habitual. Automticamente se desplegar el formulario prin-
sencilla tambin puedes agregar o eliminar pelculas. Adems puedes utilizar algunas funcionalidades extendidas como importar una imagen. Para ello tienes que pulsar el botn Importar imagen. Si lo que quieres es establecer tu propia clasificacin con respecto a una pelcula, desplaza el ratn por las "estrellas" de calificacin y vers como se iluminan, marcando as tu seleccin.
Resumiendo...
1 Inicio 3 Visual Basic 2005 3 Archivo 3 Nuevo Proyecto 3 Starter Kit
Mi coleccin de pelculas 3 Nombre del proyecto 3 Aceptar
2 Revisar la documentacin del proyecto 3 Explorador de soluciones 3 Documentacin 4 Click dos veces en Getting Starter Tutorial 3 Modificar el fichero 3
Archivo 3 Guardar
N 147
63
Curso
Para agregar todos los datos de la pelcula que acabas de encontrar a tu propia coleccin, pulsa en el botn Aadir a coleccin. Si quieres comprobar que los datos se han aadido correctamente, haz click
Consejo
Al estar trabajando en un entorno de desarrollo, cada vez que arranques la depuracin borrars los datos introducidos en la ejecucin anterior. Por ello, si quieres que estos datos persistan debes ejecutar la versin distribuible de tu programa, tal y como vers en el ltimo captulo de este curso.
microsoft.com/vbasic/downloads/ starterkits/default.aspx para descargarte una nueva versin del Starter Kit "Mi
que aceptar los trminos legales de uso. Tras esto, visualizars el Starter Kit que deseas instalar tras lo cual debes pulsa sobre el botn Siguiente. Aparecer una nueva ventana de confirmacin en la cual debes pulsar sobre Finalizar. Tras esto, se mostrar un mensaje en pantalla que te indicar que la instalacin del Starter Kit se ha realizado correctamente. Pulsa el botn Cerrar para que desaparezca el asistente para la instalacin de Starter Kit.
en esta ocasin las funcionalidades de bsqueda en lnea se encuentran habilitadas. Pulsa sobre el botn Search online (Bsqueda en lnea). Aparecer la ventana de bsqueda con todas las funcionalidades habilitadas. Introduce el ttulo de la pelcula que deseas buscar y pulsa en el botn Buscar. Asegrate de tener habilitada tu conexin a Internet dado que esta funcionalidad se conecta al servicio Web de Amazon para realizar la bsqueda. 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 podrs ver los detalles de cada una de ellas, incluida la imagen de la pelcula.
en Mis Dvds. Esta accin te llevar de nuevo a la ventana principal en la que podrs ver cmo la pelcula seccionada se ha aadido a tu listado. Como toda la informacin ya reside en tu aplicacin puedes aadir tus propios comentarios y clasificacin rellenando el campo Comentario y seleccionando el nmero de "estrellas" correspondiente segn tu valoracin de la pelcula.
Resumiendo...
coleccin de pelculas". Esta versin est en ingls pero, como vers ms adelante, es fcil modificar tu proyecto para cambiar textos o cualquier 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 instalacin. Introduce el nombre que quieras para este nuevo
64
www.pctoday.es
Personaliza tu aplicacin
Una vez ya tienes tu proyecto, puedes realizar en l todas las modificaciones que consideres oportunas para crear la aplicacin 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. Adems, te aseguras de que el software que instalas es seguro, sin virus ni spyware. Como viste en el captulo anterior la aplicacin que vas a crear est compuesta de formularios, que sern las ventanas de tu aplicacin definitiva, y de controles, que sern los botones y elementos que aparecern dentro de la ventana de tu aplicacin y que te permitir realizar las acciones necesarias (por ejemplo, pulsar botones, desplegar opciones o visualizar imgenes). Ahora personalizars algunos de estos controles para darle un aspecto diferente a los proyectos que acabas de crear. que te sea ms fcil encontrarla, recuerda que las propiedades, por defecto, estn ordenadas por orden alfabtico-. Pulsa sobre el botn Seleccionar recurso y despus en Importar. Ahora elige la imagen que desees incluir de entre las que tienes en tu PC y pulsa
ViewDetailsButton seleccionado, haz click en la propiedad Forecolor de la ventana de Propiedades. Despliega las opciones de colores y selecciona, por ejemplo, el
na la propiedad Text (Texto). Ahora, pulsa sobre el valor de la propiedad y sustituye el texto actual por el ttulo que quieras aparezca en tu pantalla, por ejemplo Coleccin de pelculas de Quique. Tambin cambia el color del texto en Forecolor, seleccionando el color Maroon. Es el momento de que modifiques la informacin que se muestra en pantalla. Vas a aadir una nueva columna a tu listado de pelculas. Para ello, desde el Explorador de soluciones pulsa sobre "ListDetails.vb" y luego haz click en el botn Ver diseador. Al cabo de unos segundos aparecer la parte de la ventana donde se muestran los datos de tus pelculas.
color Maroon. Comprobars cmo el texto cambia al color que has elegido.
Aceptar. Podrs ver que la imagen aparece en pantalla como fondo del control que has seleccionado. El control con el que ests trabajando es de tipo Button (Botn), 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 (botn). Para redimensionar este control, coloca el ratn en una de sus esquinas. Mueve el ratn hasta la posicin que desees y conseguirs que el control cambie de tamao. Tambin puedes cambiar el color del texto para que resulte ms visible. Para ello, manteniendo el control
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 diseador. Elige la imagen que quieras sustituir por la tuya personalizada. Recuerda que esto
Vuelve al Formulario y busca ahora el control de etiqueta que incluye el ttulo Mi coleccin de pelculas. 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 ttulo dentro de un formulario. De nuevo en la ventana de Propiedades seleccio-
es un entorno de desarrollo y no un editor grfico de manera que, cuando seleccionas la imagen lo que ests 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. 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
Formulario principal que sirve como contenedor de controles. Control de usuario personalizado que sirve como visor y editor de la coleccin de pelculas. Control de usuario personalizado que sirve como herramienta de bsqueda para los servicios Web en lnea. Base de datos de la coleccin de pelculas. Al aadir una base de datos a tu proyecto, es importante que sepas dnde est ubicada. Para obtener ms informacin, busca el tema de Ayuda "Cmo: 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 imgenes, por ejemplo mapas de bits. Carpeta que contiene la documentacin y la Ayuda del Starter Kit. Haz click con el botn secundario en Getting Started Tutorial.htm y, a continuacin, en Ver para visualizar el contenido de la documentacin. Controles personalizados que utiliza la coleccin. Carpeta que contiene la configuracin de la aplicacin y el proyecto de Visual Basic. Haz click dos veces para abrir el Diseador de proyectos.
N 147
65
Curso
Selecciona el control donde aparece el listado de tus pelculas. Este control se llama DataGridView1. Pulsa con el botn derecho del ratn sobre l y elige la opcin Agregar una columna. Selecciona la columna MyRating, que es la que almacena la valoracin que has realizado de la pelcula. Dentro de ella, modifica nicamente el campo Texto de la cabecera introduciendo por ejemplo Mi Calificacin. Selecciona las opciones Visible y Slo
lectura. Aumentando el tamao del control podrs 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 ms sencilla es pulsando el botn Guardar todo que encontrars en la barra de herramientas. Para ejecutar la aplicacin y visualizar los cambios que has realizado, pulsa en el men Depurar y en la opcin Iniciar depuracin. Aparecer una ventana con el formulario que acabas de modificar. Comprueba que todos los cambios que has realizado se ven reflejados en tu aplicacin. Tambin puedes comprobar
cmo el resto de la aplicacin que has creado funciona de la misma manera en que lo haca ya anteriormente.
Resumiendo... Resumiendo...
1 Seleccionar MainForm.vb 3 Ver diseado 3 Seleccionar el botn a
modificar 2 Ventana de Propiedades 3 Propiedad BackgroundImage 3 Seleccionar recurso 3 Importar 3 Elegir imagen nueva 3 Aceptar 3 Arrastrar el ratn para redimensionar el botn 3 Propiedad ForeColor 3 Color: Maroon 4 Seleccionar etiqueta del ttulo 3 Ventana de Propiedades 3 Propiedad Text 3 Escribir Coleccin de pelculas de Quique 3 Propiedad ForeColor 3 Color: Maroon 5 Seleccionar control ListDetails.vb 3 Ver diseador 6 Seleccionar control DataGridView1 3 Pulsar botn derecho del ratn 3 Agregar una columna 3 MyRating 3 Texto de la cabecera 3 Escribir Mi Calificacin 3 Visible 3 Solo lectura 3 Aceptar 7 Guardar 3 Depurar 3 Iniciar Depuracin 3 Comprobar los cambios
barra de mens, donde debers elegir Archivo y Nuevo proyecto. Selecciona la opcin 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 botn Aceptar para crear el proyecto. Una vez creado el proyecto aparecer en el rea de trabajo la documentacin asociada el Starter Kit. Desde all dispones de una gua de uso. Adems, encontrars informacin de cmo instalar y utilizar el salvapan-
tallas que acabas de crear. Puedes acceder a este fichero de Ayuda si pulsas con el botn derecho del ratn sobre el Explorador de soluciones, eliges el fichero de Ayuda "Getting Started Tutorial. htm" y seleccionas la opcin Ver dentro del explorador. Ten en cuenta, adems, que al tratarse de un salvapantallas, el mnimo moviendo del ratn durante la ejecucin har que el salvapantallas se cierre y la aplicacin finalice. Para aadir tus propias imgenes al salvapantallas, tu primera labor ser eliminar las que ya vienen incluidas en el proyecto. Podrs hacerlo desde la carpeta Resources (Recursos). brela y selecciona todos los archivos que incluye. Tras esto, pulsa con botn derecho del ratn y elige la
opcin Eliminar. Aparecer un mensaje de confirmacin que debes Aceptar. Una vez eliminadas las imgenes que se incluyen por defecto puedes aadir las tuyas propias. Pulsa con el botn derecho del ratn sobre la carpeta Resources (Recursos). Despus, elige Aadir, Elemento existente y Tipo de fichero. Se abrir un men des-
plegable donde debes elegir la opcin Imgenes. Ahora, busca la carpeta donde hayas almacenado las imgenes que quieres que aparezcan en tu salvapantallas. Puedes seleccionar todas las imgenes que consideres oportunas, incluso aunque estn almacenadas en varias carpetas. Finalmente todas tus imgenes estarn incluidas en la coleccin de imgenes de la carpeta Resources (Recursos). Desde la ventana de Propiedades cambia la propiedad del Nombre de archivo y escribe "SSaverBackground" y "SSaverBackground2". Estos nombres estn definidos en las colecciones de la aplicacin que, a medida que se desarrolle este curso, aprenders a modificar.
Una vez modificadas las imgenes, tienes, como siempre, que ejecutar la aplicacin. Para ello pulsa el botn Iniciar depuracin de la barra de mens. Debes tener cuidado ahora de no mover el ratn ni tocar el teclado ya que, aunque estamos en un entorno de desarrollo, los "eventos" es decir, cualquier accin realizada o recogida por tu ordenador- es tambin tratada en este entorno. Por lo tanto, al tratarse de una aplicacin de salvapantallas, estos eventos provocaran una salida de tu aplicacin por lo que no podras visualizar nada. Tambin debes tener en cuenta que esta aplicacin
66
www.pctoday.es
est mostrando textos de una fuente externa por lo que si no tienes conexin a Internet no se mostrar ningn texto. En captulos posteriores de este curso podrs t mismo cambiar estos textos o crear una fuente comn para que t y tus amigos podis compartir los textos que aparezcan en vuestros salvapantallas.
2 3 4
Bsqueda de plantillas
Una vez que ya dominas el uso de plantillas es importante tambin que aprendas a buscar nuevas plantillas de proyectos que se ajusten a tus necesidades o que te vayan resultando interesantes segn vayan apareciendo. Visual Basic 2005 Express Edition te ofrece la posibilidad de buscar nuevas plantillas y Starter Kit a travs de la bsqueda de su Ayuda online. Las plantillas no son solamente de proyectos completos, como las que has utilizado en los pasos anteriores, sino que tambin pueden ser de formularios y prcticamente de cualquier objeto de los que ya irs descubriendo en los siguientes captulos de este curso. Puedes acceder al buscador de la Ayuda online desde el men de creacin de nuevos proyectos. Pulsa en el men Archivo y haz click en Nuevo. Una vez all, puedes ver un grupo de elementos denominado Mis
dad ms importante y est soportada por el propio Microsoft. Vers que aparecen resultados en ingls y en espaol en dos grupos diferentes. Puedes probar a introaccedido a ella representada como una escala de estrellas -a mejor valoracin, mayor nmero de estrellas-. Finalmente tambin puedes acceder al sitio web principal de esa informacin.
al buscador desde la opcin que has elegido ya aparecen marcadas varias opciones, como el idioma en el que aparece Visual Basic, la tecnologa .NET y Visual Studio 2005, y, lo que es ms importante, el
Consejo
Recuerda que la comunidad de desarrolladores es internacional y que hay gran cantidad de contenido en ingls por lo que no tengas miedo de buscar contenido en ese idioma. Puedes buscar en un diccionario la traduccin del tipo de aplicacin que busques y utilizarlo.
ducir una palabra en espaol, por ejemplo Imagen -si buscas un Starter Kit de tratamiento o catalogacin de imgenesy realiza la bsqueda, los resultados se mostrarn en el rea MSDN (Espaol). Posteriormente, prueba la misma palabra en ingls, en el ejemplo, Image. Aparecern nuevos resultados, esta vez en el rea de MSDN Online (Ingls). El propio ttulo del resultado de la bsqueda es en realidad un enlace a la pgina que contiene la informacin completa o fichero a descargar. Tambin puedes observar un texto resumen explicativo del contenido del resultado que acabas de encontrar. Adems, aparece la valoracin recibida por esa informacin por otros usuarios que han
Tambin puedes consultar pginas oficiales de publicacin de Starter Kit o plantillas. En ellas irn apareciendo las plantillas de proyectos que se vayan creando y que te pueden interesar. La direccin de la pgina de Starter Kit de Microsoft es http://msdn.microsoft.com/ vbasic/downloads/starterkits/default.aspx. Tambin tienes una web en espaol.
Plantillas. En l se incluye una opcin denominada Buscar plantillas. Elige esta opcin y pulsa en Aceptar. Como resultado, aparecer la ventana de bsqueda de Visual Basic 2005 Express. Esta ventana se puede utilizar desde cualquier punto de la aplicacin y para la bsqueda de diferentes conceptos o ayuda sobre problemas concretos de programacin o de uso de la propia herramienta. Al acceder
Tipo de contenido aparece seleccionado como Plantillas y Starter Kit. Es importante que no modifiques estas opciones dado que son necesarias para realizar la bsqueda que ests intentado. Ahora teclea el tipo de Starter Kit que desees buscar y pulsa el botn Buscar. Puedes visualizar los diferentes resultados de tu bsqueda. En primer lugar aparecen los resultados procedentes de la red de desarrolladores de Microsoft llamada MSDN (Microsoft Developer Network). Esta es la comuni-
Resumiendo...
1 Inicio 3 Visual Basic 2005 Express 3 Archivo-3 Nuevo-3 Mis 2
Plantillas 3 Buscar plantillas 3 Aceptar Comprobar parmetros de bsqueda 3 Idioma: Visual Basic 3Tecnologa: .NET y 3 Visual Studio 2005 3 Tipo de contenido: Plantillas y Starter Kit MSDN (Espaol) 3 Buscar: Imagen 3 Resultados 3 MSDN (Ingls) 3 Buscar: Image 3 Resultados Click en ttulo del resultado 3 Click en sitio web principal de la informacin Introducir en navegador web la direccin http://msdn.microsoft.com/
3 4 5
vbasic/downloads/starterkits/default.aspx
N 147
67
Curso
Una de las principales novedades de Visual Basic 2005 es el empleo de la programacin orientada a objeto. As, la programacin 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.
Controles y variables
Gua del curso
PC Today no 146 PC Today no 147 PC Today no 148
4. El lenguaje de programacin
Sentencias e instrucciones. Condiciones y bucles PC Today no 149
5. Diseo de aplicaciones
Depuracin del cdigo PC Today no 150 PC Today no 151 PC Today no 152 PC Today no 153 PC Today no 154
7. Asegurar e imprimir
Control de acceso, usuarios y perfiles
Instalacin y despliegue
Creacin y ejecucin de un instalador
isual Basic 2005 Express Edition aporta una novedad fundamental respecto a todas las versiones anteriores de Visual Basic: la programacin orientada a objeto (POO). Se trata de una programacin 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 llamarn de la misma manera (libro, estudiante, factura, etc.) La programacin orientada a objeto ha supuesto una autntica revolucin en este rea. As, aunque sus orgenes 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 programacin ms utilizadas actualmente ( J2EE- Java 2 Enterprise Edition y Microsoft .NET) emplean este tipo de programacin. La programacin orientada a objeto tiene una serie de caractersticas que deben cumplir los objetos y la manera de relacionarse entre ellos. Sin querer entrar en aspectos demasiado tericos, es interesante que conozcas algunas de estas caractersticas, ya que te pueden ser tiles a la hora de utilizar este lenguaje y darn calidad a tus programas. El Encapsulamiento te permite distinguir entre los mtodos y atributos pblicos, que son los que permitirn a tu objeto relacionarse o comunicar-
se con los dems, y los elementos privados, que son aquellos accesibles nicamente desde dentro de tu objeto con el fin de preservar su integridad. Otra caracterstica importante es la Herencia que permite un aprovechamiento ptimo del cdigo. Como ejemplo, t puedes tener una clase "perro" de la que "herede" la clase "caniche". La clase caniche tiene todas las caractersticas de la clase perro (orejas, ojos, hocico, etc.) pero adems puede tener otras propias (pelo rizado, inteligencia, determinados colores, etc.). La posibilidad de utilizar tu objeto canino recin creado a veces como perro en general (para vacunarlo, alimentarlo, etc.) y otras veces como caniche en particular, se denomina Polimorfismo.
60
www.pctoday.es
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 podrs registrar todos los libros que tienes, con sus propiedades o atributos caractersticos como ttulo, autor, editorial, nmero de pginas o fecha de publicacin. Del mismo modo, tambin podrs aadir los libros que tienes y los que vayas comprando, as como quitar los que pierdas o prestes. Puedes tambin aadir pginas con texto a los libros y visualizarlas. Con estos requisitos iniciales tienes que empezar tu aplicacin, 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 introduccin de este apartado. Estos sern tus "requerimientos". A partir de ellos, echa un ginas" y "texto" tampoco tienen ningn comportamiento y puedes descartarlos como clase. Nos queda el sustantivo "libros" que, efectivamente, s puedes identificar como una clase. Pero todava es posible que no hayas identificado todas las clases ya que puede que alguna no est escrita en el texto pero est implcita en l. As, cuando aades o eliminas libros lo ests haciendo de algn 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 texto por pgina", que ser necesaria para tener la posibilidad de visualizar el texto de cada pgina que introduzcas en tu biblioteca. La clase Biblioteca no tiene propiedades. Si quieres modificar alguna de estas propiedades recuerda que debes introducir los mtodos apropiados para ello. Pero para este programa que ests haciendo tampoco ser necesario. Si quieres aadir nuevas propiedades como "autor" o "editorial"
vistazo a los objetos que tenemos (libro, pagina, etc.), encuentra las "propiedades" de los mismos -que son las caractersticas de los objetos- y, por ltimo, los "mtodos" -que sern el comportamiento de dichos objetos-. Puedes elegir entre numerosas maneras de disear las clases en una aplicacin. Para este ejemplo, vas a elegir una que comienza con un anlisis del texto de requisitos. Los sustantivos son candidatos a ser clases de tu programa, mientras los verbos son
Lee lo requisitos de tu programa y encuentra los verbos. Los verbos auxiliares no los tengas en cuenta (podrs, tienes, quieres, vayas, etc.). Considera cada verbo para saber si es un mtodo. Verbos como "comprar" o "prestar" no forman parte del problema que ests abordando, por lo tanto no son mtodos. "Aadir" y "registrar" representan la misma operacin y son un mtodo de la clase Biblioteca que llamaremos Registrar. Del
o cualquier otra tambin puedes hacerlo aunque no sea un requisito planteado en este ejemplo. Del mismo modo, con el tiempo, podrs ir aadiendo clases segn aumenten las funcionalidades que vayas necesitando. Ahora es el momento de comprobar que el diseo que has realizado cumple todos los requisitos que te planteaste. De manera que tu aplicacin cumpla toda la funcionalidad que necesitas. Podrs: Registrar libros mediante el mtodo Registrar de la clase Biblioteca. Asociar Titulo, Nmero de pgina y Fecha de publicacin ya que son propiedades de la clase Libro. Eliminar libros de tu Biblioteca mediante el mtodo llamado Retirar. Visualizar pginas de texto mediante el mtodo Visualizar de la clase Libro. As, todos los requisitos que deba cumplir tu programa quedan cubiertos con esta estructura de clases que acabas de disear.
mismo modo puedes identificar "quitar" o, mejor expresado, Retirar como mtodo de la misma clase. Para la clase Libro puedes identificar el mtodo Visualizar para ver los textos que contiene. Para visualizar una pgina de un libro debes indicar cul por lo que, aunque no est en los requisitos que has escrito, tienes un nuevo mtodo que permaneca 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. Adems, pueden existir algunas otras. "Ttulo", "nmero de pginas" o "fecha de publicacin". Estas propiedades pertenecen a la clase Libro. Del mismo modo ocurre con la propiedad "texto" y otra propiedad oculta, "longitud de
candidatos a mtodos. Durante el anlisis irs descartando nombres como clases y aadiendo clases que no estaban escritas en el texto. Una vez has determinado las clases, las propiedades y los mtodos ya puedes escribir el diagrama de clases que usars para la implementacin. 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". "Ttulo", "nmero de pginas" y "fecha de publicacin" no tienen ningn comportamiento y tampoco sern una clase. Del mismo modo, para este caso concreto, "p-
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, nmero de pginas, fecha de publicacin 3 Elegir la clase Libros 3 Aadir la clase: Biblioteca
4 Localizar verbos en el texto 3 Eliminar verbos auxiliares 3 Eliminar los verbos: comprar, prestar,
aadir 3 Elegir los mtodos: registrar, visualizar 3 Aadir el mtodo: ObtenerPagina
5 Establecer propiedades de Libros: ttulo, nmero de pginas, fecha de publicacin 3 Aadir propiedad Longitud de texto por pgina
N 148
61
Curso
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, tamao, nmero de pginas, etc.) y tienen tambin un comportamiento o funcionalidad (pintar, crecer, sumar, etc.) que se convertirn en los mtodos de nuestro programa. Clase. Las clases son plantillas de objetos, donde se definen todas las caractersticas 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 parmetros que pueden consultarse desde fuera del objeto y tambin se pueden modificar por la ejecucin de algn mtodo.
silla que encontrars en la parte inferior de la ventana, introduce "MiPrimerPOO" que es el nombre para este nuevo proyecto, por ejemplo . Pulsa en Guardar. Desplegados en la ventana del Explorador de soluciones aparecern los ficheros que se han creado. Estos sern inicialmente dos: un proyecto denominado "My Project" y un formulario llamado "Form1". El formulario lo utilizars ms adelante en este captulo. Ahora, pulsa el botn Guardar todo para guardar el proyecto. Selecciona la carpeta destino y presiona el botn Guardar.
Ahora tienes que crear la otra clase que has diseado: la clase Biblioteca. Para ello repite el proceso anterior. Pulsa con el botn 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 aplicacin, deberas seguir aadiendo tantas clases como fueran necesarias, de la misma forma. El siguiente paso es aadir las propiedades que has identificado para cada una de las clases. Vas a comenzar por la clase Libro. Tienes que distinguir entre las propiedades pblicas, que pueden ser accesibles para su modificacin desde
Mensaje. Es una comunicacin dirigida a un objeto que le pide a ese objeto cierta informacin, proporcionndole a su vez la los datos necesarios para obtener dicha informacin (por ejemplo, suma 2 y 5 esperando recibir 7). Tambin le puede pedir la realizacin de una accin o una serie de acciones. Mtodo. 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 ejecucin se produce tras la recepcin de un mensaje y que a su vez realiza las acciones programadas. Un ejemplo sera PintarCoche en el que recibes en un mensaje indicndote que debes pintar el coche y el color, por ejemplo, rojo. El mtodo debe llevar programado todos los pasos que hay que seguir para pintar ese coche de rojo.
Es la hora de agregar todas las clases que has diseado anteriormente. Para ello, pulsa con el botn derecho de tu ratn sobre el icono del proyecto en el Explorador de soluciones. Elige la opcin Agregar y, dentro de ella, pulsa sobre Clase. Se
fuera de la clase, como la Longitud de pgina, y las privadas, que son aquellas que por seguridad slo deben transformarse desde la misma clase, como por ejemplo Ttulo. Para introducir las propiedades, entra en la ventana de cdigo haciendo click dos veces sobre el smbolo de la clase Libro en el Explorador de soluciones. Empieza por la propiedad Ttulo, tecleando: Private m_titulo As String.
Consejo
Por convencin, para nombrar las propiedades pblicas se suele poner en maysculas 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 minscula, por ejemplo m_titulo
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 ingls). Contina introduciendo el resto de propiedades privadas mediante las siguientes lneas de cdigo: Private m_numero_paginas As String Private m_fecha_publicacion As Date
62
www.pctoday.es
Curso
diante el signo "=". Ese valor es un texto vaco que est representado en la instruccin por una doble comilla sin nada dentro. De la misma forma, tienes que aadir la propiedad pblica LongitudPagina, que indicar el nmero de caracteres que se incluyen en cada pgina. Toma un valor, por ejemplo de 10, aunque puedes cambiarlo segn necesidades. En este caso concreto, la propiedad a la que has denominado "m_fecha_publicacion" es de tipo fecha ("date", en ingls) Sigue aadiendo las propiedades pblicas de la clase Libro. Estas propiedades que sern Texto, que hace referencia al texto de ese libro, y LongitudPagina, que representa la cantidad de texto por pgina- sern accesibles desde otros objetos. En la ventana de cdigo, debes teclear: Public Texto As String =
Resumiendo...
1 Inicio 3 Todos los programas 3 Visual Basic 2005 Express 3 Archivo 3 Nuevo proyecto 3
Aplicacin para Windows 3 Escribir nombre: MiPrimerPOO 3 Guardar
La palabra "Public" indica que la propiedad es pblica, "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-
sirve para leer el valor de esa propiedad y "Set" para establecer ese valor mediante el parmetro que representa "Value". La palabra reservada "ByVal" representa que lo nico que recibe ese mtodo es un valor, no un objeto completo. Pero todos estos conceptos estarn ms claros en los prximos captulos, cuando entres a fondo en la programacin Visual Basic. Ahora debes repetir la creacin de mtodos para asignacin de propiedades al resto de propiedades privadas que has identificado en tu diseo de clases: Nmero de pginas y Fecha de publicacin -as como si has decidido incluir nuevas propiedades en tus clases (autor, editorial, etc.)-. El cdigo es muy similar y tiene el mismo significado para cada una de las
Has puesto varias cosas nuevas. La palabra clave "Property" indica la asignacin de valores para una propiedad que tiene a su vez dos posibilidades: "Get"
libros en tu biblioteca, podrs introducirle el ttulo, etc. Lo primero que debes hacer es trasladarte, dentro de la pestaa Libro, a la casilla de la parte superior izquierda. En ella, ahora pone (General). Abre el desplegable y selecciona Libro. Despus, en la casilla de la derecha, y tambin dentro de su men desplegable, elige New (Nuevo). Vers que, como resultado de esta accin, se escribe un nuevo prrafo en la ventana de cdigo. Sustituye las partes que no te sirvan y teclea dentro de la ventana:
Tipo de VB tradicional Boolean Date Double Decimal Short Integer Long Single String
Tipo Nuevo VB System.Boolean System.DateTime System.Double System.Decimal System.Int16 System.Int32 System.Int64 System.Single System.String
64
www.pctoday.es
auto-sugiriendo mediante la tecnologa Intellisense que ya viste en el primer captulo 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. Una vez creado el mtodo Registrar, ahora tendrs que proceder a realizar los mismos pasos a fin de crear el mtodo Retirar. Para ello, teclea en la pantalla correspondiente el siguiente fragmento de cdigo.
Tienes que seguir introduciendo los mtodos que has identificado. Aunque de momento no dominas el lenguaje y las acciones o comportamientos ms complejos, es aconsejable que los dejes enunciados para completarlos segn avance este curso y vayas dominando los diferentes recursos que te ofrece la programacin Visual Basic. Contina con el mtodo, de la clase Libro, ObtenerPagina. Para ello, escribe el siguiente cdigo.
Mediante la instruccin "Dim" ests creando una instancia de la clase Libro a la que has dado el nombre de "unLibro". Por su parte, a travs de "CType", recoges un libro existente en la coleccin de tu Biblioteca. La instruccin "Remove" elimina ese libro de la coleccin y es devuelto mediante "Return".
Puedes comprobar tus clases, con sus mtodos y propiedades, de un simple vistazo utilizando el Examinador de objetos. Pulsa F2 o el botn 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".
Este cdigo crea una funcin pblica -accesible desde fuera de la clase- mediante la cual, insertando un nmero de pgina, te devuelve el texto de esa pgina. El parmetro 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 accin a realizar y el mtodo no devolver nada. Si quieres que realice las acciones correctas aunque hasta el prximo captulo no comprendas completamente lo que ests escribiendo, teclea:
Finalmente, crea los mtodos Registrar y Retirar. En el caso de Registrar debes pasar como parmetro el objeto Libro al aadir y agregar este a la coleccin de la Biblioteca:
Resumiendo...
1 Editor de cdigo 3 Seleccionar Libro 3 Con la instruccin "Add" de tu coleccin de libros aades el libro que previamente has recibido como el parmetro "nuevoLibro". Comprobars que, en todo momento, segn vas tecleando vas recibiendo ayudas y el texto se va
Lista de eventos 3 Seleccionar New
N 148
65
Curso
Arrastra un control de tipo NumericUpDown, ten el cual tambin debers modificar su propiedad Name por paginaMostrada y la propiedad Minimum por 1. Finalmente, aade un control de tipo RichTextBox, modifica la propiedad Name e introduciendo el valor Pgina. Tambin modifica la propiedad Multicine a True y la propiedad Text djala en blanco.
has denominado "elQuijote" y que te devolver el texto de la pgina del libro que has indicado. La ltima instruccin "MessageBox.Show" se utiliza para mostrar un aviso con un texto y un botn para cerrar esa ventana. Simplemente ests mostrando la cadena de texto que has construido en las instrucciones previas.
Ahora, para aclarar un poco el significado de cada control en tu aplicacin, arrastra tres controles Label y cmbiales a cada uno la propiedad Text para indicar para qu se utiliza el control ms cercano: Listado de libros, Longitud de pgina y Pgina mostrada. Por ltimo, aade una etiqueta (Label) ms, que mostrar el ttulo del libro, cambia la propiedad Name de la misma a labelTitulo y cambia tambin la propiedad Text dejndola en blanco.
Si deseas aadir ms libros puedes copiar este cdigo tantas veces como quieras, modificando el nombre de la instancia y los atributos de la misma.
Una vez has probado el correcto funcionamiento de la clase Libro por separado, ya puedes crear tu verdadera aplicacin. Para ello vas a iniciar todo el proceso de nuevo. Para empezar, borra el botn y el cdigo 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 encontrars en la ventana de propiedades y escribe, por ejemplo, listaLibros. Ahora, aade un control
Es el momento de aadir cdigo a tu aplicacin. Pulsa con el botn derecho de tu ratn sobre el formulario "Form1" y haz click sobre la opcin Ver cdigo. Introduce la propiedad m_biblioteca en
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 cdigo a continuacin del introducido en el paso anterior: NumericUpDown y modifica su propiedad Name -escribe longitudPagina- y la propiedad Minimum -cambindola por 1-, todo ello desde la ventana de propiedades.
el formulario. Desde el editor de cdigo selecciona (Form1 eventos) y el evento Load que encontrars dentro de la lista de eventos que puedes desplegar.
66
www.pctoday.es
Curso
De nuevo dentro de la ventana de cdigo de Visual Basic 2005 Express Edition, y debajo de la primera lnea que, como vers, se ha escrito automticamente, debers aadir el siguiente fragmento de cdigo al evento.
Ahora, desplzate con tu ratn hasta el Editor de cdigo es la casilla con un men desplegable que se encuentra en la parte superior izquierda de la pantalla, sobre la ventana de cdigo-. De entre las opciones que encontrars en su men,
Ests utilizando una variable que te permitir almacenar el titulo del libro seleccionado en el listbox, recuperar el libro cuyo ttulo sea El Ingenioso Hidalgo D. Quijote de la bilblioteca y asignarle a un objeto al que denominars unLibro. En este objeto recibes los parmetros de los diversos controles de tu formulario para, finalmente, recuperar el texto de la pgina indicada y mostrarlo en el RichTextBox. Para ejecutar la aplicacin pulsa F5. Se abrir el formulario con los datos del libro cargados. Prueba a modificar los distintos valores y vers como vara el texto a mostrar.
Mediante este cdigo que ests instruciendo, lo que ests haciendo es volver a crear una instancia de la categora Libro a la que denominas "elQuijote". Adems, aadirs el ttulo 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 ttulo. En definitiva, lo que has logrado mediante este nuevo fragmento de cdigo es crear una biblioteca en la cual has registrado este libro -"elQuijote"- con todos sus atributos y mtodos. Si repites este proceso con cada uno de los libros que quieres tener en tu biblioteca, tendrs almacenados y a tu disposicin todos los datos relativos a cada uno de estos libros: ttulo, texto, nmero de pginas, longitud de pgina, etc.
elige el control denominado "listaLibros". Despus, selecciona el evento "SelectedIndexChanged" que se encuentra en la Lista de eventos es la casilla de la parte superior derecha, contiga al Editor de cdigo- asociado a ese control. En el mtodo creado debes introducir el siguiente cdigo.
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 Pgina 3 Escribir cdigo 2 Escribir cdigo 3 Borrar botn y cdigo 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
7 8 9
Acta 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,
68
www.pctoday.es
Resumiendo...
1 Seleccionar controles de la izquierda 3
Anchor 3 Top y Left
5
Ahora quieres dejar todos los controles colocados en el centro del formulario cuando este se redimensione. Prueba a seleccionar la zona interior del formulario, vers que se marcan con una lnea alrededor todos los controles que se encuentran en esa zona. Ahora, selecciona simple-
Pulsa el botn Depurar e Iniciar depuracin que encontrar en la Barra de herramientas para comprobar el comportamiento de tu formulario en el tiempo de ejecucin. Prueba a redimensionar el formulario y comprobars que el control Pgina contina ocupando la misma zona que tena anteriormente. Eso s, de manera proporcional tamao de formulario. Adems de por cuestiones de esttica en caso de que necesites redimensionar tu formulario para adaptarlo a diferentes espacios en un diseo gobal, la
Curso
A pesar de todas las facilidades que Visual Basic 2005 te ofrece para que tengas que "picar" la menor cantidad de cdigo posible -mediante generadores de cdigo, utilidades grficas que arrastrando y soltando escriben automticamente gran cantidad de cdigo e, incluso, la estructura completa de cualquier programa que quieras realizar- no podrs evitar tener que escribir tu propio cdigo.
Lenguaje de programacin
Gua del curso
1. Aprende a programar con Visual Basic 2005
Introduccin. Ayuda. Tu primer programa PC Today no 146 PC Today no 147 PC Today no 148
4. El lenguaje de programacin
Sentencias e instrucciones. Condiciones y bucles PC Today no 149
5. Diseo de aplicaciones
Depuracin del cdigo PC Today no 150 PC Today no 151 PC Today no 152 PC Today no 153 PC Today no 154
a programacin en cualquier lenguaje siempre tiene unas mismas consideraciones bsicas 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 tendrs que utilizar la sentencia "rename" (que en ingls, significa renombrar).
Operador < (Menor que) <= (Menor o igual que) > (Mayor que) >= (Mayor o igual que) = (Igual a) <> (Distinto de)
Despus estn los operadores del lenguaje, que son las operaciones que puedes realizar con las variables segn sus tipos (como pudiste comprobar con el captulo anterior). Por ejemplo si quieres sumar dos nmeros tendrs que utilizar el operador "+". Tambin existen operadores de comparacin que te permiten comparar elementos, por ejemplo para determinar si un nmero es mayor que otro utilizars el operador ">".
Verdadero si... Expression1 < Expression2 Expression1 <= Expression2 Expression1 > Expression2 Expression1 >= Expression2 Expression1 = Expression2 Expression1 <> Expression2
Finalmente, estn las sentencias de control de flujo, que determinan condiciones a seguir y tambin la programacin de las tareas repetitivas mediante bucles. Por ejemplo, para recorrer todos los libros de tu biblioteca utilizars un bucle "for" desde el primer elemento hasta el ltimo, realizando para cada uno las acciones que consideres. Para indicar cundo pasar al siguiente libro lo indicars con la palabra "next".
Falso si... Expresion1 >= Expression2 Expression1 > Expression2 Expression <= Expression2 Expression1 < Expression2 Expression1 <> Expression2 Expression1 = Expression2
7. Asegurar e imprimir
Control de acceso, usuarios y perfiles
Instalacin y despliegue
Creacin y ejecucin de un instalador
62
www.pctoday.es
Funciones y mtodos
Cuando programas, lo ms frecuente es que unas mismas instrucciones las necesites utilizar innumerables veces desde distintas partes de tu programa. Para evitar repetir ese cdigo cada vez que lo necesitas, Visual Basic te permite encapsular este mini-programa en una subrutina (o mtodo) o en una funcin. La diferencia entre una funcin 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, segn viste en el captulo anterior. Dentro de cada una de estas cpsulas de cdigo puedes complicar tu programa tanto como lo necesites. Por ello es esencial que estructures tu programa en mdulos o bloques y, lo que es ms importante, que estructures tu pensamiento para agrupar y posteriormente reutilizar estos bloques de programa. Aunque en principio parece algo complejo, en la prctica resulta fcil y natural hacerlo de esta manera. introducir el cdigo para tu funcin. Teclea lo siguiente: Function CalculaEdad() As Integer. Pulsa Enter en tu teclado y, automticamente, el editor de Visual Basic 2005 Express insertar el cdigo End Function para la finalizacin de la funcin. Como has podido observar cuando has tecleado As, automticamente se han desplegado las opciones de tipos que puedes asignar para la respuesta de tu funcin. Esta es la diferencia entre una funcin y una subrutina, que la funcin tiene un tipo
es pasar el valor del parmetro, utiliza la palabra ByVal. Quedara de la siguiente manera: Function CalculaEdad(ByVal FechaNacimiento As Date) As Integer End Function Otra posibilidad ms compleja es pasar los parmetros como referencia del objeto que se remite, para ello se utiliza ByRef. Para llamar a esta funcin tienes que realizar, por ejemplo, una asignacin de la funcin a una variable que vayas a utilizar.
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 Aplicacin Windows. Hecho esto, tienes que introducir un nombre para el proyecto
y, a su vez, devuelve un valor. Como ya viste en el captulo anterior los tipos ms comunes son: Integer para nmeros enteros, Double para los nmeros reales y String para los textos. En el caso de la funcin que ests creando la utilizars para calcular una edad y te devolver un nmero entero que finalmente sern aos, por ello elige Integer. Ten en cuenta que si no indicas el fin del cdigo que pertenece a una funcin te aparecer un aviso de error en el Editor y posteriormente en el Compilador.
De la misma manera que has implementado la funcin, puedes crear un procedimiento, con la diferencia de que en los procedimientos, tanto las entradas como las salidas, han de realizarse mediante parmetros. Los mtodos estn indicados para bloques de aplicacin ms complejos
Consejo
Cuando declaras una variable pero nunca llegas a utilizarla, Visual Basic 2005 Express te lo indica, sealando la variable con un subrayado ondulado en color verde. De esta manera puedes tener un cdigo limpio sin elementos intiles que a la larga slo conllevan confusin
4
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 aplicacin. Una vez has establecido el nombre, pulsa sobre Aceptar para crear el proyecto. Vers cmo se despliegan, en la ventana del Explorador de soluciones, varias carpetas y ficheros. Para crear una funcin, haz click dos veces en el formulario. Tambin puedes hacerlo desde tu Explorador de soluciones, pulsando sobre el botn Ver cdigo. Aparecer la ventana de Edicin de cdigo con el fichero de cdigo correspondiente a tu formulario. En concreto, ser el fichero "form1.vb". La extensin VB indica que es un fichero con cdigo Visual Basic. Aparecer una subrutina generada automticamente bajo el nombre Form1_load. Selecciona el cdigo generado desde la palabra private hasta end sub. Ahora tienes que
Lo ms habitual es que necesites indicar a la funcin o subrutina algn valor que posteriormente precisars para la realizacin de clculos o de otras acciones. Para ello, la manera ms habitual es definir el parmetro y su tipo entre los parntesis de la definicin de la funcin o subrutina. Si lo que deseas
que los que sueles emplear en las funciones. De la misma manera que lo has hecho antes para declarar una funcin, teclea la palabra reservada Sub y el nombre de la subrutina ponlo entre los parntesis que hay detrs. Al pulsar sobre el botn Enter, el editor de Visual Basic completar el bloque de cdigo con end Sub.
Resumiendo...
1 Inicio 3 Todos los programas 3 Visual Basic 2005 Express 3 Archivo 3 Nuevo Proyecto 3
Aplicacin Windows 3 Escribir nombre: MisPracticas 3 Aceptar
N 149
63
Curso
que acabars dedicando mucho tiempo y enormes cantidades de paciencia para mantener tu propio cdigo. Cuida, por tanto, mucho en qu ocasiones vas a emplear estas variables y si te es posible no las
Consejo
Existen hasta siete maneras de definir variables que determinan su mbito de influencia y de ejecucin. Cada una de ellas se identifica por una de las siguientes palabras claves: Static, Public, Protected, Friend, Shared, Protected Friend, and Private. Segn vayas profundizando en la programacin necesitars utilizar algunas de estas palabras clave, pudiendo obtener informacin detallada en la Ayuda de Visual Basic 2005 Express y en las referencias del lenguaje.
Pulsa en el botn F5 de tu teclado para ejecutar tu aplicacin. Despus, 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. De la misma manera que has declarado variables de mbito local, existen variables globales o pblicas que tendras que definir mediante la palabra clave Public y estarn accesibles desde cualquier mdulo de la aplicacin 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 aplicacin, llegar el momento que no sepas quin est modificando tu variable y desde dnde, por lo
utilices nunca. Recuerda todo lo que has visto en el captulo de Programacin orientada a objeto y sus principios de Encapsulamiento de tu cdigo. El mbito no slo afecta a las variables sino tambin a las propias subrutinas y funciones. Pulsa click dos veces sobre cualquier control de uno de tus formularios y puedes observar que,
bles debes usar la palabra clave Dim. Tambin debes tener en cuenta que esa variable slo "existir" mientras la funcin o subrutina est ejecutndose. De esta manera cuando una subrutina finaliza, finalizan con ella todas las variables que se hubieran definido en ese mbito.
Desde la ventana de edicin de cdigo, declara dos subrutinas que llamars SumarX y MostrarX. En cada una de ellas declara una variable llamada X. Arrastra dos controles de botn 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 cdigo del Botn SumaX define la variable tecleando: Dim X as Integer. Finalmente, realiza una asignacin y suma de la variable a cualquier nmero. Dentro del cdigo que se ha escrito para el Botn MuestraX introduce una instruccin que te permitir mostrar en pantalla, cuando ejecutes tu programa, el valor de la variable MsgBox(X). Hazlo de la siguiente manera:
automticamente, 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. Segn tus proyectos vayan creciendo, algo que t mismo podrs comprobar en el Explorador de soluciones, irs 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 cdigo del Botn SumaX teclear: Dim X as Integer 3 Realiza una asignacin y suma de la variable a cualquier nmero 2 Observar cdigo del botn MuestraX 3 Pulsar F5 3 Pulsar sobre los dos botones creados 3 Usar variables Public para poder acceder a ellas desde cualquier mdulo de la aplicacin 4 Click dos veces sobre tu formulario 3 Ver predefinida la subrutina como Private
64
www.pctoday.es
Consejo
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 nmero del salto
Otra problemtica muy frecuente que te encontrars 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 solucin a esta problemtica la ofrecen los bucles For "anidados", que ordenadamente recorren filas y columnas, normalmente de izquierda a derecha y de arriba abajo. En el botn del paso anterior sustituye el cdigo por el siguiente:
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 instruccin Next, ha aadido 1 al valor del contador i, ha comprobado si ya se ha llegado al ltimo valor, en este caso 5, y ha iniciado otra repeticin.
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. Vers que en este cdigo ests 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 nmeros 1, 2 y 3.
Curso
Con este cdigo ests concatenando un listado de nmeros hasta llegar al 11, mostrndolos uno detrs de otro separados por un retorno de carro. Otra versin de este mismo bucle es Do Until. Su principal diferencia con respecto al primer caso radica en que Do...While evala cundo deja de producirse la condicin en lugar de cundo se produce la condicin, que es como funciona bucle el Do While. El bucle ms sencillo que puedes considerar es While Wend, en el que la instruccin While expresa la condicin a cumplir y la instruccin Wend simplemente indica el final del grupo de instrucciones a realizar. A menudo con este sencillo bucle te ser ms que suficiente para traba-
Otro tipo de bucles son aquellos en los que no sabes a priori el nmero 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 instruccin While evalas una condicin 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 botn para acceder a la ventana de Edicin de cdigo:
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 tendrs que analizar toda la casustica que has visto en los pasos anteriores.
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. Aade de nuevo un botn 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 botn, aade el siguiente fragmento de texto:
Resumiendo...
1 Si se sabe de antemano el nmero 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 botn 3 Escribir cdigo 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 cdigo 3 Sustituir cdigo 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 nmero 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 botn 3 Escribir cdigo 3 Pulsar F5 3 Ver resultado 4 Determinar la condicin 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 botn 3 Escribir cdigo 3 Pulsar F5 3 Ver resultado
Crea un nuevo formulario pulsando con el botn derecho de tu ratn sobre la opcin Proyecto que se encuentra en el Explorador de soluciones. Elige la opcin 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. Despus, pulsa en Agregar. El nuevo formulario que has creado aparecer en tu Explorador de soluciones.
66
www.pctoday.es
Curso
mente. Aade, adems, al formulario un control de tipo Button (Botn). 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. Ahora tienes que aadir cdigo a tu aplicacin. Desde la ventana de diseo de la aplicacin haz click dos veces sobre el botn que has creado. Teclea el siguiente cdigo: Para que este formulario que acabas de crear se convierta en el formulario de inicio de tu aplicacin, pulsa con el botn derecho sobre el nombre de tu proyecto y elige Propiedades. En el men que se desplegar, selecciona Formulario Inicio y Form2. Ahora, dirgete a la barra de mens Como puedes ver, has aadido varias cosas nuevas. En primer lugar, una nueva variable "diferencia" donde almacenas la diferencia entre tu altura y tu peso. Tambin has aadido una nueva instruccin Select Case en la que indicas qu acciones debes tomar en funcin de los valores que pueda tener la variable de referencia. Como posibles opciones a esta instruccin, tienes la posibilidad de aadir rangos en los valores de comparacin de cada caso (Case). Con esta posibilidad, en tu programa recin creado, puedes aadir 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 ms moderado. Una vez completado tu programa pulsa el botn Guardar. Aunque con condiciones de este tipo puedes realizar todas las combinaciones de casos posibles, para clarificar los casos ms complejos de opciones mltiples, Visual Basic tambin ofrece otra serie de instrucciones ms complejas. Una de estas instrucciones es Select Case. Pulsa el botn Ver diseador en el Explorador de soluciones del formulario que acabas de manipular. Una vez en l, vuelve a hacer click dos veces en el botn del mismo. Ests otra vez en el Editor de cdigo con la condicin If Then que acabas de crear. Brrala y escribe:
que hay en la parte superior de la ventana y pulsa en la opcin Grabar todo. Finalmente, cierra la ficha de propiedades del proyecto marcando la "x" de la pestaa activa. 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, tambin desde el Cuadro de herramientas, dos controles de tipo Label que colocars 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 condicin If Then en la que realizas la decisin. En concreto la primera decisin es si (If) tu altura es menor que tu peso entonces (Then) ests por encima de tu peso ideal, si por el contrario (ElseIf) tu altura es igual a tu peso, s ests en tu peso ideal y si no es ninguna de las anteriores (Else) ests por debajo de tu peso ideal. Antes de la condicin 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 estn expresados en tipos numricos, por lo que es necesaria una conversin previa. Para ello utilizas el conversor Cint. Para simplificar, quieres que el peso se introduzca en kilogramos y la altura en centmetros y, aunque ms adelante vers que puedes realizar validaciones previas, de momento confa 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.
Resumiendo...
1 Pulsar botn 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 botn derecho sobre nombre del proyecto 3 Propiedades 3 Formulario Inicio 3 Form2 3 Barra de mens 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 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 botn 3 Escribir cdigo 5 Explorador de soluciones 3 Ver diseador 3 Click dos veces en botn 3 Borrar condicin If...Then 3 Escribir cdigo 6 Escribir cdigo para mostrar mensajes
68
www.pctoday.es
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 botn del ascensor. De la misma manera ocurre en programacin. Estos eventos pueden ser capturados y tratados por tu programa. Crea un formulario pulsando con el botn 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. Convirte tu nuevo formulario en tu formulario de inicio. Desde el Cuadro de herramientas arrastra dos controles de tipo Button (Botn) a los que vas a llamar btnUno y btnDos, respectivamente. Modifica la propiedad Text de cada botn y escribe Botn 1 y Botn 2. Haz click dos veces en los botones e introduce un mensaje escribiendo MsgBox ("Has pulsado el botn..."). Pulsa F5 para ejecutar tu aplicacin. Despus, presiona cada uno de los botones. Puedes observar que en cada uno obtienes la respuesta adecuada. Esto ocurre porque en el cdigo generado por Visual Basic 2005 Express est identificado el evento ocurrido y se asocia a l una opcin. Si te fijas en el nombre creado para la subrutina click, se crea con el nombre del botn -con la propiedad Name- y tambin asociandole el nombre del evento precedido por una barra baja: _Click
Del mismo modo que automticamente se ha generado una subrutina para el evento click, puedes observar que existen numerosos eventos que capturar en funcin del tipo de objeto de tu formulario. Desde la ventana de diseo 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 botn derecho del ratn 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 Escribir: btnUno y btnDos 3 Text 3 Escribir: Botn 1 y Botn 2 2 Click dos veces sobre cada botn 3 Escribir cdigo 3 Pulsar F5 3 Pulsar cada uno de los botones 3 Observar resultado 3 Click dos veces sobre botn 3 Desplegables de objetos y eventos 3 Probar ambos
Curso
Diseo de aplicaciones
Si existen dos momentos fundamentales a la hora de desarrollar software son, sin duda, la fase de anlisis y la capacidad de monitorizacin del estado del cdigo -lo que se denomina depuracin-. La capacidad de anlisis es el paso principal para plasmar tus necesidades en una aplicacin utilizable. En cuanto a la depuracin, Visual Basic 2005 vuelve a destacar por su facilidad de uso y fcil acceso a la informacin.
4. El lenguaje de programacin
Sentencias e instrucciones. Condiciones y bucles PC Today no 149
5. Diseo de aplicaciones
Depuracin del cdigo PC Today no 150 PC Today no 151 PC Today no 152 PC Today no 153 PC Today no 154
7. Asegurar e imprimir
Control de acceso, usuarios y perfiles
Instalacin y despliegue
Creacin y ejecucin de un instalador
ualquier desarrollador debe afrontar el reto de realizar la mejor aplicacin 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 dedicacin. Este reto ser para ti, con el tiempo, algo poco menos que ineludible. Ante esta problemtica dispones de herramientas y modelos de trabajo que te facilitarn conseguir de manera exitosa dichos objetivos. Estos modelos, tambin denominados metodologas, se componen de una definicin de fases por las que debe pasar tu desarrollo, una serie de documentos necesarios para finalizar cada fase
y unas "mejores prcticas" que te sirvan de ejemplo a la hora de llevar a cabo estas teoras. Para conseguir llevar a buen puerto tu proyecto de desarrollo software, y en general cualquier proyecto, slo hay un camino: la planificacin.
Qu hace tu programa?
En este mismo captulo vers la resolucin de otro de los problemas que te han ido surgiendo en captulos anteriores: Qu hace mi programa exactamente? Visual Basic 2005 Express Edition dispone de una capacidad de depuracin con la que podrs realizar un seguimiento de la ejecucin de tu aplicacin paso a paso e instruccin a instruccin. El depurador de Visual Studio es una herramienta que
te permite observar el comportamiento de tu programa en tiempo de ejecucin y determinar dnde se estn produciendo exactamente lo errores semnticos. Con el depurador puedes detener o pausar la ejecucin de tu programa para examinar el cdigo que se ejecuta o, si el programa lo ha realizado otra persona, comprender el funcionamiento del mismo siguindolo paso a paso. Con la ejecucin pausada o suspendida puedes ver y editar las variables de tu programa. Todo ello mediante un sencillo sistema de mens y ventanas de dilogo para acceder a sus numerosas herramientas. Si tienes dudas concretas sobre alguna opcin, puedes pulsar F1 sobre ella y obtener informacin en la Ayuda de Visual Basic 2005.
60
www.pctoday.es
La fase de anlisis
Cada vez que emprendas un proyecto de desarrollo de software debers afrontar una etapa crucial: la fase de anlisis. En ella debers determinar cmo plasmar las necesidades o requisitos que hayas o hayan determinado que debe implementar tu aplicacin. Aunque en esta tarea puedas apoyarte en herramientas que faciliten tu labor, lo ms importante es tu capacidad de abstraccin y eso es algo que irs adquiriendo con el tiempo. En cuanto a las herramientas, podrs pensar que tu manera ms fcil de expresar el pensamiento es el lpiz y el papel, pero en la era digital existen otras que, aunque quizs no superen estos mtodos tradicionales, por lo menos, lo intentan. Es necesario disponer de una herramienta que te facilite el diseo del anlisis que hayas realizado. Para ello vas a utilizar una aplicacin gratuita llamada Jude. Para obtenerla, dirgete a la web jude.change-vision.com/jude-web/index.html. Una vez que se haya abierto la pgina en tu navegador web, pulsa el botn Download (Descargar) del men de navegacin de la izquierda. En la nueva ventana que se abrir, haz click sobre el botn New registration (Nuevo registro). Como resultado, aparecern las condiciones legales de uso, lelas y, si estas de acuerdo,
Despus, aade las asociaciones. Para ello, pulsa el botn Asociacin 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 asociacin, 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.
Dentro de tu fase de anlisis lo primero que vas a realizar es un Diagrama de Clases. Este diagrama representar todos los componentes de tu programa as como la relacin entre ellos. Una vez en Jude, desde el men File (Archivo), pulsa la opcin New (Nuevo). Ahora tienes que guardar el proyecto. Para ello pulsa File (Archivo) y Save (Guardar) o directamente sobre el botn Guardar
Por ltimo, aade una clase Persona de la que se dependern las clases Profesor y Alumno. Selecciona la flecha de dependencia e indica Alumno y Profesor como origen y la clase Persona como destino.
pulsa I agree (Estoy de acuerdo). Rellena las casillas con tu nombre y direccin de correo electrnico. En el campo Company/School/Organization teclea Personal. Introduce Spain (Espaa) como pas, escribe una contrasea y rellena el resto de campos obligatorios con cualquier valor. Una vez terminado el proceso vuelves a encontrarte en la pgina de Login (Contrasea). Introduce la direccin de correo y contrasea que acabas de indicar y pulsa el botn Login. Pulsa de nuevo el botn Download (Descargar). En la pgina 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 aplicacin. Selecciona la opcin Guardar y elige la carpeta que consideres oportu-
de la barra de mens. 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. Despus, pulsa la tecla Enter y vers como cambia el ttulo de la ventana que aparece en el rea de trabajo.
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
na para almacenar el fichero. Una vez finalizada la descarga, pulsa sobre Ejecutar. Selecciona el idioma -en esta versin slo est disponible el ingls y el japons-, elige la carpeta donde quieras instalar la aplicacin, el nombre que tendr la aplicacin dentro de tu grupo de programas del men Inicio y pulsa el botn Instalar para iniciar el proceso de instalacin. Una vez finalizado el proceso, pulsa el botn Finish (Finalizar).
Ahora tienes que agregar tus clases al diagrama. Tomaremos una aplicacin para gestionar los alumnos de una clase, los exmenes 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 aadir. Realiza la misma operacin para aadir ms clases, curso, profesor y exmenes.
para familiarizarte con la herramienta de diseo. Desde la pestaa de Estructura de proyecto en Jude, selecciona el Diagrama de Casos de Uso que se crea automticamente con el proyecto. Para hacerlo, haz click dos veces sobre l, modifica su propiedad Name e introduce Diagrama Casos de Uso. Ahora debes identificar los actores que intervendrn en el manejo de tu programa. En este ejemplo manejarn tu aplicacin: Secretarias, que darn de alta los cursos y asignarn profesores y alumnos a los mismos; Tutores que introducirn
N 150
61
Curso
la nota de los exmenes; y Estudiantes, que contestarn a los exmenes. Una vez identificados, tienes que reflejar todos estos actores en tu diagrama. Para ello, selecciona el icono Actor y haz doble click con el botn izquierdo de tu ratn sobre el rea de trabajo. Segn los vayas creando, introduce el nombre de cada uno de los actores, en este caso, Secretaria, Tutor y Estudiante. Tambin tienes que indicar las actividades que van a realizar cada uno de los actores que has sealado 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 Asociacin, selecciona el actor Existen otros diagramas que tambin pueden llegar a serte tiles segn vayas profundizando en tus conocimientos sobre programacin orientada a objeto. Para aadir un nuevo diagrama, pulsa con el botn derecho de tu ratn sobre la aplicacin que ests creando y despliega el men Aadir 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 colaboracin y el Diagrama de estados te sern muy tiles cuando realices diseos 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 aplicacin. Recuerda guardar tus diagramas cada cierto tiempo, de esta forma evitars que se puedan perder tus avances por algn fallo momentneo en tu mquina.
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 direccin de correo y contrasea 3 Login 3 Pulsar sobre nombre del archivo 3 Guardar 3 Elegir ubicacin 3 Ejecutar 3 Idioma: English 3 Instalar 3 Finish 3 File 3 New 3 File 3 Save 3 Elegir ubicacin 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 Exmenes
y pulsa sobre el botn Guardar. Comenzar la descarga. Podrs observar el estado del proceso en la barra que aparece en pantalla.
la aplicacin, pulsa sobre el botn Inicio y selecciona la opciones Todos los programas y GanttProject. Como resultado, se abrir la ventana de Planificacin.
Una vez finalizada la descarga pulsa Ejecutar para realizar la instalacin. Tras aceptar las condiciones legales, en la pantalla de Seleccin de componentes marca todos ellos y pulsa Siguiente. Despus, indica la carpeta donde quieres instalar la aplicacin y pulsa de nuevo en Siguiente. Comenzar el proceso de instalacin, que podrs seguir tambin mediante la barra de progreso. Una vez finalizada la instalacin, pulsa el botn Cerrar. Para abrir por primera vez
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, anlisis, desarrollo, pruebas e implantacin. Estas fases se pueden aplicar desde el proyecto ms ambicioso hasta a tu pequeo 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 botn Nueva tarea que encontrars en la barra de herramientas. Para la tarea que acabas de crear, teclea
62
www.pctoday.es
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 botn derecho de tu ratn sobre cada una de ellas y, en el campo Duracin, introduce el nmero de das que piensas dedicar a cada tarea. Por ejemplo, sobre la tarea Requisitos introduce una duracin de cinco das; para la tarea de Anlisis, una duracin de 5 das; para la tarea de Desarrollo, 10 das; para la tarea de Pruebas,
Una vez hayas comenzado a realizar las tareas que tenas planificadas, las herramientas de las que dispones te permitirn realizar un seguimiento del avance de tu proyecto, indicando el grado de avance de cada una de las tareas. Pulsa con el botn derecho sobre la tarea en la que se haya producido el avance y selecciona Propiedades de la tarea.
5 das; y para la Instalacin, 1 da. Estas proporciones suelen ser habituales en los proyectos de desarrollo aunque en los proyectos pequeos seguramente reduzcas la etapa de Requisitos y la etapa de Anlisis en tiempo por relajacin y comodidad, esto al final provocar que en la etapa de Desarrollo inviertas ms tiempo. Ahora tienes que identificar qu tareas requieren para su realizacin que finalice la anterior. De esta manera, crears vnculos entre tus tareas o tareas anteriores. Para crear el vnculo, pulsa y arrastra el ratn desde la tarea que debe realizarse en primer lugar hacia la que debe realizarse despus. Quedarn de
Las planificaciones son de utilidad especialmente cuando en el proyecto interviene ms de una persona. As, puedes indicar con antelacin a cada integrante del equipo cundo comenzarn sus tareas y cules sern. Para determinar los participantes en el proyecto, pulsa la pestaa Recursos. De esta manera acceders al rea desde donde podrs aadir recursos pulsando el botn Nuevo Recurso de la barra de herramientas. Introduce el nombre de recurso para tantos como consideres necesarios. Para el ejemplo, aade dos.
Vers cmo 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. Observars en el diagrama que una barra negra aparece sobre la verde de la tarea indicando el grado de avance en la misma.
Tambin puedes detallar en qu ha consistido el avance que acabas de relatar. Pulsa de nuevo el botn derecho sobre la tarea y, en la opcin Propiedades de la tarea, selecciona la pestaa Notas. Pulsa el botn que te permite introducir la fecha
Cuando ya dispones de todos las personas implicadas y todas las tareas a realizar, slo te queda indicar qu persona va a realizar qu tarea. Vuelve a la pestaa de Gantt y pulsa con el botn derecho de tu ratn sobre una de las tareas. Despus, selecciona la opcin Propiedades. Sobre la y hora actuales para indicar el momento en que se produce el avance e introduce, tambin, un comentario sobre el avance que se ha producido; por ejemplo: Redacto listado de requisitos. Despus, pulsa Aceptar para que la informacin quede almacenada en tu proyecto. Pulsa el botn Guardar de la barra de herramientas para salvar tu proyecto.
Resumiendo...
1 Abrir la pgina ganttproject.sourceforge.net/ 3 Download GanttProject
2.0.1 3 Seleccionar Windows Installer 3 Elegir servidor de descarga HEANet 3 Elegir ubicacin 3 Guardar Ejecutar 3 Aceptar licencia 3 Marcar todos los componentes 3 Siguiente 3 Elegir ubicacin 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 botn derecho sobre la tarea 3 Propiedades de la tarea 3 Escribir duracin de cada tarea en el campo Duracin 3 Aceptar Seleccionar tareas que deben realizarse primero 3 Arrastrar el ratn
6 7
3 4 5
8 9
hasta la tarea que debe realizarse despus 3 Vincular 3 Realizar todas las vinculaciones 3 Alejar Pestaa Recursos 3 Nuevo Recurso 3 Escribir nombre del recurso Pestaa Gant 3 Pulsar el botn derecho sobre una de las tareas 3 Propiedades de la tarea 3 Pestaa Recursos 3 Seleccionar persona que va a realizar la tarea 3 Aceptar Pulsar el botn derecho sobre la tarea 3 Propiedades de la tarea 3 Progreso 3 Introducir cantidad en Progreso 3 Aceptar Pulsar botn derecho sobre la tarea 3 Propiedades de la tarea 3 Pestaa Notas 3 Botn Introducir fecha y hora 3 Aadir comentario 3 Aceptar 3 Guardar
N 150
63
Curso
Depurando tu programa
En un mundo ideal, cada vez que realizaras un programa, este funcionara 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 cdigo que te permite realizar un seguimiento del cdigo en ejecucin y de los estados y valores asignados a las variables en cada momento. Desde el men de Inicio de Windows, ejecuta Visual Basic 2005 Express. Una vez abierto el programa, selecciona el men Archivo, Nuevo Proyecto y Aplicacin 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 botn 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 Botn (Button). Edita la propiedad Text y escribe Repeticionesr. Despus, haz doble click sobre el botn para acceder a la ventana de edicin de cdigo y declara dos variables: una para llevar un contador que denominars i y otra para realizar una accin de suma. Para ello, escribe el siguiente cdigo: 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 instruccin Next ha aadido 1 al valor del contador i, ha comprobado si ya se ha llegado al ltimo valor, en este caso 5, y ha iniciado otra repeticin Aparentemente todo funciona correctamente pero, ests 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 ello vas a introducir una pausa dentro de tu cdigo para observar qu est ocurriendo ah dentro. Haz click dos veces en el botn de tu formulario para acceder al cdigo que has desarrollado. Despus en el margen izquierdo, haz click a la altura de la instruccin Suma = Suma + i. Comprobars que aparece una gran bola roja. Esta representa el punto de interrupcin que acabas de crear. Al mantener el ratn sobre la bola, aparece informacin acerca del punto de interrupcin que acabas de incluir, como por ejemplo, si se trata de un formulario, control, mtodo, lnea o carcter. Ahora, para ver qu efecto tiene este punto de interrupcin, pulsa F5 y haz click tambin sobre el botn que has incluido en tu formulario. Observa como la ejecucin se ha pausado. Posiciona el ratn sobre alguna de las variables -"suma" o "i"- y podrs observar el valor que ha tomado
como para la variable "i". Vers cmo en la ventana de Inspeccin, 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 vers cmo los valores cambian. Cuando un valor cambia tambin cambia su color, apareciendo en color rojo para llamar tu atencin. Vuelve a eliminar el punto de interrupcin y pulsa F5 para continuar con la ejecucin normal de la aplicacin. Tambin, si lo que pretendes es tener una visin instantnea de algunas variables o expresiones que quieras considerar, dispones de una ventana de Inspeccin rpida. Para acceder a ella, ejecuta la aplicacin en modo Paso a Paso pulsando la tecla F8 o seleccionando la opcin Paso a Paso por Instrucciones desde el men Depurar. Una vez hayas pulsado el botn de tu formulario, estars
en ese instante. Pulsa de forma consecutiva la tecla F8 y podrs ver cmo se desplaza el cursor amarillo por la siguiente instruccin a ejecutar. Tambin puedes observar cmo van cambiando el valor de las variables en tiempo real. Por fin has desvelado el misterio de la programacin, ya has visto qu hacen las lneas de cdigo en accin y en tiempo real. Para eliminar el punto de interrupcin y continuar la ejecucin del programa normalmente, pulsa sobre la bola roja y de nuevo en F5. Para continuar profundizando en las opciones de depuracin, vuelve a sealar el punto de interrupcin en la misma instruccin en el paso anterior (Suma = Suma + i) vuelve a pulsar la tecla F5 y el botn de tu formulario. Volvers al punto en que apareciste en el paso anterior pero,
en la ventana de Edicin de cdigo. Ahora, desde el men Depurar, elige la opcin Inspeccin Rpida o simplemente pulsa el atajo Maysculas+F9. Aparecer la ventana de Inspeccin. En la parte superior puedes introducir la expresin o variable que quieras observar. Por ejemplo, teclea Suma en el campo Expresin. Tambin puedes realizar clculos con complementarios a tu cdigo; por ejemplo, prueba a escribir Suma + 1 en Expresin y comprobars cmo cambia el valor de la variable.
esta vez, prueba algo diferente. Sobre el valor de las variables que has visualizado, pulsa con el botn derecho de tu ratn y aparecer un men desplegable. Elige en l, la opcin Agregar inspeccin. Realiza este mismo proceso tanto para la variable "Suma"
Dentro de las mltiples opciones de depuracin de que dispones, cuentas con una potente vista que se denomina Ventana inmediato. Inserta la siguiente lnea de cdigo en tu programa: Debug.WriteLine(Suma). Esta instruccin realiza una escritura de lnea en la Ventana inmediato utilizando el objeto del depurador Debug. Inicia la ejecucin pulsando la tecla F8 para una ejecucin Paso a Paso. Pulsa tambin el botn Ventana inmediato que aparece sobre el Explorador de soluciones cuando entras en modo depuracin. Si pulsas repetidamente F8, podrs observar c-
64
www.pctoday.es
Resumiendo...
1 Inicio 3 Todos los programas 3 Visual Basic
2005 Express 3 Archivo 3 Nuevo Proyecto 3 Aplicacin Windows 3 Escribir nombre del proyecto 3 Aceptar 3 Seleccionar Form1 3 Arrastrar control Button 3 Doble click en botn 3 Escribir cdigo 3 Pulsar F5 2 Click dos veces en botn 3 Insertar punto de interrupcin 3 Pulsar F5 3 Pulsar en botn 3 Colocar el ratn sobre las variables a inspeccionar 3 Pulsar repetidamente F8 3 Comprobar 3 Pulsar sobre bola roja 3 Pulsar F5
mento, tanto para volver a una instruccin anterior como para avanzar a una instruccin posterior. Para volver a avanzar en ejecucin Paso a Paso, pulsa repetidamente sobre F8.
En numerosas ocasiones te encontrars situaciones en las que tu cdigo est compuesto de llamadas a funciones o a procedimientos, como has visto en el captulo 4. En estas circunstancias, puede ser que quieras depurar el paso por una funcin 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 Diseo, haz doble click sobre el formulario del paso anterior. En la ventana de cdigo introduce la siguiente funcin:
En ocasiones puede que quieras comenzar la depuracin una vez tienes tu programa en ejecucin. Si no has recordado poner ningn punto de interrupcin, pulsa en el men Depurar y luego en la opcin Excepciones. Se abrir la ventana desde donde puedes marcar las excepciones que determinarn una interrupcin en la ejecucin, para que "salte el depurador". Marca, por ejemplo, que sea cuando el formato de fecha no se corresponda
De nuevo desde la ventana de Diseo, a la que puedes acceder pulsando el botn Ver diseador que se encuentra encima del Explorador de soluciones, haz click dos veces sobre el botn en el centro del formulario, denominado Repeticiones. Modifica el cdigo para realizar una llamada a la funcin que acabas de programar, multiplicando as el valor que quieres sumar por 5. El cdigo del evento quedara finalmente:
De la misma manera que te ha resultado til ir hacia delante en la ejecucin del programa, en ocasiones te puede resultar igualmente til ir hacia atrs. Para ello selecciona la flecha amarilla en el margen de la lnea de ejecucin y, sin soltar el botn del ratn, desplzala hasta la instruccin que quieras que se vuelva a ejecutar. Esta funcionalidad de soltar y arrastrar la puedes realizar en cualquier mo-
con tu configuracin. Al producirse esta circunstancia se realizar una interrupcin de la ejecucin. Al producirse esta circunstancia que has sealado previamente, se realizar una interrupcin de la ejecucin de tu programa.
Resumiendo...
1 Doble click sobre el formulario en la ventana de Diseo 3 Introducir cdigo 3 Ver diseador 3 Doble click sobre el botn Repeticiones 3 Introducir llamada a la funcin correspondiente 2 Pulsar botn Repeticiones 3 Pulsar tecla F8 3 Comprobar resultado 3 Pulsar combinacin de teclas Maysculas + F8 3 Comprobar resultado 3 Seleccionar flecha amarilla 3 Arrastrar la flecha amarilla hasta la instruccin 3 Pulsar F8 para continuar Paso a Paso 4 Depurar 3 Excepciones 3 Seleccionar las excepciones a capturar 3 Aceptar
Pulsa el botn Repeticiones para iniciar las rutinas que tienes programadas para el evento click de ese botn. Vers que la ejecucin se queda detenida en la primera lnea de tu cdigo. Esta lnea aparecer iluminada en color amarillo.
N 150
65
Curso
4. El lenguaje de programacin
Sentencias e instrucciones. Condiciones y bucles PC Today no 149
5. Diseo de aplicaciones
Depuracin del cdigo PC Today no 150 PC Today no 151 PC Today no 152 PC Today no 153 PC Today no 154
7. Asegurar e imprimir
Control de acceso, usuarios y perfiles
9. Instalacin y despliegue
Creacin y ejecucin de un instalador
xisten numerosas maneras de gestionar los datos que manejan tus aplicaciones, pero la ms utilizada por su facilidad y madurez, ya que existe prcticamente desde el nacimiento de la informtica, 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 proporcionarn las utilidades necesarias para facilitar el empleo de una base de datos. Hasta el punto que te resultar ms 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
tambin la creacin y gestin de bases de datos, as como su conexin con el proyecto de cualquier aplicacin que ests desarrollando. Aunque podrs conectar con cualquier base de datos, las utilidades proporcionadas te facilitarn especialmente el empleo de SQL Server Express Edition y de Microsoft Access.
Aplicaciones de gestin
La mayora de aplicaciones que vayas a desarrollar sern de las denominadas "aplicaciones de gestin" en las que, bsicamente, ests gestionando informacin, es decir, datos. Aunque en numerosas ocasiones te plantees por qu complicar tu aplicacin con un elemento complejo como una
base de datos, con el tiempo el volumen de datos que vaya a manejar tu aplicacin justificar por si mismo la necesidad de esta. Adems, debes considerar que, llegado un punto, tu aplicacin ir mucho ms lenta de no utilizar un buen motor de base de datos o lo que es an ms grave podrs acabar perdiendo parte de los datos que has ido gestionando. Para el diseo de la base debes poner atencin en los pequeos detalles para conseguir una aplicacin lo suficientemente completa para que sea fcilmente utilizable. No siempre lo ms fcil de programar es lo ms fcil de usar y eso debes tenerlo muy en cuenta. Para un usuario, cuanto menos cosas tenga que "hacer" l y ms haga la aplicacin, mejor.
60
www.pctoday.es
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 podras diferenciar un curso de otro si no es por el nombre-.
ahora tienes que crear las tablas donde se va a almacena la informacin de todos los cursos existentes, de todos los profesores, de todos sus alumnos y la relacin de asistentes a un curso y profesor que lo imparte. Tendrs que crear una tabla Cursos, una tabla Profesores y una tabla Alumnos. En cada una de ellas almacenars las caractersticas de cada grupo divididas en campos. Desde el Explorador de bases de datos despliega la base de datos "Cursos.mdf". Despus, sobre la carpeta Tablas pulsa con el botn derecho del ratn y selecciona la opcin Agregar nueva tabla. Se abrir la ficha de la tabla. En ella tienes que aadir 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. Despus, introduce los distintos campos y el tipo de datos que contendrn. Un Curso tendr como
Ahora, aade 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 seala 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. Contina 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 seala de nuevo el campo como no obligatorio.
proyecto. Vers cmo se despliegan en el Explorador de soluciones varias carpetas y ficheros. Pulsa con el botn derecho de tu ratn sobre el nombre del proyecto. En el men que aparecer, selecciona Agregar, Nuevo elemento y Base de datos SQL. Aade un nombre -por ejemplo, "Cursos.mdf "- y pulsa Agregar. En la ventana de Seleccin de objetos de la base
Agrega ahora un campo para indicar el nmero mximo de alumnos que podrn asistir al curso. En el Nombre de columna escribe Max_alumnos; en el tipo de datos, al tratarse de un nmero, introduce "int" y seala que el campo tampoco ser obligatorio. Por ltimo, para agregar un campo para el cdigo nico de curso, en el Nombre de columna pon id_Curso; en el tipo de datos utiliza
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 opcin Explorador de base de datos. Lleg el momento de aadir tablas a tu base de datos. Para ello tomars el anlisis que realizaste en el captulo anterior para crear una aplicacin de gestin de cursos, en los que tenas que recoger los profesores, alumnos y cursos. Recuerda el diagrama de clases en el que habas definido los cursos impartidos por profesores y a los que asistan los alumnos. Pues bien,
atributos un nombre de curso, una fecha de inicio del curso, una fecha de fin del curso, un nmero mximo de asistentes y un cdigo que identifique este curso de manera nica.
un tipo numrico y, algo muy importante, para evitar que se pueda repetir ningn cdigo, seala este campo como campo clave pulsando el botn Clave principal de la Barra de herramientas.
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. Despus, debes seleccionar una
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 direccin de email y un nmero de telfono (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
N 151
61
Curso
el botn derecho y pulsa la opcin Agregar nueva tabla. Vers cmo se abre la ficha de tabla. Desplzate 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. En primer lugar, escribe Nombre en el apartado Nombre de la columna. Despus, 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 opcin Varchar-. Adems, 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 sePor ltimo, vas a agregar un campo para el cdigo de profesor, aunque tambin podra 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 numrico y, para evitar que se pueda repetir ningn cdigo, seala este campo como campo clave pul-
Aade 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-
11
sando el botn Clave principal en la Barra de herramientas. En la pestaa de Propiedades del campo en la zona de Identidad indica S en el Valor de identidad. Guarda la tabla pulsando el botn Guardar de la Barra de herramientas.
ciste con los profesores, aade el campo Apellidos, que tambin ser de tipo Varchar aunque la longitud ser de 128. Contina definiendo la tabla con un nuevo campo para el email. En el Nombre de columna introduce Mail en el tipo de datos tambin Varchar(128) y establece el campo para que no sea obligatorio. Agrega ahora un campo para indicar el nmero de telfono del alumno. En el Nombre de columna introduce num_Telefono y para el tipo de datos elige Varchar(12).
10
ala que ser de tipo Varchar aunque la longitud ser de 128 y tambin ser obligatorio. Introduce ahora el campo para almacenar el email. En el Nombre de columna escribe Mail; en el tipo de datos selecciona la opcin Varchar(128) y establece el campo como no obligatorio. Agrega ahora un campo para indicar el nmero de telfono del profesor. En el Nombre de columna introduce num_Telefono, en el tipo de datos, a pesar de tratarse de un nmero, introduce Varchar y dale una capacidad de caracteres de 12 por si se tratase de un nmero internacional y debieras poner delante el prefijo "00".
Para finalizar tienes que crear la tabla Alumnos. Un alumno tendr un nombre, unos apellidos, una direccin de email y un nmero de telfono. Adems, puedes aadir un campo para determinar si est al corriente de pago de su matrcula o no lo est. Desde el Explorador de bases de datos despliega la denominada "Cursos.mdf". Pulsa con el botn derecho de tu ratn sobre la carpeta Tablas y elige la opcin 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.
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 lgicamente ser obligatorio porque siempre ha de tener uno de los dos valores posibles. Por ltimo, para agregar un
campo para el cdigo de alumno, pon como Nombre de columna id_Alumno. En la pestaa de Propiedades indica S en el Valor de Identidad y seala este campo como campo clave pulsando el botn Clave principal. Haz click sobre el botn Guardar todo.
Resumiendo...
1 Inicio 3 Todos los programas 3 Visual Basic 2005 Express 3 Archivo
3 Nuevo proyecto 3 Aplicacin Windows 3 Escribir nombre 3 Aceptar 3 Botn derecho en nombre del proyecto 3 Agregar 3 Nuevo elemento 3 Base de datos SQL 3 Escribir nombre Cursos. mdf 3 Agregar 3 Seleccin 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 botn derecho del ratn 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 Numrico 3 Clave principal
2 3
9 10 11 12
4 5
62
www.pctoday.es
Aceptar. Cierra la ventana de Relaciones pulsando el botn Cerrar y guarda de nuevo pulsando el botn Guardar todo de la Barra de herramientas. Ahora se te presenta otra situacin diferente con los profesores, ya que, un profesor puede impartir muchos cursos pero un curso slo 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
pal la tabla "Curso" y como Tabla de clave externa ya tendrs seleccionada "Alumnos_Cursos", puesto que es en la que te encontrabas cuando has pulsado el botn Relaciones. Ahora tienes que seleccionar las columnas de cada una de las claves del desplegable de seleccin 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 relacin, incluso, recuerda que indicaste que las dos columnas tuvieran el mismo tipo de datos. Pulsa Aceptar para confirmar la relacin.
anteriores. Aade un nuevo campo cuyo Nombre de columna sea id_profesor, el tipo de datos sea numrico y que sea obligatorio para que no pueda existir ningn curso sin profesor. Pulsa el botn Guardar de la Barra de herramientas para almacenar los cambios realizados en la base de datos.
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 slo 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 botn derecho y elige la opcin Agregar nueva tabla. Se abrir la ficha de tabla. Dirgete a la ventana de Propiedades y modifica la propiedad Name introduciendo el valor Alumnos_Cursos. Despus, aade el campo id_curso en el Nombre de la columna; en la columna tipo de datos selecciona
De la misma manera, ahora tienes que agregar la relacin con alumnos. Vuelve a pinchar en el botn Agregar, selecciona Especificacin de tablas y columnas y pincha en el globo de Seleccin. Elige como Tabla de clave principal la tabla "Alum-
De nuevo hay que aadir relaciones entre estas tablas. Para ello pulsa el botn Relaciones de la Barra de herramientas. Una vez en la ventana de Relaciones, pulsa el botn Agregar, se abrir una nueva ventana de creacin de la relacin. En esta ventana selecciona Especificacin de tablas y columnas y pincha en el globo Seleccin. Elige como Tabla de clave principal la tabla "Profesores" y como Tabla de clave externa ya tendrs seleccionada "Cursos".
nos" y como Tabla de clave externa ya tendrs 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
numricos -ya que es el tipo que asignaste al campo id_curso en la tabla Cursos- y aade tambin el campo id_alumno con el tipo numerico por el mismo motivo. Ambos campos deben ser obligatorios ya que no tendra sentido que faltara alguno de los valores en esta asociacin.
Ahora tienes que seleccionar las columnas de cada una de las claves del desplegable de seleccin de columnas de cada una de las tablas. Elige id_profesor en ambos casos para facilitar la relacin, incluso recuerda que has indicado que las dos columnas tengan el mismo tipo de datos.
N 151
63
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 confirmacin de que deseas proseguir. Debes pulsar S. Una vez definida toda la estructura de la base de datos simplemente quedara 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 botn derecho del ratn sobre ella y elige la opcin Mostrar datos de tabla. Se abrir una ficha donde aparece la tabla vaca con un solo registro con todos sus valores a Null (Vacos). Introduce los valores para los profesores que consideres oportunos y pulsa Enter. Ten en cuenta que el campo id_profesor se rellenar automticamente al haberlo estable-
Pulsa Aceptar para confirmar la relacin. Despus, cierra la ventana haciendo click en el botn Cerrar y, por ltimo, pulsa en Guardar todo para almace-
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 botn derecho 3 Agregar nueva tabla 2 Propiedades 3 Name: Alumnos_Cursos 3 Nombre de la columna: id_ curso 3 Tipo de datos 3 Numricos 3 Nombre de la columna: id_alumno 3 Tipo de datos 3 Numricos 3 Relaciones 3 Agregar 3 Especificacin de tablas y columnas 3 Seleccin 3 Tabla de clave principal: "Curso" 3 Tabla de clave externa: "Alumnos_Cursos" 3 Elegir id_curso 3 Aceptar 4 Agregar 3 Especificacin de tablas y columnas 3 Globo de Seleccin 3 Tabla de clave principal: "Alumnos" 3 Tabla de clave externa: "Alumnos_ Cursos" 3 Elegir id_alumno 3 Aceptar 3 Cerrar 3 Guardar todo
Ya has creado el conjunto de datos de profesores y puedes acceder a l desde la pestaa de Orgenes de datos. Para incluir esta informacin en un formulario, selecciona el tipo de vista Detalle y despus el dataset Profesores. Arrstralo hasta el formulario Form1- existente en tu proyecto. Sorprendentemente vers como en tu formulario se crea una barra de edicin de registros con los botones necesarios: Siguiente, Anterior, Primero, ltimo, Aadir, Modificar y Eliminar.
Agregar nuevo origen de datos, selecciona la base de datos y pulsa botn Siguiente. Tras esto, elige tambin 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 podras poner cualquier nombre como por ejemplo dsProfesores. Pulsa en Finalizar.
Tambin aparecer un campo con el nmero de registro por si quieres acceder a algn registro directamente. Asimismo aparecern en el formulario todos los campos que tenas seleccionados en tu conjunto de datos de Profesores, con lo que ya dispones de todo lo necesario para tu pantalla de administracin de profesores y todo ello sin haber introducido una sola lnea de cdigo.
64
www.pctoday.es
Todava quedan un par de detalles, sobre todo de carcter esttico. Selecciona y alarga los controles para que ocupen ms 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 ttulo a mostrar en el formulario, y aade el valor Profesor. Por ltimo, y para dar
Por ltimo, resta agregar y configurar el formulario para la gestin de alumnos. Para ello, pulsa el botn derecho de tu ratn sobre el proyecto en el Explorador de soluciones. Selecciona la opcin Agregar, Nuevo elemento y WindowsForm. Despus, indica el nombre del formulario -en este caso, ser Alumnos.vb-. Pulsa Agregar y comprueba, por si su hubiera producido algn error, que tu nuevo formu-
lario aparece en tu Explorador de soluciones. Ahora tienes que agregar el conjunto de datos (dataset) para Alumnos. Para ello, abre la pestaa de Orgenes de datos, pulsa el botn Agregar nuevo origen de datos, selecciona la base de datos y pulsa el botn Siguiente. Despus, elige la cadena de conexin 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 gestin de alumnos.
Ya puedes acceder al dataset de alumnos desde la pestaa de orgenes de datos. Para incluir esta informacin en un formulario, selecciona el tipo de vista Detalle, as como el dataset Alumnos y arrstralo hasta el formulario que has creado anteriormente en tu proyecto. En el formulario se crea una barra de edicin de registros con sus botones necesarios, as como un campo con el nmero de registro por si quieres acceder a algn registro de forma
barra de edicin de registros con los botones necesarios: Siguiente, Anterior, Primero, ltimo, Aadir, Modificar y Eliminar. Adems, aparecer un campo con el nmero de registro por si quieres acceder a algn registro directamente. Asimismo han aparecido en el formulario todos los campos que tenas seleccionados en tu conjunto de datos de Cursos. Vuelve a retocar detalles estticos. Selecciona y alarga los controles para que ocupen ms 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 ms esttico a tu formulario, cambia el color del
Ahora tienes que crear el formulario para la administracin de cursos. Para ello pulsa con el botn derecho sobre el proyecto en el Explorador de soluciones. Selecciona la opcin Agregar, Nuevo elemento, WindowsForm e indica el nombre del formulario, en este caso Cursos.vb. Haz click sobre Agregar y vers cmo tu nuevo formulario aparece en tu Explorador de soluciones. Ahora tienes que agregar el conjunto de datos (Data Set) para cursos.
directa. Vuelve a retocar los detalles estticos con has hecho con el formulario anterior. Tras pulsar el botn Guardar todo, pulsa con el botn derecho sobre el nombre de tu proyecto en el Explorador de soluciones e indica como formulario de inicio Alumnos. Pulsa el botn Guardar y cierra la ficha. Presiona F5 para ejecutar tu aplicacin.
N 151
65
Curso
Resumiendo...
1 Pestaa Orgenes 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 Botn derecho sobre el nombre del proyecto 3 Agregar 3 Nuevo elemento 3 WindowsForm 3 Escribir nombre del formulario 3 Agregar 3 Pestaa Orgenes de datos 3 Agregar nuevo origen de datos 3 Seleccionar base de datos 3 Siguiente 3 Seleccionar cadena de conexin 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 Botn derecho sobre nombre del proyecto 3 Formulario de inicio: Cursos 3 Guardar 3 Cerrar 7 Botn derecho sobre el nombre del proyecto 3 Agregar 3 Nuevo elemento 3 WindowsForm 3 Escribir nombre del formulario 3 Agregar 3 Pestaa Orgenes de datos 3 Agregar nuevo origen de datos 3 Seleccionar base de datos 3 Siguiente 3 Seleccionar cadena de conexin 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 Botn derecho sobre nombre del proyecto 3 Formulario de inicio: Alumnos 3 Guardar 3 Cerrar
por nombre y fechas de inicio y fin, que comiencen antes del mes de junio. Si adems quieres que aparezcan ordenados por orden cronolgico en la columna tipo de orden del campo Fecha de inicio, selecciona o introduce el valor Ascendente. Pulsa el botn Ejecuta SQL de la Barra de herramientas para obtener el resultado. Una vez ms, vuelve al Explorador de base de datos, selecciona tu base de datos "Cursos" pero ahora pulsa con el botn derecho sobre la tabla "Alumnos". Selecciona la opcin Mostrar datos. Se abrir la ficha de Edicin de datos que has utilizado anteriormente. Pulsa el botn 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, adems de conocer si estn al corriente de pago. Si adems quieres que aparezca el campo telfono, seleccinalo del Panel de diagra ma y vuelve a pulsar el botn Ejecuta SQL.
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 botn derecho sobre la tabla "Profesores". Despus, selecciona la opcin Mostrar datos. Se abrir la ficha de Edicin de datos. Esta vista se denomina Panel de resultados. Pulsa el botn del Panel de diagrama de la Barra de herramientas y despus el de Panel de
Pulsa el botn del Panel de diagrama y el Panel de criterios, de nuevo aparecer la tabla "Cursos" con todos sus campos, en la que podrs seleccionar los que desees. Elige, por ejemplo, los campos Nombre, Fecha Inicio y Fecha Fin. Despus, marca la opcin Filtro del campo, Fecha inicio, e indica "< 01/06/2006", con esto indicas que quieres realizar una consulta de todos los cursos, listados
Resumiendo...
1 Explorador de bases de datos 3 Base de criterios. Estos paneles te permiten, en la prctica, generar todas las consultas que necesites hacer a tu base de datos de la manera ms visual y sencilla posible. Aparecer la tabla Profesores con todos sus campos y una opcin de marcado que te permite seleccionar cada uno de ellos. Selecciona, por ejemplo, los campos Nombre y Apellidos. Tambin selecciona en la columna tipo orden, del campo Nombre, la opcin Ascendente. De esta manera has conseguido realizar una consulta de todos los profesores, listados con nombre y apellidos y ordenados alfabticamente de manera ascendente.
datos "Cursos" 3 Botn derecho sobre "Profesores" 3 Mostrar datos 3 Ficha de Edicin 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 Botn derecho sobre "Cursos" 3 Mostrar datos 3 Ficha de Edicin 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 Botn derecho sobre "Alumnos" 3 Mostrar datos 3 Ficha de Edicin de datos 3 Panel de diagrama 3 Panel de criterios 3 Marcar: Nombre, Apellidos y Corriente de pago 3 Indicar =0"
66
Curso
Asegurar e imprimir
Aunque tu aplicacin cumpla las funcionalidades que hayas definido no es suficiente. Adems, tienes que pensar en otros aspectos como la seguridad y en numerosas funcionalidades que son comunes a varias aplicaciones, como las de impresin.
4. El lenguaje de programacin
Sentencias e instrucciones. Condiciones y bucles PC Today no 149
5. Diseo de aplicaciones
Depuracin del cdigo PC Today no 150 PC Today no 151 PC Today no 152 PC Today no 153 PC Today no 154
7. Asegurar e imprimir
Control de acceso, usuarios y perfiles
9. Instalacin y despliegue
Creacin y ejecucin de un instalador
n asunto cada vez ms 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 aplicacin -lo cual incluira la gestin de usuarios y contraseasy, por otro lado, en la defensa frente ataques que pretenden llegar a los datos almacenados en tu aplicacin o bases de datos a las que se conecta. En este sentido, es habitual en las aplicaciones de gestin registrar qu usuario realiza cada modificacin de datos o, al menos, cul ha sido el ltimo usuario en modificarlos. Estos controles son muy tiles a la hora de determinar fallos en la aplicacin producidos por una
utilizacin indebida por parte de los usuario, lo que supone un error de tu aplicacin. 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. Tambin puedes personalizar objetos por usuario. Por ejemplo, en una aplicacin de gestin de pelculas de DVDs puedes asociar a cada usuario las pelculas que le pertenecen y luego decidir si quieres compartirlas con el resto de usuarios o no. En definiti-
va, el nmero 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 aplicacin. Otra funcionalidad muy requerida en todas las aplicaciones de Escritorio es la de impresin. Y es que, aunque las aplicaciones te permiten sustituir completamente el soporte de papel, con la experiencia en el desarrollo de software te irs dando cuenta que te resistirs a abandonar la costumbre de ver tus datos en papel impreso. Adems con estas funcionalidades Visual Basic 2005 Express te har la vida ms fcil.
58
www.pctoday.es
Recupera tu proyecto
Aunque no es la solucin ptima lo mejor es disear el programa teniendo en cuenta ya los aspectos de seguridad- es posible aadir seguridad y funciones extendidas a tu programa una vez has finalizado las funcionalidades principales. El cundo aadir estas funcionalidades, si fueran necesarias, lo decidirs en la etapa de anlisis. Del mismo modo, mediante la planificacin sabrs cundo vas a implementarlas en tu programa. Vas a recuperar el proyecto de Mi Coleccin de Pelculas con conexin a Amazon con datos que ya creaste en captulos 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. Despus, localiza la carpeta donde almacenaste el proyecto "MisDvdsAmazon", selecciona el fichero de solucin y pulsa el botn Abrir. Si por alguna razn no encuentras este proyecto, puedes rea-
pulsar Finalizar. Tras esto, un mensaje en la pantalla te indicar que la instalacin se ha realizado correctamente. Pulsa el botn Cerrar para que desaparezca el Asistente de instalacin del Starter kit. 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 mens, selecciona Archivo. Dentro de este men, elige la opcin Nuevo proyecto. Despus, selecciona el Starter Kit denominado Amazon-Enabled Movie Collection desde la nueva carpeta Starter Kit que has creado tras la instalacin. En la casilla corres-
ninguna otra propiedad que afecte a la programacin -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 accin sobre el control lo hara 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 botn Search -el objeto SearchButton1- y edita su Text insertando el valor Buscar.
5
lizarlo de nuevo. Accede a msdn.microsoft.com/vbasic/ downloads/starterkits/default.aspx para descargarte el Starter kit de Mi coleccin de pelculas. Selecciona el Starter Kit Amazon-Enabled Movie Collection Starter Kit. Ser necesario que aceptes unas clusulas legales de uso de esta plantilla. A continuacin aparecer una ventana en la que se pregunta sobre qu deseas hacer con el fichero de instalacin del Starter kit. Indica que quieres descrgalo a tu PC para ejecutarlo una vez terminada la descarga. pondiente, introduce el nombre que quieras para este nuevo proyecto -por ejemplo, MisDvds- y pulsa Guardar. Nuevamente aparecer la ficha de documentacin del nuevo proyecto que has creado y se desplegarn en el Explorador de soluciones todos los ficheros necesarios del proyecto. 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 botn de Vista diseo. 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
Para el ver el resultado, ejecuta tu aplicacin Para ello, pulsa en el men Depurar y en Iniciar depuracin. Despus, haz click sobre el botn Search online (o Bsqueda en lnea, si lo has traducido). Aparecer la ventana de bsqueda con todas las funcionalidades habilitadas. Introduce el nombre de la pelcula que deseas buscar y pulsa el botn Buscar. Debes tener habilitada tu conexin a Internet dado que esta funcionalidad se conecta al servicio Web de Amazon para realizar la bsqueda.
Resumiendo...
1 Inicio 3 Visual Basic 2005 Express 3
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 trminos legales 3 Siguiente 3 Finalizar 3 Cerrar 3 Inicio 3 Visual Basic 2005 3 Archivo 3 Nuevo 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 diseo 3 Ventana Propiedades 3 Label1 3 Text: Buscar por 3 Repetir el proceso con todos los textos a traducir 5 Depurar 3 Iniciar depuracin 3 Search online 3 Introducir nombre de la pelcula 3 Buscar
Una vez descargado el fichero de instalacin, 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 ms tendrs que aceptar los trminos legales de uso. Hecho esto, visualizars el Starter Kit que deseas instalar y debers pulsar en Siguiente. Aparecer una nueva ventana de confirmacin en la que debes
N 152
59
Curso
Maneja usuarios
Simplificando mucho el problema de la seguridad y el control de acceso, finalmente debers 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 ms simple de hacerlo es que guardes los usuarios y sus permisos en alguna tabla dentro de la base de datos de tu programa. Desde el Explorador de bases de datos despliega la base de datos "DVDCollectionDataBase.mdf". Hecho esto, sobre la carpeta Tablas, pulsa con el botn derecho de tu ratn y elige la opcin Agregar nueva tabla. Vers cmo se abre la ficha de tabla. En ella tienes que aadir 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 contendrn. 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 pestaa de Orgenes de datos pulsa el botn Nuevo origen de datos. Una vez en la ventana de Seleccin de origen de datos elige la opcin Nueva base de datos y pulsa Siguiente. Por lo que se refiere a la Cadena de
Arquitectura de 3 capas
conexin, deja la marcada por defecto -Connection (My Settings)- y vuelve a pulsar Siguiente. Finalmente llegars a la ventana de Seleccin 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. Arrastra el nuevo objeto "dataset" a tu formulario. Vers 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 tambin ha surgido, en el mtodo de carga del formulario, una llamada para cargar los datos: Me.UsuariosTableAdapter. Fill(Me.UsuariosDataSet.Usuarios) Ahora tienes que crear una funcin que consulte si el usuario y contrasea son correctos. Esta funcin ser pblica y puedes situarla, bien en el formulario de login, bien creando una nueva clase. En este caso, y para simplificar la implementacin, defnela directamente en la clase del formulario de login. As, la funcin quedara definida de tal manera que devolver el valor verdadero si el usuario y contrasea son correctos y falso si no lo son. Lgicamente los parmetros que debe recibir la funcin sern usuario y contrasea.
Lo que en programacin se denomina arquitectura de 3 capas se compone de los siguiente elementos. En primer lugar, la Capa de presentacin, 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 lgica de negocio de tu programa; las entidades empresariales, que representan objetos que van a ser manejados o consumidos por toda la aplicacin. Estos podran ser un modelo de objetos, xml, etc., con tipo, estructuras de datos, etc. que permitan representar objetos de tu aplicacin. Tambin podrs utilizar otros tipos de objetos que contengan lgica 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 interactan con la base de datos. Estas clases surgen como una necesidad de mantener la cohesin entre clases y te ayudarn a reducir la dependencia existente entre las clases y capas.
En la ficha de la tabla, aade los campos introduciendo el nombre del campo en la columna Nombre de columna. En primer caso, aade 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 opcin varchar. Adems, 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 aa-
Ahora tienes que aadir el formulario de login. Para ello, desde el Explorador de soluciones, pulsa con el botn derecho del ratn sobre tu proyecto y selecciona Agregar y Windows Forms. En la nueva ventana que se abre, debes seleccionar el tipo LoginForm. Determina tambin el nombre del formulario que, por defecto, ser "LoginForm1.vb" y pulsa sobre Aceptar. Aparecer, en la ventana de edicin, un completo formulario con los campos de usuario y contrasea as como un bonito diseo. Vuelve al Explorador de soluciones y pulsa con el botn derecho sobre el proyecto. Despus, haz click en el botn Propiedades. Aparecer la ventana, que has visto ya en numerosas ocasiones, en la que podrs cambiar el formulario de inicio. Indica como Formulario de inicio el formulario de login: FormLogin1. Tambin debes modificar la propiedad Modo de apa-
diendo el campo Apellidos -tambin ser de tipo varchar aunque la longitud ser de 128 y tambin ser obligatorio-, el campo para almacenar el usuario -en el nombre de columna introduce Usuario, en el tipo de datos tambin varchar(50) y ajusta el campo como obligatorio-, y el campo de la Contrasea bajo el nombre Password-.
60
www.pctoday.es
Curso
gado, marcando, Al cerrar el ltimo formulario. De esta forma te asegurars que la aplicacin permanecer ejecutndose hasta que cierres la ltima ventana. Ahora te quedara realizar la comprobacin de que todo funciona correctamente. Al pulsar el botn OK, si el usuario y contrasea son correctos, deberas poder continuar hasta el formulario principal de tu aplicacin, donde podrs aadir y consultar tus pelculas DVD. De lo contrario, debe aparecer un mensaje indicndote que el usuario y la contrasea no son correctos. Desde la ventana de Diseo del formulario, haz doble click sobre el botn Aceptar cuya propiedad Name es OK. Se abrir la pantalla de edicin de cdigo sobre el mtodo Ok_click que representa el mtodo que se va a ejecutar cuando se produzca el evento click de ese botn. O, en otras palabras, lo que ocurrir cuando el usuario haga click sobre OK.
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 utilizars para poder saber en todo momento el usuario que ha introducido su contrasea y est trabajando en tu sistema. Para aadir la propiedad desde el Explorador de soluciones, ve a la ventana Ver cdigo del formulario MainForm.
Ahora puedes comprobar que la advertencia que apareca en el formulario de login ha desaparecido. Despus de pulsar el botn Guardar todo, para asegurarte de que no perders ningn dato, pulsa sobre el botn F5 y prueba la aplicacin. Introduce en las casillas correspondientes, el nombre de usuario y contrasea vlido que hayas insertado en la base de datos y espera a que la aplicacin te d acceso.
Resumiendo...
1 Explorador de bases de datos 3 "DVDCollectionDataBase.
mdf" 3 Botn derecho del ratn 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 Contrasea 3 Orgenes de datos 3 Nuevo origen de datos 3 Siguiente 3 Seleccin de origen de datos 3 Nueva base de datos 3 Siguiente 3 Dejar marcada Cadena de conexin por defecto 3 Siguiente 3 Seleccin de objetos de la base de datos 3 Analizar
Comienza a imprimir
Debes recordar que las aplicaciones que ests 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 mquina. Dentro de este tipo de aplicaciones son especialmente importantes las funcionalidades de impresin, ya que aportan un valor aadido que otro tipo de aplicaciones, como por ejemplo las aplicaciones Web, tienen ms difcil ofrecer, puesto que, por principio, no instalan componentes en tu mquina y eso hace que la comunicacin entre tu PC y tu impresora se realice siempre a travs del navegador en el que se ejecuten (Ya sea Internet Explorer, Mozilla Firefox, etc.).
Contina 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 vers que tienes a tu disposicin todas las fichas que dejaste en la ocasin anterior en la que trabajaste con
el proyecto. Desde el Explorador de soluciones, elige el formulario "listDetails.vb" y pulsa el botn Ver diseador. Aparecer la ficha del formulario donde se listan y buscan las pelculas que tienes. En este formulario puedes ver una zona de Bsqueda y otra zona de Edicin dentro del rea de visualizacin de los datos de la pelcula elegida. Desde ah vas a acceder a las opciones de impresin que vas a implementar.
Consejo
Es una buena costumbre que cierres las fichas que no utilices ya que en proyectos grandes puedes tener un volumen de fichas en pestaas que puede resultar incluso inmanejable.
Pulsa F5 para comprobar el funcionamiento de la aplicacin. Despus de pasar por la pantalla de control de acceso que has implementado en los pasos anteriores, acceders a la pgina de bsqueda de pelculas de tu coleccin. Puedes insertar una pelcula desde esta pantalla o pulsar el botn Bsqueda online. Introduce el nombre de una pelcula, selecciona alguna de las opciones encontradas y pulsa el botn Aadir. Esto introducir una nueva pelcula en tu coleccin. Recuerda que en este momento te encuentras en un entorno de ejecucin, por lo que las pelculas que ests aadiendo no permanecern en la siguiente ejecucin de la aplicacion. Desde la ficha de diseo del formulario arrastra un control de tipo button, edita la propiedad Name e introduce btn_imprimir.
62
www.pctoday.es
Modifica tambin la propiedad Text y escribe el valor Imprimir. Finalmente, modifica la propiedad ForeColor e introduce el valor Black para que las letras del botn aparezcan de color negro. 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 ejecucin, las libreras que vayas a utilizar. Por ejemplo, en el caso de la impresin, haz
tanto System.Drawing.Text como System.Drawing. Printing -aunque ya tengas incluido System.Drawingy tambin que no existe posibilidad de incluir todo. Esto es as para optimizar el rendimiento, ya que slo dispondremos de las referencias que realmente vayas a utilizar. Ten en cuenta este criterio de manera que slo referencies los objetos necesarios y en el momento que dejes de utilizarlos eliminalos de tus referencias.
Desde el Explorador de soluciones selecciona de nuevo "ListDetails.vb" y pulsa el botn Ver diseador. Aparecer el formulario donde acabas de insertar el botn Imprimir. Haz doble click sobre el botn para acceder al cdigo del evento click de ese control e inserta el siguiente cdigo:
Siempre que realices una impresin, puedes controlar mediante el cdigo cada uno de los aspectos relacionados con ella, a partir de la captura del evento "printpage". Cada impresin "levanta" el evento y debes tener en cuenta que por cada pgina de impresin, desde este evento se levantar otro evento del mismo tipo. Si quieres controlar cundo se imprimir la ltima pgina para enviar, por ejemplo, un aviso de finalizacin de impresin, debes consultar el valor de la variable "hasmorepages" y que su valor sea igual a "true". Tambin debes tener en cuenta que, aunque Visual Basic 2005 ofrece la posibilidad de controlar mediante cdigo hasta el ms mnimo detalle en la implementacin de cualquier accin, en la prctica nunca llegars a este extremo ya que tendrs gran cantidad de con-
doble click en el formulario y ve al principio del cdigo mostrado e introduce encima de la declaracin del formulario la referencia a las clases que vayas a utilizar. La sentencia para la inclusin es "Imports". A continuacin debes introducir los nombres de los elementos. Para ello, una vez ms, 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
Puedes observar el uso de la instruccin "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 facilitarn todas las tareas, Algunos de estos controles los proporciona el propio Visual Basic 2005 Express Edition, como vers en siguiente apartado, pero tambin existen muchos otros controles bien desarrollados por otras empresas o bien de libre distribucin.
Resumiendo...
1 Inicio 3 Todos los programas 3 Visual Basic
2005 Express > Seleccionar "MisDVDs" 3 Explorador de soluciones 3 Seleccionar formulario listDetails.vb 3 Ver diseador 2 Pulsar F5 3 Introducir usuario y contrasea 3 Introducir nombre de la pelcula a buscar 3 Buscar 3 Elegir pelcula 3 Aadir 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 principio del cdigo 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 diseador 3 Click en botn Imprimir 3 Insertar cdigo 6 Controlar la impresin mediante cdigo 3 Capturar el evento "printpage"
Consejo
En programacin, no debes tener miedo a "probar". El mtodo prueba-error resulta de lo ms efectivo: introduces las instrucciones que creas realizarn las funciones necesarias y pruebas su funcionamiento. Enseguida descubres qu es lo que falla, lo corriges y vuelves a probar.
N 152
63
Curso
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
Para permitir que el usuario personalice sus propias opciones de impresin, 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 impresin desde tu cdigo, tal y como has visto en pasos anteriores, si por cualquier razn no quieres que tus
PrintPreviewControl si deseas visualizar la impresin en el mismo formulario. Para tener la vista como un paso previo a la impresin debes utilizar el control PrintPreviewDialog. Arrastra un control de este tipo al formulario, aparecer en la parte inferior junto al resto de controles.
5
En estas lneas has preparado los objetos de configuracin y otros de presentacin para imprimir un documento con un borde rectangular. Para aadir el contenido de la impresin, vas a utilizar los objetos del formulario en el que te encuentras. De esta manera no tendrs que realizar nuevos accesos a datos que, en definitiva, son los elementos que ms van repercutir en el rendimiento de cualquier aplicacin y, por supuesto, tambin en esta. Como te encuentras en el mismo formulario, para dar a los restantes objetos la referencia de dnde se encuentran los resultados de la seleccin 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 mtodo donde has configurado las opciones de impresin ahora tienes que aadir las instrucciones necesarias para recuperar los datos de la pelcula que quieres imprimir, por ejemplo, el ttulo de la pelcula y el director. Pulsa sobre el botn Guardar todo que encontrars en la barra de herramientas de la parte superior de la pantalla. Para comprobar el resultado de la impresin incluye la instruccin de impresin haciendo click dos veces en el botn Imprimir y sustituyendo el cdigo que aparece por el siguiente: PrintDocument1.Print() usuarios puedan manejar estas opciones: cambio de impresora, cambio del tamao del papel o incluso no permitir la impresin a color. En este caso, es aconsejable que no utilices el control PrintDialog.
Edita su propiedad Document y selecciona el documento de impresin PrintDocument1.Para mostrar el cuadro haz doble click en el botn de impresin y sustituye la instruccin Print() por: PrintPreviewDialog1.ShowDialog(). Haz click sobre Guardar todo en la barra de herramientas y pulsa F5 para ejecutar tu aplicacin. Navega hasta la pantalla de listado de pelculas, selecciona una y pulsa el botn Imprimir. Vers como aparece la vista previa.
Resumiendo...
1 Diseo 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 cdigo 2 Escribir cdigo 3 Guardar todo 3 Doble click en Imprimir 3 Sustituir el cdigo 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 botn Imprimir 3 Sustituir la instruccin Print() 3 Guardar todo 3 Pulsar F5 3 Seleccionar una pelcula 3 Imprimir
64
Fjate que si deseas aclarar alguna otra instruccin -como en el caso anterior, en la que queras especificar que Button1 es el botn de impresin- puedes hacerlo aadiendo el carcter "" (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 comprobacin que has realizado sobre el perfil de usuario, tienes que limi-
En primer lugar debes plantearte qu roles identificas en tu aplicacin 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 debers asociar a cada usuario de tu sistema uno o varios roles para establecer las acciones que pueden realizar dentro de tu aplicacin. Si tomas como ejemplo la aplicacin de gestin de tu coleccin de pelculas de DVDs, y si quieres aadir una gestin de identidad basada en roles, podras pensar en dos roles diferentes: por un lado el rol de administrador, que podr aadir nuevas pelculas a tu coleccin e imprimirlas, y por otro el rol de invitado, que proporcionars a familiares y amigos para que puedan consultar qu pelculas tienes en tu coleccin pero sin correr el riesgo de que eliminen alguna por accidente.
Utilizando la propia configuracin 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 impresin, Operador del sistema, etc. Para conocer los tipos que tienes definidos en este enumerado, haz doble click sobre el formulario de tu aplicacin "ListDe-
Una capacidad que ofrece Visual Basic Express es que permite obtener atributos de aquel usuario de tu sistema que se encuentra utilizndolo en ese momento. Por ello, si tienes diferentes usuarios para las diferentes personas que utilizan tu PC simplemente debers 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 botn Inicio, Panel de control y Cuentas de usuario. Una vez all, introduce la cuenta de usuario y elige la opcin Cambiar mi tipo de cuenta. As, podrs establecer si el usuario es Administrador, con lo que no tendr restricciones
tails.vb" cuando te encuentres en la Vista de diseo. Acceders as al mtodo "Load" del formulario. Este mtodo 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 sern accesibles para el usuario y cules no. Teclea las siguientes instrucciones: If My.User.IsInRole (applicationServices.BuiltInRoleAdministrator)Then Despus de teclear el ltimo ".", Intellisense desplegar todos los tipos que registra el enumerado. Continua, finalizando con la instruccin "If" y estableciendo que si se cumple la condicin "then" el botn de impresin ha de ser visible ya que el usuario es Administrador, en caso contrario ("else") el botn ha de ser invisible.
tar la posibilidad de aadir nuevas pelculas, de modificarlas y, lo que es ms importante, de eliminarlas. Para ello debes ocultar los botones que realizan dichas funciones. Desde la ficha de Diseo del formulario, selecciona los botones que quieres ocultar y desde la pestaa Propiedades comprueba su nombre en la propiedad Name. Puedes desplegar la ventana de propiedades pulsando F4. Para cada uno de estos controles aade una lnea, tanto en el cumplimiento de la condicin como en el incumplimiento para hacer visible o invisible el control respectivamente. El cdigo quedara 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 Diseo 3 Doble click sobre "ListDetail.vb" 3 Acceder al mtodo Load 3 Teclear instrucciones 3 Teclear cdigo 4 Aadir comillas para hacer comentarios a instrucciones 3 Ficha de diseo del formulario 3 Seleccionar botones a ocultar 3 Aadir una lnea para hacer el control visible o invisible 3 Comprobar cdigo
N 152
65
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 correccin de los mismos. Por este motivo, si no quieres que los errores de tus aplicaciones te "persigan" debes prevenirlos con una buena gestin de errores y unas pruebas adecuadas de tu programa que te permitan detectar los fallos antes de distribuirlo.
4. El lenguaje de programacin
Sentencias e instrucciones. Condiciones y bucles PC Today no 149
5. Diseo de aplicaciones
Depuracin del cdigo PC Today no 150 PC Today no 151 PC Today no 152 PC Today no 153 PC Today no 154
7. Asegurar e imprimir
Control de acceso, usuarios y perfiles
9. Instalacin y despliegue
Creacin y ejecucin de un instalador
iempre que ests desarrollando, tu inters principal es ir avanzando funcionalidades de la aplicacin. Adems, cuando realizas pruebas en tiempo de ejecucin o mediante el depurador todo parece funcionar bien y no reparas en ms. El problema aparece cuando tu programa lo utilizan otras personas que no tienen tus conocimientos. Es entonces cuando comienzan a aparecer un montn de fallos. Esto es algo normal porque nadie va a conocer nunca tu aplicacin como t. Adems, est comprobado que cuando un desarrollador maneja su propia aplicacin, 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 estn tan bien considerados como los mismos desarrolladores. Aunque sepas que tu programa va a ser probado por otras personas, t tambin debes realizar todas las pruebas que puedas ya que todos los errores que puedeas detectar en la fase de
desarrollo podrs resolverlos de manera ms rpida y eficaz, puesto que tienes el cdigo "fresco" en tu memoria y todava 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 da de la mayora de los desarrolladores de software. Aparte, como desarrollador, debes controlar que cuando estos errores ocurran tu aplicacin contine 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.
56
www.pctoday.es
Prueba y comprueba
Existen muchas posibilidades de errores en tu programacin, por ejemplo, cuando tu programa intenta realizar un divisin entre 0, cuando parte de tu aplicacin intenta crear un fichero que ya existe o conectar a una base de datos que no existe o est cada, etc. Sera bueno para ti, cada vez que realices alguna instruccin como las anteriores, que pudiera producir errores, el poder comprobar si existen errores antes no? Para ello Visual Basic 2005 te ofrece la instruccin Try Catch que no exista en las versiones anteriores de Visual Basic. Desde el men de Inicio, ejecuta Visual Basic 2005 Express. Despus, selecciona Archivo, Nuevo proyecto y Aplicacin 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. Vers 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 botn. Tras esto, edita la propiedad Text y ponle el valor Pruebas. Haz doble click sobre el botn para acceder a la ventana de edicin de cdigo, declara dos variables, una de ellas con el valor "cero" para probar una divisin entre cero:
"Try", pulsando sobre el margen izquierdo de esa misma lnea. Podrs comprobar que lo has hecho correctamente porque aparece un vistoso crculo rojo. Pulsa F5 para ejecutar la aplicacin. Despus, pulsa el botn Prueba y, como ya te podas imaginar, vers cmo la ejecucin de la aplicacin se detiene sobre la instruccin. Para seguir con la ejecucin Paso a paso puedes ir pulsando la tecla F11 para continuar.
5
la ficha de edicin de cdigo. Una vez all, sitate sobre la instruccin Divisin y marca un punto de interrupcin pulsando sobre el margen izquierdo. Aparecer un punto rojo. De nuevo pulsa F5 y el botn Pruebas. Esta vez observars que la ejecucin se detiene en el punto de interrupcin que has sealado. Si utilizas la ejecucin Paso a paso observars que es el valor de la variable "y" de tu instruccin lo que produce el error. Si quieres estar todava ms seguro, puedes modificar directamente el valor de la variable poniendo el ratn sobre ella y, en la inspeccin que aparece junto a tu lnea de cdigo, modificando el valor cero que aparece junto a la "y".
En primer lugar se ejecuta la instruccin que contiene la divisin. El error se produce de la misma manera que anteriormente, pero la diferencia es que en tu propio cdigo tienes controlado el tratamiento de ese error. De esta manera no se detiene la ejecucin de la aplicacin 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.
Como has podido comprobar la anterior era la manera errnea de programar. Visual Basic 2005 ofrece, a diferencia de las versiones anteriores, la posibilidad de evaluar una instruccin y capturar la posible excepcin que se vaya a producir. Esto se realiza mediante la instruccin Try-CatchFinally. Desde la ficha de edicin de cdigo -a la que puedes llegar desde el Explorador de soluciones, pulsando sobre tu formulario y despus sobre el botn Ver cdigo-, introduce este nuevo bloque de cdigo en el que utilizars una instruccin de tipo Try catch para capturar, si se produce, la excepcin en la divisin.
Debes tener en cuenta que existen cientos de excepciones que pueden ocurrir en la programacin que realices. Es difcil llevar un perfecto control de todas ellas. Ni tan siquiera conocerlas. Ante esta problemtica Visual Basic 2005 Express Edi-
Pulsa F5 para ejecutar tu programa y observa que se produce un error. Al estar en tiempo de ejecucin, Visual Basic intenta descifrar dicho error y ofrecerte ayuda. En esta caso ,es una divisin entre cero que la herramienta detecta. Presiona F5 para ejecutar el programa. Pulsa sobre el botn Prueba. Escucharas un pitido en tu PC y despus aparecer el mensaje Final de instruccin.
tion aporta una completa ayuda. Si recuperas la instruccin que no ha sido tratada con Try catch, puedes observar la ventana de tratamiento de excepciones en la cual aparece la descripcin del error que se ha producido, pero que no ha entorpecido la ejecucin del programa. 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 cmo corregir o tratar el error que se est produciendo. Junto a ello, tambin tienes acceso a un informe completo y en detalle de la excepcin producida. Esta informacin ampliada te ser de gran utilidad sobre todo cuando ests trabajando en proyectos grandes, en los que en las tareas de desarrollo aparecern una gran cantidad de excepciones que debers tratar. Por ltimo, puedes copiar todos los datos del detalle de la excepcin al Portapapeles de tu PC -selecciona el texto y usa el atajo de teclado Ctrl+C- para, si deseas obtener an ms informacin o ayuda, posteriormente copiarlo
4
Para poder observar lo que ha ocurrido, es el momento de utilizar la depuracin tal como aprendiste en captulos anteriores. En el Explorador de soluciones, pulsa sobre tu formulario y despus sobre el botn Ver cdigo para llegar a
Puedes ahora volver a depurar tu aplicacin para saber exactamente qu ha ocurrido. Para ello, haz click dos veces sobre el botn prueba desde la ficha de edicin de tu formulario "Form1". Inserta un punto de interrupcin en la lnea de la instruccin
N 153
57
Curso
Resumiendo...
1 Inicio 3 Todos los programas 3 Visual
Basic 2005 Express 3 Archivo 3 Nuevo proyecto 3 Aplicacin Windows 3 Nombre: MisPracticas 3 Arrastrar control Button 3 Escribir cdigo 3 F5 2 Explorador de soluciones 3 Ver cdigo 3Insertar punto de interrupcin 3 F5 3 Ver la excepcin
-mediante el atajo de teclado Ctrl+V- en un documento, en un buscador de Internet o en tu propio registro de errores.
Errores "amigables"
Una vez has conseguido capturar los errores que se producen en tu aplicacin debes decidir qu hacer con ellos, dependiendo de la naturaleza de la aplicacin. El tratamiento bsico es mostrar el error en pantalla para que el usuario pueda informar de que el error se ha producido y de cul ha sido el mismo. Pero en ocasiones este sistema no es suficiente, porque las aplicaciones son demasiado crticas como para depender del aviso de un usuario o porque el usuario no tiene medio de hacer llegar el aviso al desarrollador. La solucin a cada problema debe aplicarse en funcin de la criticidad: desde el registro en un fichero de errores que se consulta peridicamente, el envo de un email de aviso con el error o, incluso, el envo de un SMS. llevar al usuario a ni tan siquiera avisar de que el error se ha producido. Sustituye el cdigo para mostrar el mensaje de error por: MsgBox(ex.Message.ToString) Muestra un mensaje de error amigable Este cdigo, en lugar de mostrar todos los datos de la excepcin, simplemente muestra el atributo "message", que corresponde a una descripcin bsica del error. Puedes aadir otros mensajes aclaratorios como: consulte al Administrador, llame a un determinado nmero de telfono o enve un email a una direccin con el error producido. En definitiva, puedes modelar el mensaje en funcin de la gravedad o de las necesidades de tu aplicacin.
ventana de excepcin, en la que puedes introducir el tratamiento de la excepcin genrico o personalizado segn te interese.
Vas a incluir una variacin en el cdigo que has introducido en el paso anterior. Desde el Explorador de soluciones, pulsa sobre tu formulario y sobre el botn Ver cdigo para acceder a la ficha de edicin de cdigo. Una vez all, introduce este nuevo bloque, en el que utilizars una instruccin Try Catch para modificar la accin a realizar cuando se produce el error.
Existen ms posibilidades a la hora de personalizar y tratar los errores producidos por tu aplicacin. Por ejemplo puedes, en funcin de la excepcin que se haya producido, realizar esta o aquella accin asociada -entre las que se puede encontrar la ms simple, que es mostrar un mensaje-. Puedes capturar un error en concreto especificando el tipo de error de manera explcita. Por ejemplo, para captu-
Pulsa F5 para ejecutar este nuevo programa. Despus, presiona el botn Prueba. Como resultado aparecer el mensaje del error y despus otro mensaje que indica Final de instruccin.
rar la excepcin de divisin por cero debes introducir la siguiente instruccin: Catch errDBZObject As DivideByZeroException When y = 0
Una circunstancia muy comn en programacin se produce cuando el cdigo 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 cdigo. Esto se llama "levantar la excepcin". De esta manera el programa "llamante" podr realizar su propia gestin de errores, mostrando los mensajes de error que considere oportunos en funcin del mbito de ejecucin de ese programa. Si no se levantara la extensin, el programa llamante se quedara colgado sin ms explicacin para el usuario, esperando una respuesta apropiada de tu programa, funcin o subrutina o de tu parte de cdigo. Para realizar una prueba tienes que incluir la divisin entre cero que ests manejando en una subrutina.
Un aspecto a tener muy en cuenta con los mensajes de error es la interpretacin que el usuario har de ellos. Un mensaje demasiado alarmante puede generar un efecto de "pnico" no deseado. Por el contrario, un mensaje demasiado benevolente puede
Cuando declaras la excepcin 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 excepcin est ocurriendo. Normalmente cuando ests desarrollando te aparecer la
Resumiendo...
1 Hacer doble click botn Prueba 3 Insertar la
instruccin Try Catch 3 F5 2 Hacer doble click botn Prueba 3 Modificar instruccin MsgBox 3 F5 3 Hacer doble click botn Prueba 3 Modificar instruccin Catch para capturar excepcin DivideByZeroException 4 Observar tipos de excepciones 3 F5 5 Hacer doble click botn Prueba 3 Modificar instruccin Try Catch
58
www.pctoday.es
Plan de pruebas
Una vez que tu aplicacin es lo bastante slida 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 encontrars t antes que los usuarios. La idea del plan de pruebas consiste en repasar todas las funcionalidades de tu aplicacin 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 realizacin de pruebas, as como la generacin de informes y de planes de pruebas; incluso te dan la oportunidad de realizar pruebas de carga para determinar el nmero de usuarios que podran utilizar la aplicacin concurrentemente. Estas herramientas suelen ser caras y, como comprobars ms adelante, no son realmente imprescindibles para desarrollos pequeos. Vers cmo con una simple hoja Excel podrs llevar un buen control de tus pruebas aplicacin tiene dos pantallas: una para bsqueda 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
Consejo
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 ms fcil asociarlos a pruebas ms sencillas que puedas volver a comprobar una vez realizadas las modicaciones necesarias.
dad. En la columna Pantalla, escribe Ver DVDs. A continuacin, ve introduciendo pruebas. En primer lugar introduce la prueba para insertar una nueva pelcula. La descripcin de la prueba sera Introduce todos los campos de la pelcula y el resultado a obtener -La pelcula aparece en el listado
y opcin de men de la plantilla genrica que has creado. Si lo consideras oportuno puedes tambin aadir algunas columnas para el dato que introduces -en este caso, el texto de bsqueda- o el dato que obtienes -en este caso, las pelculas-. Comienza creando las pruebas para la pantalla de bsqueda online. Introduce este valor en la columna Pantalla y ve recorriendo sus distintas funcionalidades. En primer lugar, la funcionalidad del botn Buscar. En la columna de Pantalla, escribe Bsqueda online; en la columna Funcionalidad introduce el texto Botn buscar; finalmente, el ID de y todos los campos estn rellenos-. La siguiente prueba podra ser, por ejemplo, modificar una pelcula aadida desde la bsqueda online. Ahora, presiona el botn Inicio. Despliega el men y ejecuta Visual Basic 2005 Express. Una vez dentro de la aplicacin, selecciona el men Archivo y Abrir para buscar el proyecto "MisDVDs". Pulsa F5 para ejecutar la aplicacin. Al
A la hora de realizar un plan de pruebas debes tener presente toda la informacin que has ido recopilando durante la realizacin de tu proyecto: la informacin de requisitos, que debes asegurar que se cumplan; as como la informacin de diseo de la aplicacin, donde se recogen todas las clases y funcionalidades que has desarrollado.
prueba ser el 1. Despus debes introducir el texto de descripcin de la prueba: Introduce un nombre de pelcula y pulsa el botn Buscar.
4
Desde el men de Inicio, selecciona Microsoft Excel. Introduce un ttulo para la aplicacin 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 ubicacin desde la que ests probando la funcionalidad. Esta puede ser, por ejemplo, la opcin de men o la pantalla. Tienes tambin que indicar un identificador a la prueba, esto es, un nmero auto-incremental. Adems, aade un campo de descripcin 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, aade el Resultado esperado cuando realizas la prueba en este caso, escribe el texto Aparece un listado de pelculas-. El ltimo campo de la tabla debes dejarlo en blanco hasta que realices el informe del plan de pruebas mientras ests ejecutando la aplicacin. Contina introduciendo pruebas para las funcionalidades: Click sobre el listado deber mostrar los datos de la pelcula en el rea de detalle, incluyendo la fotografa, doble click sobre el listado para aadir pelcula a tu coleccin, etc. 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.
De la misma manera debes introducir las pruebas para la pantalla Ver DVDs, desde la que visualizas y modificas tu coleccin. Repasa todas las funcionalidades de la pantalla para realizar al menos una prueba por cada funcionali-
Las pruebas que vas a realizar en este ejemplo sern sobre la aplicacin de catalogacin de DVDs que has implementado en captulos anteriores. Revisando las funcionalidades de la aplicacin debers determinar las pruebas a realizar. La
N 153
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 aplicacin, comprueba si alguna no est OK. Si es as, y alguna ha fallado, debers 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 tenas localizado, has podido provocar otro error de manera involuntaria. As evitars pasarlo por alto.
Resumiendo...
1 Inicio 3 Todos los programas 3 Microsoft
Excel 3 Introducir columnas
Dejar ltimo campo en blanco 5 Seleccionar pantalla Ver DVDs 3 Seleccionar filas vacas 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
Nuevamente, la manera ms sencilla de llevar esta gestin 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 ttulo para la aplicacin para la que vas a desarrollar el plan de pruebas. Vuelve a crear una columna para cada uno de los con-
Ahora tienes que realizar una gestin de la incidencia que se ha producido. Para ello abre la hoja Excel que has diseado anteriormente y comienza a dar de alta los datos que has recibido. En el Nmero de la incidencia debes introducir un nmero nico,
por lo que lo ms fcil sera 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 existirn dos tipos: Incidencias, que son las producidas cuando ocurre un error en la programacin, o Solicitudes, cuando lo que se requiere es una mejora en el programa o una modificacin 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, lgicamente estar sin solucionar por lo que debes introducir el valor N. La siguiente columna no aplicara, 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.
ceptos que necesitas reflejar. Por ejemplo: nmero de la incidencia, descripcin de la incidencia, tipo de incidencia, estado de la incidencia, fecha de resolucin y unos comentarios por si necesitas aclaraciones. Estos campos son orientativos y siempre podrs incluir otra informacin en funcin de tus necesidades. Por ejemplo, si hay varias personas resolviendo las incidencias puedes indica quin es la persona que lo est resolviendo.
Supn que durante el manejo de la aplicacin has detectado un error al aadir una pelcula a tu coleccin. El error se produce cuando la longitud del campo "director" es demasiado grande por ejemplo, cuando hay ms de un director-. La aplicacin da un error, en el que indica que no ha sido posible dar de alta la nueva pelcula pero no detalla ms informacin. En este caso se ha mostrado un mensaje de error amigable para no alarmar al usuario. Sin embargo, tienes la necesidad de una solucin, dado que cada vez ms pelculas tienen varios directores y por lo tanto cada vez se producirn ms errores de este tipo en tu aplicacin.
Resumiendo...
1 Inicio 3 Todos los programas 3 Microsoft
Excel 3 Introducir columnas
Basic 2005 Express 3 Archivo 3 Abrir 3 "MisDVDs" 3 F5 3 Identificar error 3 Seleccionar filas vacas 3 Insertar incidencia
60
Curso
Instalacin 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 montn 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 mquinas distintas con las mismas prestaciones.
4. El lenguaje de programacin
Sentencias e instrucciones. Condiciones y bucles PC Today no 149
5. Diseo de aplicaciones
Depuracin del cdigo PC Today no 150 PC Today no 151 PC Today no 152 PC Today no 153 PC Today no 154
7. Asegurar e imprimir
Control de acceso, usuarios y perfiles
9. Instalacin y despliegue
Creacin y ejecucin de un instalador
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 aplicacin. Visual Basic 2005 Express Edition instala en tu mquina componentes que son necesarios simplemente para la realizacin de aplicaciones. Estos componentes, naturalmente, no van a estar presentes en mquinas que no dispongan de Visual Basic 2005, del mismo modo tampoco puedes instalar Visual Basic 2005 en cada una de las mquinas en las que quieras ejecutar tu programa. Debes considerar tu mquina a todos los efectos como un entorno de "desarrollo". Este tipo de entornos sern los que utilices para toda la fase
de creacin de tu aplicacin. Es muy importante que tengas en cuenta que para realizar las pruebas de validacin de tu aplicacin necesitars de un entorno adicional de "pruebas". Si no andas sobrado de recursos para disponer de otra mquina puedes utilizar las tecnologas de virtualizacin de mquinas 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 captulo del curso, Microsoft .NET Framework facilita enormemente la distribucin de tu software, ya que aglutina en un paquete todos los componentes necesarios para la ejecucin de tu programa salvo, claro est, tu propio programa. Adems, cualquier componen-
te de tu programa utilizar, o mejor dicho reutilizar, cdigo incluido en el .NET FrameWork, con lo que se optimiza el nmero de componentes que tendrs que distribuir. Otro aspecto a considerar es la manera de distribuir tu aplicacin. Frente a la tradicional distribucin por CD o DVD, cada vez ms se comprueba la necesidad de una distribucin online, principalmente por las actualizaciones que necesites distribuir para la correccin de errores o la inclusin de nuevas funcionalidades. Para control de los cambios que implementes en tu aplicacin Visual Basic 2005 tambin te ofrece la facilidad de controlar y gestionar las versiones de la misma manera que te ayudar a la distribucin de tu software.
62
www.pctoday.es
Instala el framework
Aunque, como vers ms adelante, Visual Basic 2005 tambin 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 mquina y que pueden soportar diferentes aplicaciones. La versin necesaria para la ejecucin de las aplicaciones que has desarrollado con Visual Basic 2005 Express Edition es MS .NET Framework 2.0. Abre una sesin en tu navegador. Puedes acceder a la descarga desde la pgina de Microsoft (www.microsoft.es) en su rea de descargas por medio de la zona de Descargas ms populares o introduciendo Framework 2.0 en el campo de Bsqueda. Debes tener cuidado porque existen varios paquetes de instalacin del framework en sus diferentes versiones, 1, 1.1 y 2.0. La versin que debes instalar es cucin del programa de instalacin. Es un aviso de seguridad que te seala el producto a instalar y su fabricante para comprobar que ambos son de tu confianza. Comenzar de esta manera el proceso de instalacin del MS Framework 2.0. A continuacin debers seguir el Asistente de instalacin para completar el proceso completo. Desde el Asistente de instalacin pulsa Siguiente, acepta los trminos de la licencia, una vez hayas ledo cuidadosamente todas las clusulas y pulsa Instalar. Cuando haya terminado todo
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
de 64bits. En la ventana de descarga del paquete tienes, de nuevo, que pulsar el botn Descargar. Despus, elige la opcin Guardar, selecciona la carpeta destino donde quieras guardar el instalador del componente y pulsa Aceptar. 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 confirmacin de la ejecucin donde aparece el componente y el fabricante. Asegrate que es el Paquete de Idioma para espaol de Microsoft y pulsa Ejecutar. Una vez en la ventana de bienvenida, haz click en Siguiente, acepta las condiciones legales y pulsa
el proceso de instalacin, 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 distribucin. Por lo general siempre es recomendable visitar este centro de soporte o activar las actualizaciones automticas que ofrece Windows
la 2.0. Tambin 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 ejecucin, tambin denominado "Run time". El nombre exacto es Microsoft .NET Framework, versin 2.0, Redistributable Package (x86) (Paquete redistribuible de Microsoft .NET Framework versin 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 tambin los procesadores AMD. Desde la pantalla de descarga pulsa el botn Descargar, selecciona la carpeta donde quieras guardar el fichero y pulsa de nuevo en Guardar. Una vez finalizada la descarga, que llevar ms o menos tiempo en funcin de tu velocidad de conexin a Internet, pulsa sobre Ejecutar. Se abrir una nueva ventana de confirmacin para la eje-
XP para actualizar la versin con los sucesivos parches que distribuya Microsoft. Gracias a la tecnologa de .NET Framework estas actualizaciones no afectarn a los desarrollos que hayas realizado, ya que siempre se almacena la versin de los componentes que utiliza tu aplicacin y no se borran, sino que se acumulan.
Para actualizar el idioma del framework que acabas de descargar, todava necesitas un componente ms: el denominado Language pack. Este componente sirve para actualizar algunos elemento y convertirlos al idioma espaol. Para esto, en la parte inferior de la pgina en la que te has descargado .NET Framework 2.0 aparece un listado de enla-
Continuar para completar el proceso de instalacin. Una vez finalizada la actualizacin de ensamblados, y si no ha ocurrido ningn error, aparecer la ventana de confirmacin con el botn Finalizar. Pulsando sobre l se cerrar la ventana y se dar la instalacin por completada.
Resumiendo...
1 Ir a www.microsoft.es 3 Descargas ms populares 3 Elegir Microsoft .NET Framework, versin 2.0, Redistributable Package (x86) 2 Descargar 3 Elegir ubicacin 3 Guardar 3 Aviso de seguridad 3 Iniciar instalacin 3 Siguiente 3 Aceptar trminos de licencia 3 Instalar 3 Aceptar 4 Volver a la pgina de descarga 3 Pulsar sobre Paquete de idioma para espaol de Microsoft .NET Framework versin 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
N 154
63
Curso
la Red. Incluso, puedes editar alguno desde Visual Basic 2005 si lo agregas a la solucin, pulsas sobre l con el botn derecho y seleccionas la opcin Abrir. Para ejecutar tu aplicacin haz doble click sobre el fichero "MisDvds.exe". Vers cmo se abre la ventana inicial de tu desarrollo. Una vez has comprobado que tu aplicacin 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 mquina. Para ello debes utilizar la mquina 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 opcin Copiar. Si tienes los PCs conectados en red, selecciona la mquina donde vayas a probar la aplicacin desde Mis sitios de Red y, all elige la carpeta que consideres oportuna para ejecutar la aplicacin. Si los PCs no
produce ningn error de compilacin se generaran los ficheros necesarios para la ejecucin del programa en la carpeta donde hubieras guardado tu proyecto. Esto ocurre porque, cuando Visual Basic realiza la compilacin, deja una copia de todos los ficheros necesarios en una carpeta del proyecto.
estn conectados en red, selecciona el soporte donde quieras trasportar los ficheros, que bien podr ser un Pen drive USB, otro dispositivo extrable 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 algn fichero es elevado. Por otra parte Visual Basic 2005 Express Edition ofrece numerosas opciones avanzadas de distribucin que te facilitarn la tarea y te proporcionarn nuevas posibilidades para actualizacin del software as como para proporcionar ayuda online a los usuarios.
Para determinar la ruta donde se almacenarn los ficheros para la ejecucin cuando generas el proyecto, pulsa con el botn derecho de tu ratn sobre el nombre del proyecto en el Explorador de soluciones y selecciona la opcin 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 habas utilizado el grupo de opciones Aplicacin para modificar el formulario de arranque, por ejemplo. En esta ocasin debes seleccionar el grupo Compilacin. Como resultado, se despliegan las opciones de compilacin. En concreto, pulsa el botn Examinar del campo Generar ruta de acceso de resultados. Selecciona una carpeta dentro de la carpeta del proyecto. Por lo
necesarias -como "MisDvds.XmlSerializer.dll"- o, por supuesto, el fichero que debers ejecutar. que ser el que tenga la extensin .EXE. Este fichero tendr un icono personalizado para la aplicacin si se lo has especificado en la ventana de Propiedades del proyecto dentro del grupo Aplicacin. Para generar iconos existen numerosas aplicaciones gratuitas en
"pega" los ficheros. Haz doble click sobre el fichero "MisDvds.exe" y tendrs la aplicacin funcionando en la nueva mquina.
Resumiendo...
1 Inicio 3 Todos los programas 3 Visual Basic
2005 3 Proyectos recientes 3 "MisDVDs" 3 Cerrar todas las fichas no necesarias 3 Generar 3 Generar MisDvds 2 Explorador de soluciones 3 Botn derecho sobre nombre del proyecto 3 Propiedades 3 Compilacin 3 Generar ruta de acceso de resultados 3 Examinar
3 Localizar el proyecto en la carpeta correspondiente 3 Doble click sobre "MisDvds. exe" 4 Seleccionar todos los ficheros de la carpeta release 3 Copiar 3 Mis sitios de Red 3 Seleccionar mquina y carpeta de destino 3 Elegir el soporte de grabacin 3 Pegar 3 Click dos veces en "MisDvds.exe"
64
www.pctoday.es
Publica tu aplicacin
El problema de los instaladores no es nuevo y desde los orgenes del desarrollo software se han ido perfeccionando. Visual Basic 2005 proporciona un sistema avanzado de distribucin de software. Comparado, por ejemplo, con Windows Installer, la distribucin de Visual Basic no hace necesaria una completa reinstalacin de todo el sistema para actualizar a una nueva versin y tampoco es necesario ser administrador del sistema tal y como ocurra con los instaladores tradicionales. En definitiva se cambia el concepto de instalacin por el de "publicacin". Compartir. Al seleccionar la ruta "c:\publicar" ests, lgicamente, seleccionando una instalacin local, que es la opcin ms sencilla, la cual posteriormente podrs copiar en un CD, DVD, cualquier otro dispositivo de almacenamiento USB, etc. Ahora debes seleccionar la forma en la que vas a realizar la instalacin, que puede ser desde un sitio Web, desde un recurso compartido en red o, el ms tradicional, por distribucin en CD o DVD. Selecciona esta ltima opcin ya que te resultar la ms sencilla. De cualquier formas, a medida que tus desarrollos sean ms complejos o aumente el nmero
ciones y pulsa Siguiente. Aparecer la pantalla resumen de la instalacin 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 publicacin en la barra de estado que se encuentra en la parte inferior de la ventana de tu herramienta Visual Basic. Una vez finalizada la publicacin se abrir la carpeta destino que has seleccionado, con todos los ficheros de la instalacin. Se crear un fichero "MisDvds.application" con la ltima versin de tu aplicacin. Se habr generado, del mismo modo,
Desde el men de Inicio ejecuta Visual Basic 2005. Desde la pantalla de Pgina de inicio, y dentro de los proyectos recientes, selecciona "MisDvds". Entra en el Explorador de soluciones, pulsa con el botn derecho del ratn sobre el proyecto y selecciona la opcin Publicar, con lo que se abrir el Asistente para la publicacin del proyecto. Debes tener en cuenta que la distribucin 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 podrs descargarte la aplicacin. Esta ltima es una excepcional manera de distribucin, tanto en entornos de Intranet en tu casa u oficina como, por supuesto, en Internet, donde dispones de acceso pblico.
de usuarios de tus aplicaciones debers considerar la opcin de distribucin Web. Siempre debers adaptarte a las necesidades de tus usuarios para facilitarles el uso de tu aplicacin lo ms posible. Selecciona CD o DVD y pulsa en Siguiente. Ahora ests en la pantalla para la bsqueda de actualizaciones. Si deseas que tu aplicacin vaya a buscar posibles actualizaciones cada vez que se ejecute, debers establecer la ubicacin donde debe dirigirse. De esta manera te ahorrars mucho trabajo en la distribucin de las distintas actualizaciones de tu software. Pero siempre debes tener en cuenta las circunstancias de tu aplicacin, el nmero de usuarios, as como la ubicacin de los mismos. Si no deseas bsqueda de actualizaciones selecciona La aplicacin no buscar actualiza-
un fichero "Setup.exe" y un fichero con el nombre de la versin generada. Podrs ver tambin que existe una carpeta con todos los ficheros necesarios para la instalacin. Para ello podrs utilizar cualquiera
Pulsa el botn Examinar para seleccionar la carpeta en la que deseas dejar los ficheros para la distribucin, por ejemplo "c:\publicar" o cualquier ruta que consideres. En esta pantalla puedes leer las opciones de publicacin. Adems de la distribucin a una ruta local, tambin podrs realizarla a una ruta de tu red tipo "\\nombre_maquina\carpeta"o a un servidor FTP "ftp://servidor/carpeta". Para
de los tres ficheros. Haz doble click sobre alguno de ellos, realiza la comprobacin de requisitos para comprobar, por ejemplo, si dispones de la versin del framework adecuada. Despus aparecer un aviso de confirmacin para la instalacin. Pulsa la opcin Instalar. Al finalizar la instalacin podrs observar que la aplicacin se ejecuta directamente. Tambin tendrs disponible un acceso a tu aplicacin desde el men de Inicio.
Resumiendo...
1 Inicio 3 Todos los programas 3 Visual Basic
2005 3 Proyectos recientes 3 "MisDvds" 3 Explorador de soluciones 3 Botn derecho sobre el proyecto 3 Publicar 2 Examinar 3 Seleccionar carpeta de distribucin para los ficheros 3 Pulsar con botn derecho en la carpeta a compartir 3 Compartir 3 Seleccionar la forma en que se realizar la instalacin 3 CD o DVD 3 Siguiente
4 Establecer ubicacin para buscar actualizaciones 3 La aplicacin no buscar actualizaciones 3 Siguiente 3 Comprobar pantalla resumen 3 Finalizar 5 Se generan ficheros "MisDvds.application", "Setup.exe" y con nombre de la versin 3 Doble click sobre alguno de los tres 3 Instalar
configurar tanto el recurso compartido en red como el servidor FTP debes tener permisos de administracin en las mquinas de tu red, de no ser as consulta con tu administrador de red sobre la manera ms sencilla de hacerlo. Por lo general y si se trata de una red pequea, en tu casa o tu oficina, puedes utilizar recursos compartidos de red pulsando con el botn derecho sobre la carpeta a compartir y seleccionando
N 154
65
Curso
en cuenta varios factores, si vas a disponer de bastantes aplicaciones que compartan los mismos requisitos y que estn todos en ubicacin accesible, como por ejemplo en tu casa o en la oficina puedes mantener una ubicacin comn para los paquetes de instalacin de tus componentes que debers indicar para todos los paquetes de distribucin de todos tus programas. Si por el contrario tus aplicaciones tienen usuarios muy dispares o tienes dudas si tendrn acceso a una ubicacin comn debers mantener estos componentes en el mismo lugar que tu programa. Si tienes dudas deja marcada la opcin Descargar los componentes del Sitio Web del proveedor de los componentes. Recuerda que un tema importante es la distribucin de actualizaciones, si ya es costosa la distribucin de la versin inicial de tu programa, cada vez que realices una mejora en l debers actualizar la versin de todos tus usuarios. Si la actua-
otro fichero que, sin pertenecer exactamente a la aplicacin, puede facilitar su uso o proporcionar alguna utilidad de valor aadido para tus usuarios, algo en lo que siempre debes pensar. Dentro de los ficheros de la aplicacin puedes generar grupos de ficheros para aclarar su uso. Por defecto, los ficheros generados son del grupo "Requerido" ya que sin ellos la aplicacin no funcionar correctamente, pero del mismo modo puedes crear tu propio grupo documentacin donde adjuntars toda la documentacin que quieras distribuir con tu producto. Cierra la ventana de Archivos de aplicacin pulsando sobre el aspa.
contrars dentro de los grupos de opciones de tu izquierda. De esta manera llegars a las Opciones de configuracin de tu publicacin como ya has visto en pasos anteriores. Debes saber que puedes publicar tu aplicacin en una web o en un recurso compartido y ejecutarlo desde all.
Tambin puedes incluir otra ubicacin remota para el instalador de la aplicacin. Para ello introduce la direccin web Direccin URL de instalacin. Escribe, por ejemplo, HYPERLINK \\\\mipcpruebas\\publicaciones\\misdvds"\\ mipcpruebas\publicaciones\misdvds si se tratara
Continas en las opciones de Publicacin de las propiedades de tu proyecto. Ahora tienes que configurar las opciones de instalacin de los componentes adicionales que tu aplicacin utilizar. En este caso puedes distribuir el mismo .NET Framework si quieres asegurarte que el usuario final no tenga problemas de versin. Algo imprescindible para la correcta ejecucin de esta aplicacin es disponer de SQL Server Express, ya que ha sido el
lizacin se debe a un error en tu aplicacin, querrs que este error afecte a la menor cantidad de usuarios posibles por lo que debes actualizar su versin antes de que el error se produzca. Visual Basic 2005 te permite la mejor manera de realizar estas actualizaciones y puedes elegir cundo quieres que tu programa se auto-actualice. Para ello pulsa la opcin Actualizaciones de la pantalla de Opciones de publicacin en la que te encuentras. Debers seleccionar si deseas que tu programa busque nuevas actualizaciones, si quieres que lo realice antes o despus de que se inicie la aplicacin, incluso puedes sealar periodicidad en las que quieres que se realicen la comprobacin en busca de actualizaciones. Por ltimo puedes tambin sealar la versin mnima a partir de la cual se deben buscar actualizaciones y la ubicacin donde buscarlas.
de un recurso compartido de tu red. En esta misma pantalla aparece la opcin para indicar si tu aplicacin se va a ejecutar desde una ubicacin remota o como una aplicacin convencional accesible desde el men de Inicio. Para que se ejecute desde el men de Inicio selecciona la opcin La aplicacin tambin est disponible sin conexin. En esta misma pantalla pulsa el botn Archivos de aplicacin, desde esta opcin podrs controlas los archivos que vas a distribuir con tu aplicacin, esta opcin te permite, por ejemplo aadir algunos ficheros extras que quieras distribuir con tu aplicacin, bien sean documentos de la misma o tambin algn programa auxiliar o cualquier
repositorio de datos que has elegido para almacenar toda la informacin 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 ms sencilla es incluir el fichero de instalacin de la misma base de datos en la distribucin de tu programa. Para ello debes mantenerla marcada esta pantalla. El ltimo componente a instalar ser Windows Installer que facilitar la ejecucin de la instalacin en s. Si deseas incluir ms componentes puedes pulsar sobre el enlace Buscar ms componentes redistribuibles en el centro de actualizaciones de Microsoft. An te resta un parmetro por configurar que es dnde se ubicarn los ficheros de distribucin de estos componentes. Aqu debes tener
Las ltimas opciones de actualizacin puedes configurarlas desde la misma pantalla pulsando la Opciones. En estas ventana puedes incluir el idioma en el que quieres distribuir la aplicacin, tu nombre o el nombre
66
www.pctoday.es
Resumiendo...
1 Explorador de soluciones 3 Botn derecho sobre nombre del proyecto 3
Propiedades 3 Publicar 3 Opciones de configuracin 2 Direccin URL de instalacin 3 Escribir direccin Web 3 Activar opcin La aplicacin tambin est disponible sin conexin 3 Pulsar el botn Archivos de aplicacin 3 Aadir ficheros dentro del grupo Requerido 3 Cerrar ventana 4 Configurar las opciones de instalacin de los componentes adicionales 3 Seleccionar .NET Framework 3 Seleccionar SQL Server Express 3 Seleccionar Windows Installer
la 1.0.0.3 que es la que se deber generar la siguiente vez que ejecutes la publicacin. Esto se debe a que est marcada la opcin Incrementar la versin automticamente en cada publicacin. En numerosas ocasiones necesitars dar un salto mayor en la versin que deseas generar. As, cuanto mayor sea el cambio o los cambios menor deber ser el orden del dgito a modificar. Por ejemplo, para aadir nuevas pantallas para la clasificacin de tus DVDs deberas cambiar el segundo dgito e introducir el valor 1. Recuerda que cuando modi-
ficas el valor de uno de los dgitos de una versin el resto de nmeros ms a la derecha debern cambiar a 0 a modo de contadores. Tambin recuerda desmarcar la opcin de autoincremento automtico si vas a llevar el control de los nmeros de versin por tu propia cuenta. Pulsa el botn Publicar si ya has establecido todos los parmetros o, si quieres modificar alguno, vuelve a pulsar el botn Asistente para publicacin. Todava te resta identificar las ltimas configuraciones de la ejecucin de tu aplicacin. Accede a las propiedades del proyecto pulsando botn derecho sobre el mismo en el Explorador de soluciones. Seala el grupo de opciones Segu-
ridad para determinar el nivel de seguridad de tu aplicacin. Selecciona Habilitar configuracin de seguridad y, posteriormente, la opcin Aplicacin de plena confianza.
Resumiendo...
1 Explorador de soluciones 3 Botn derecho
sobre nombre del proyecto 3 Publicar 3 Introducir parmetros del apartado anterior 3 Finalizar Asistente 3 Observar que el nombre de los ficheros termina en 1 2 Explorador de soluciones 3 Botn derecho sobre nombre del proyecto 3 Publicar 3 Introducir parmetros del apartado anterior 3 Finalizar Asistente 3 Observar que el nombre de los ficheros termina en 2 3 Botn derecho sobre nombre del proyecto 3 Propiedades 3 Publicar 3 Observar el resultado obtenido 3 Escribir el nmero de versin en las casillas correspondientes 3 Desactivar la opcin Incrementar la versin automticamente en cada publicacin 3 Publicar 4 Explorador de soluciones 3 Botn derecho sobre nombre del proyecto 3 Seguridad 3 Habilitar configuracin de seguridad 3 Aplicacin de plena confianza
N 154
67