Story Transcript
REGLAS DEL CÓDIGO
Page 1 of 322
¡Hola! ¡Bienvenido a Reglas del Código! Estas a punto de emprender una aventura de aprendizaje a campo traviesa.
Microsoft.
Acompaña a Nikki y a Cliff mientras manejan la camper en el rally de carretera Reglas del Código. Sus buenos amigos, Jen y Dirk, también participan – ¡y tú estás invitado! El rally de carretera tiene 12 ciudades de destinos. Para terminar el rally, Nikki y Cliff deben viajar a cada destino en un orden particular. Durante el trayecto te enseñarán a programar en Visual Basic .Net usando Visual Studio .Net de
En este viaje aprenderás mucho de Nikki y Cliff. Ambos son guerreros del código Visual Basic .Net. Ellos te pondrán en camino presentándote la programación con Visual Studio .Net y antes de que te des cuenta escribirás tu primer programa, el tradicional Hello World. Ese es tan solo el principio. Pronto diseñarás formatos, añadirás elementos como botones y cuadros de texto y configurarás sus propiedades. Entonces comienza la diversión. Nikki y Cliff te enseñarán las bases de la programación: cómo usar variables, instrucciones de decisión, bucles y funciones. Les darás vida a los formatos y botones. Y entonces estarás programando. ¿Emocionado? Entonces ¡vámonos! Esta es una lista de todos los destinos a los que viajarás en el rally de carretera Reglas del Código.
Everywhere, Wisconsin (programación y programadores) Ideal, Illinois (Visual Studio .Net y tu primer programa) Pseudo, Pennsylvania (planeación y diseño del programa) Formsville, Virginia (formatos) Proper, Georgia (propiedades) XY, Arkansas (variables) Switchboard, Oklahoma (operadores) Whatif, Texas (instrucciones condicionales) IfElse, New Mexico (instrucciones condicionales complejas) Def Valley, California (bucles definidos) Whatever, Colorado (bucles indefinidos) Function, South Dakota (funciones)
Cuando llegues a cada destino, el comité del rally Reglas del Código te someterá a una pequeña prueba para que puedas presumir lo que has aprendido en el trayecto. También tendrán algunos retos interesantes para que los codifiques. Estos son proyectos que querrás mostrarle a tus amigos. ¿Listo? ¡Vamonos!. Plan del curso Unidad 0: Reglas del Código Conducir la camper El Mapa de ruta y los destinos Los aparatos electrónicos de Nikki Unidad 1: La programación se encuentra en todo Los programas en la vida cotidiana Page 2 of 322
Lo que hacen los programadores ¿Qué es un programa? Opciones de lenguajes de programación Sintaxis del lenguaje de programación Sintaxis de Visual Basic.Net
Unidad 2: Visual Studio .Net e IDE Visual Studio.Net Iniciar Visual Studio Usar Visual Studio.Net Página de inicio de IDE Mi perfil Crear un proyecto nuevo Ventana de proyecto nuevo Ventana de diseño de formato Ventana de cuadro de herramientas Mover y redimensionar un botón Agregar un código al botón Crear tu solución Creación exitosa Creación fallida Iniciar tu programa Desplegar el cuadro de mensaje La ventana de salida Guardar tu proyecto Archivos y carpetas de solución para Visual Basic Unidad 3: Pseudo-código Tipos de instrucciones de código ¿Qué es un pseudo-código? Comentarios de código Pseudo-código como comentario Sangría y espacio en blanco Unidad 4: Formatos Aplicaciones de Windows Diseño del formato Uso del formato Propiedades del formato Controles y propiedades del formato Desencadenar eventos Cuadros de mensaje Unidad 5: Propiedades y métodos Propiedades Dónde inicia el código Leer propiedades con el código Configurar propiedades con el código Page 3 of 322
IntelliSense y notación de punto Métodos Llamar métodos con el código
Unidad 6: Asignaciones y variables Asignaciones Tipos Tipos primitivos ¿Qué son las variables? ¿Por qué usar variables? Declarar variables ¿Dónde declaras las variables? Inicializar las variables Usar las variables Entenderse con las variables Otros tipos de variables Unidad 7: Operadores Operadores Operadores aritméticos Operadores de cadena El operador Not Usar operadores en instrucciones de asignación Operadores aritméticos en acción El operador Not y los operadores concatenados en acción Depuración del código Entrar al código Unidad 8: If sencillo Tomar decisiones Lógica booleana Operadores booleanos Operadores de comparación Ejecutar un código condicional Instrucciones If…Then Más de una instrucción If…Then Más de una oración condicional Opción múltiple Operadores booleanos en el código Unidad 9: If complejo Ampliación de If….Then Instrucciones If…Then anidados Condiciones contrarias If…Then…Else Entrar a una instrucción If…Then…Else Instrucciones If en C# y J# Operadores booleanos y operadores de comparación en C# y J# Page 4 of 322
Unidad 10: Bucles finitos Bucles For…Next Entrar a un bucle For…Next Mil problemas de suma Sacar la basura Bucles dentro de bucles Letrero de salida Instrucciones For…Next en C# y J# Unidad 11: Bucles infinitos Bucles infinitos Bucle Do While… Entrar al Bucle Do While… Bucle Do Until… Bucles en acción Formatos de bucle alternos Salir de ‘Do’ Bucles indefinidos en J# y C# Unidad 12: Funciones ¿Qué son las subs? Escribir tus propias subs Usar tu propia sub Escribir y usar subs con argumentos Escribir tus propias funciones Usar tus propias funciones Subs y funciones integradas Algunas funciones de cadena Generador de números aleatorios Funciones de conversión Subrutinas y funciones en J# y
Page 5 of 322
Lista de tareas de Reglas del Código No. de tarea 01 Ejercicio 01 01 01 02 02 02
Ejercicio 02 Reto Ejercicio 01 Ejercicio 02 Reto
03 Ejercicio 01 03 Ejercicio 02 03 Reto
04 Ejercicio 01 04 Ejercicio 02 04 Reto 05 Ejercicio 01 05 Ejercicio 02 05 06 06 06
Reto Ejercicio 01 Ejercicio 02 Reto
Titulo de la tarea
Descripción Mencionar por lo menos cuatro ejemplos que Computación demuestran que las computadoras forman parte cotidiana de la vida cotidiana. El uso de Internet o de otros recursos determina Trabajos de el salario inicial de los profesionistas de la informática tecnología de la información en tu localidad. Ninguno No hay Reto para la unidad 01. Hello World Escribir un programa llamado Hello World. Mi nombre es Escribir un programa llamado Mi Nombre es. Comida rápida Desplegar imágenes de comida rápida. Empacar para el Escribir un seudo código para describir los pasos viaje requeridos para empacar para tu viaje. Escribir un seudo código para describir los pasos Lavar los trastes requeridos para lavar los trastes Contar el número de peces de cada color, luego Pecera calcular que porcentaje representa cada uno. Crear un formato y ajustar las propiedades del objeto colocado en el formato usando la ventana. Propiedades para que puedas aprender Quién es quién más acerca de tus compañeros de viaje. El precio de la Ayudar a los clientes a evaluar el precio de su Pizza pizza. Gato Completar el programa para el juego Gato. Arco iris Crear un arco iris. Medidor de Ajustar un control de desplazamiento usando el viaje código. Ocultar y mostrar imágenes de flores usando el Flores código. Pedazo de Pi Mostrar el numero Pi en diferentes formatos. Rana saltarina Escribir un programa de juego de Rana saltarina. Bicho Encontrar 10 errores en un programa.
Page 6 of 322
No. de tarea 07 Ejercicio 01 07 Ejercicio 02 07 Reto 08 Ejercicio 01 08 Ejercicio 02
Titulo de la tarea
Descripción
Costo de la gasolina Depurar un programa Calculadora de volumen
Calcular el costo de la gasolina. Usar herramientas de depuración de Visual Studio.NET. Calcular el volumen de un cubo y de una esfera.
Ideas de regalos Programación de una encuesta de aptitudes
Contar conejos
Sugerir ideas de regalo para los vendedores. Escribir un programa de encuesta para ayudar a otros alumnos a decidir si deben tomar un curso de programación. Escribir un juego de Arcade donde se trate de hacer clic sobre un objetivo móvil. Calcular las puntuaciones de cuatro jugadores de golf. Juego del cuadrado mágico. Construir un cuadro mágico de 3 x 3. Dejar que la computadora lance una moneda varias veces. ¿Cuánto podría crecer la población de conejos si vivieran para siempre?
Números primos Roth IRA
Calcular números primos. Escribir una calculadora de Roth IRA.
Tiro al blanco
Tratar de dar en el blanco en tiro con arco. Contar lanzamientos de moneda idénticos consecutivos. Calcular un promedio de calificaciones. Convertir las unidades canadienses de medida a americanas y viceversa. Con base en el número de vocales en la pregunta, generar una respuesta aleatoria. El gato persigue al ratón hasta que lo atrapa o el ratón escapa.
08 Reto 09 Ejercicio 01 09 Ejercicio 02
Zap Puntuaciones de golf
09 10 01 10 02 10 11 01 11 02 11 12 01 12 02
Lanzar la moneda
Reto Ejercicio
Cuadrado mágico
Ejercicio Reto Ejercicio Ejercicio Reto Ejercicio
En seguida Calculadora GPA Canadiense
Ejercicio
12 Reto
Adivinador El gato y el ratón
Page 7 of 322
Seguimiento de tareas del estudiante de Reglas de código No. de tarea 01 01 01 02 01 02 01 02 02 02 03 01 03 02 03 04 01 04 02 04 05 01 05 02 05 06 01 06 02 06 07 01 07 02 07 08 01 08 02 08 09 01
Ejercicio Ejercicio Exámen Ejercicio Ejercicio Exámen Ejercicio Ejercicio Exámen Ejercicio Ejercicio Exámen Ejercicio Ejercicio Exámen Ejercicio Ejercicio Exámen Ejercicio Ejercicio
Titulo de la tarea
Fecha compromiso
Computación cotidiana Trabaja? Ninguno Hello World MiNombreEs Comida rápida Empacar para el viaje Lavar los trastes Pecera Quién es quién El precio de la pizza Gato Arco iris Medidor de viaje Flores Pedazo de Pi Salta rana Splat Gas Cost Depurar un programa
Exámen Ejercicio
Calculadora de volumen
Ejercicio
Encuesta de aptitudes de programación Zap
Exámen Ejercicio
Ideas para regalos
Resultados de golf Page 8 of 322
Completado
09 02 09 10 01 10 02 10 11 01 11 02 11 12 01 12 02 12
Ejercicio Exámen Ejercicio Ejercicio Exámen Ejercicio Ejercicio Exámen Ejercicio Ejercicio Exámen
Cuadrado mágico Volado Contar conejos Números primos Roth IRA Blanco En fila Calculadora GPA Conversión canadiense El adivino El gato y el ratón
Page 9 of 322
Temas en el camino a Everywhere: Los programas en la vida cotidiana Lo que hacen los programadores ¿Qué es un programa? Opciones de lenguajes de programación Sintaxis del lenguaje de programación Sintaxis de Visual Basic.NET Llegada a Everywhere
Unidad 1 - Everywhere, Wisconsin
Pág. 10 de 322
Los programas en la vida cotidiana Voy a dejar que Cliff maneje primero para que tengamos la oportunidad de conocernos mejor. ¿Ya te conté que mi padrastro es programador? Solo que no escribe programas para las PC, sino unos que se usan para control de robots en una planta que fabrica máquinas de escribir. ¡Una vez tuvo un error en su programa y los robots hicieron todas estas máquinas de escribir sin las teclas de las letras Q, W, E, R, T e Y! Es sorprendente ver cuantas cosas a nuestro alrededor contienen programas y es todavía más sorprendente cuantas se han diseñado o probado por medio de programas de computadora. No sólo las calculadoras, los robots y las computadoras usan programas. Muchos aparatos y artículos de entretenimiento e incluso coches son programables.
Unidad 1 - Everywhere, Wisconsin
Pág. 11 de 322
Código integrado Diseño habilitado por código
Diseño de la carrocería
Aire acondicionado
Costuras de las llantas
Esta camper, por ejemplo. Contiene como un millón de elementos que probablemente fueron diseñados en una computadora. Es probable que la forma aerodinámica fue modelada y probada en un túnel de viento simulado en una computadora. Los asientos, la cocina y las camas probablemente fueron diseñados en una computadora y después ajustados en un modelo tridimensional de la camper. Y tal vez, algunas de las partes fueron hechas por robots controlados por computadora como los de la fábrica de mi padrastro. Horno de micro ondas
Hay mucho más, como el sistema de posicionamiento global, el microondas, y el estéreo en la camper. Todos se pueden programar y ajustar por medio de un control remoto. Esto significa que contienen programas para controlar lo que efectúan cuando oprimes un botón. Estos programas están permanentemente grabados en los procesadores que contienen las tarjetas electrónicas, pero primero alguien tuvo que escribirlos. Además, piensa en la música electrónica que compone Dirk. Independientemente de que sea buena o mala, toda se realiza en una computadora. Incluso escribió un programa para guardar todas las versiones de sus letras cursis para que no se le olvide ninguna de sus grandes ideas. Lo bueno acerca de los programas es que se usan para resolver todo tipo de problemas y llevar a cabo toda clase de actividades. En la actualidad casi todos usan una computadora en el trabajo y en el hogar para escribir cartas, hacer hojas de cálculo y bases de datos, y llevar el control de una cuenta bancaria. Casi todos los negocios usan programas para llevar un registro de sus movimientos financieros, sus clientes y de todo lo que fabrican o compran. Muchos de los programas se usan para almacenar y recuperar información, filtrarla, y presentarla de diferentes maneras. Y muchos se escriben para investigar problemas difíciles como la inteligencia artificial, el calentamiento global, y la genética. Además hay todo tipo de programas especializados que se usan para diseñar partes, dibujar gráficos, o para juegos; es probable que para cualquier cosa que se te ocurre existe un programa. Y ni hablar de los programas de Internet, en línea, y de realidad virtual. Lo increíble es que hay personas que escriben programas sólo por diversión. Un profesor que tenía en la preparatoria escribió un programa que creaba automáticamente nuestra tarea de matemáticas. Su hermana escribió un programa que compone versos haiku y que los traduce al islandés. Leí un artículo de un hombre que construyó un robot Lego y lo programó para que Unidad 1 - Everywhere, Wisconsin
Pág. 12 de 322
armara el cubo de Rubik. No se por qué lo hizo, tal vez fue sólo para demostrarse que lo podía hacer. Quiero programar video juegos tridimensionales en línea e interactivos, o tal vez escribir programas de actuaría para analizar las estadísticas de mortalidad para una compañía de seguros.
Recomendación para el profesor Lego y el cubo de Rubik http://jpbrown.i8.com/cubesolver.html
Creo que tengo un ejercicio sobre programación de computadora en mi organizador personal.
Computación cotidiana En este ejercicio explorarás algunas formas en las que la programación es parte de la vida cotidiana. El archivo 01_proveit01_files tiene instrucciones para este ejercicio y cualquier archivo de apoyo que necesites.
01 Ejercicio 01 cotidiana
Computación
Enlista por lo menos 4 ejemplos que demuestran que las computadoras forman parte de la vida cotidiana. No uses los ejemplos que se encuentran en este curso, piensa en aplicaciones diferentes.
Lo que hacen los programadores Sabes, mucha gente cree que los programadores son esos chicos y chicas ‘cerebritos’ que se Unidad 1 - Everywhere, Wisconsin
Como cuando empecé con mi grupo, tuve que decidir qué instrumentos usar, quiénes serían los músicos, qué canciones y en Pág.tocaríamos 13 de 322 dónde tocaríamos.
sientan frente a la computadora y tecleen códigos mientras comen pizza fría y toman refrescos cafeínados toda la noche. Aunque ese es la profesión de mis sueños, hay mucho más que eso detrás de un programador. Los buenos programas no se hacen de la noche a la mañana. Se requiere mucha planeación cuidadosa y trabajo de diseño para crear un programa de computación que haga lo que se supone que debe hacer. También debe ser fácil de modificar, libre de errores y simple de usar. Para grandes proyectos de programación puede haber equipos de cientos de programadores bien capacitados, organizados y administrados. Entonces, aunque escribir un código es parte del trabajo de un programador, él o ella también hacen muchas otras cosas:
deciden qué hará el programa; diseñan la interfase del usuario; deciden qué lenguaje de programación usar; diseñan la arquitectura del programa y como funcionarán en conjunto partes del mismo; establecen los estilos de codificación y de diseño; deciden quién escribirá el código para las partes del programa; administran el programa de desarrollo y llevan un registro de cuanto tiempo les toma escribir el código; capacitan a los programadores para usar herramientas de desarrollo; configuran y administran las computadoras y la red que usan los programadores; ¡¡¡Escriben el código!!! documentan el código; diseñan la base de datos para almacenar información que el programa necesita o crea; manejan el diseño artístico y de gráficos; manejan la entrada de información a la base de datos; prueban el código para asegurarse de que funcione; empacan el código para que poder instalarlo en la computadora o servidor del usuario; toman decisiones respecto a características nuevas; Recomendación para el resuelvan los errores encontrados por los usuarios; profesor capacitan a los usuarios para usar el programa; escriben la documentación y material de Los elementos en la lista capacitación para el programa. representan múltiples opciones
Como puedes ver, "escribir el código" es sólo una de las muchas actividades de los programadores. Mi organizador personal tiene otro ejercicio acerca de los trabajos de programación.
Unidad 1 - Everywhere, Wisconsin
de carrera. Algunos son sobresalientes para escribir códigos; otros, para decidir qué código tiene que escribirse. Algunos son mejores para probar que el código escrito funcione perfectamente. Y algunos administran los esfuerzos de todos estos profesionales de la computación.
Pág. 14 de 322
Trabajos de programación En este ejercicio investigarás los salarios iniciales de los programadores y otros profesionales de la computación. El archivo 01_proveit02_files tiene instrucciones para este ejercicio y cualquier archivo de apoyo que necesites.
01 Ejercicio 02
Trabajos de informática
Con la ayuda del Internet u otros recursos, determina el salario inicial para los profesionistas de informática en tu área. Compara los salarios para varias categorías tales como Programador, Analista de Sistemas, Desarrollador de Páginas Web, etc.
¿Qué es un programa? Un programa de computación está conformado por líneas de código escritas en un lenguaje de programación parecido al inglés. Para escribir un programa puedes escoger entre varios lenguajes de diferentes capacidades según las necesidades de tu programa. Una vez que termines de escribir el programa, este se compila en un lenguaje que la computadora puede comprender y ejecutar. Puedes escribir muchos tipos diferentes de programas con el mismo lenguaje de programación. Por ejemplo, puedes escribir un programa que juegue gato, otro que muestre imagines en forma de presentación, y otro que muestre la orbita de un cohete alrededor de un planeta y todo con el mismo lenguaje. El código que tú escribes es lo que distingue a estos programas y les da su funcionalidad. Dicho código define lo que el programa hará. Determina que ocurre cuando oprimas un botón o seleccionas un elemento de una lista. Tu código representa la "inteligencia" del programa; define cómo éste tomará Unidad 1 - Everywhere, Wisconsin
Pág. 15 de 322
decisiones, cuántas veces realizará una acción, y qué cálculos realizará. Puedes escribir un código para hacer cálculos matemáticos, escribir texto, responder a acciones del usuario, recabar datos, o desplegar información. Escribir un código puede ser un reto pero también es divertido y satisfactorio. Cuando aprendes un lenguaje de programación, aprendes un medio nuevo que te permite expresar tu creatividad, explorar, resolver problemas, y jugar. Es muy similar al trabajo con otros medios como el barro, el metal o las matemáticas.
Unidad 1 - Everywhere, Wisconsin
Pág. 16 de 322
Opciones de lenguaje de programación Mi abuelo podía hablar cuatro idiomas: japonés, español, swahili e inglés, además de un quinto idioma cuando se volvió totalmente loco. Los lenguajes de computación son muy parecidos a los idiomas hablados. Puede que no suenen o se vean exactamente igual pero esencialmente se usan para lo mismo: dar instrucciones a una computadora sobre como resolver un problema.
Ve esto: En Canadá hay dos idiomas oficiales, pero en los dos esta señal dice ¡DETENGA SU COCHE!
¿Sabías que se están creando nuevos lenguajes de programación todo el tiempo? Durante los pasados 50 años se han desarrollado muchos lenguajes diferentes. Al igual que los idiomas hablados, algunos ya no se usan. Otros han evolucionado en su forma y han estado en uso durante 20 ó 30 años. Un lenguaje de programación nuevo se crea tomando las mejores características de uno o más lenguajes existentes, y combinándolas. Los lenguajes de programación de hoy reflejan los avances en el equipo de computación y la evolución de los programas anteriores. Los primeros lenguajes de programación tenían que programarse en términos que la computadora pudiera comprender. Esto significaba escribir programas usando solamente unos y ceros. ¡Qué tedioso! Finalmente se crearon programas llamados compiladores que convertían el código, escrito en un idioma que se parece más al inglés, en los unos y ceros que la computadora podía comprender. Casi todos los lenguajes de programación modernos son compilados. Es decir, están escritos en lenguajes de programación similares al inglés y que después se compilan o cambian a un código que la máquina puede leer. En el transcurso de los años se han creado diferentes lenguajes de programación para resolver problemas específicos. FORTRAN, por ejemplo, fue desarrollado para resolver problemas numéricos y realizar cálculos. Las siglas FORTRAN quieren decir ‘lenguaje de traducción de fórmulas’ (FORmula TRANslating language). COBOL quiere decir ‘lenguaje común orientado a los negocios’ (Common Business-Oriented Language) y fue desarrollado primordialmente para aplicaciones de negocios en las que tenían que procesarse grandes cantidades de datos no numéricos. LISP, que quiere
Unidad 1 - Everywhere, Wisconsin
Pág. 17 de 322
decir ‘Lenguaje de procesamiento de lista’ (ListProcessing language) fue desarrollado para investigar la inteligencia artificial. Los lenguajes nuevos han evolucionado desde ese entonces con una o más ventajas primarias en comparación con los anteriores. A continuación algunos ejemplos:
C: código rápido y eficiente Java: independencia de plataforma BASIC: facilidad de uso Visual Basic: diseño de interfase de usuario por medio de formatos Perl: manipulación de texto
Cuando inicias un proyecto nuevo de programación tienes que definir qué lenguaje vas a usar. ¿Tiene el lenguaje la funcionalidad que necesitas? ¿Es de fácil programación? ¿Ya lo conoces? ¿Ya está instalado en tu computadora? Mi lenguaje favorito es Visual Basic.NET. Es poderoso y fácil de usar. Se que a Cliff le gusta Visual Basic.NET también. A Jen le gusta el programa J# (se pronuncia J sharp), el cual tiene sus raíces en el lenguaje de programación Java. Dirk está aprendiendo C# (se pronuncia C sharp) el cual tiene sus orígenes en los lenguajes de programación C y C++. En este viaje aprenderás Visual Basic.NET, pero Jen y Dirk también te enseñarán algunas cosas acerca de J# and C#. No está de más conocer más que un solo lenguaje de programación!
Unidad 1 - Everywhere, Wisconsin
Pág. 18 de 322
Sintaxis del lenguaje de programación Si viajas por el mundo tal vez necesites encontrar a alguien que hable inglés. En cualquier idioma hay un modo de preguntar "¿habla inglés?" Por ejemplo: Inglés: Do you speak English? Alemán: Sprechen Sie Englisch? Español: ¿Habla inglés? Portugués: Você fala inglês? Lenguaje de niños: ¿Ha-fa bla-fas in-fin gle-fes? En los ejemplos anteriores, no sólo las palabras son diferentes, su organización es distinta también: los sustantivos, verbos y objetos no tienen el mismo orden. La palabras y su organización constituyen la sintaxis del lenguaje. La sintaxis define las reglas para hacer una oración correcta en el idioma dado. Al igual que los idiomas, cada lenguaje de programación tiene su propia sintaxis, la cual es el vocabulario, gramática, elección de palabras y estructura que lo constituye. La sintaxis define las reglas para escribir líneas correctas de código y combinar estas líneas en un programa válido. Por ejemplo, todos los lenguajes de programación modernos pueden ejecutar una orden "If..then..else". Una tal orden es una forma en la que un programa puede elegir basándose en la información que tiene. Mira, déjame enseñarte algunos ejemplos de códigos en mi computadora portátil que demuestran la sintaxis de las órdenes "If..then..else" en Visual Basic.NET, C# y J#. En este punto no te preocupes por su significado, o por comprender el código, sólo busca las similitudes y diferencias que definen su sintaxis.
Unidad 1 - Everywhere, Wisconsin
Pág. 19 de 322
En Visual Basic. NET If x >5 Then MessageBox.Show (“Soy mayor que 5”) Else MessageBox.Show (“No soy mayor que 5”) End If.
En C#: If (x >5) { MessageBox.Show (“Soy mayor que 5”); } Else { MessageBox.Show (“No soy mayor que 5”); }
En J#: If (x >5) { MessageBox.Show (“Soy mayor que 5”); } Else { MessageBox.Show (“No soy mayor que 5”); } ¿Te diste cuenta de que J# y C# usan el…
Unidad 1 - Everywhere, Wisconsin
Pág. 20 de 322
Aprender un lenguaje de programación consiste en aprender su sintaxis, estructura, y reglas. Tienes que aprender la puntuación del lenguaje, así como qué palabras son "reservadas", porque sólo se usan como comandos para el lenguaje. Las palabras reservadas, también conocidas como palabras clave, tienen un significado especial y por lo general una funcionalidad especial asociada a ellas: le dicen al programa qué hacer. Por ejemplo, las palabras "If" y "Else" son palabras reservadas en la mayoría de los lenguajes de programación. Se usan para crear órdenes de código que toman decisiones. Cuando aprendes un lenguaje de programación debes aprender su sintaxis y también su funcionalidad y capacidades. Recuerda que no todos los lenguajes pueden hacer todo. Sin embargo, todos los que son modernos tienen características y funcionalidad en común que siempre podemos esperar encontrar.
Unidad 1 - Everywhere, Wisconsin
Pág. 21 de 322
Sintaxis de Visual Basic.NET Visual Basic.NET es un lenguaje poderoso y fácil de aprender. Conforme aprendes a programar en Visual Basic.NET, conocerás las palabras reservadas, la estructura, y los objetos fundamentales que constituyen el lenguaje. Primero tienes que comprender algunos de los elementos básicos de la sintaxis del lenguaje. Hice una breve lista de algunos elementos clave de la sintaxis en Visual Basic.NET:
Las líneas de código no tienen un indicador de fin de línea como un punto y coma (;) Las líneas de comentario inician con un apóstrofe (') Las llaves { y } no se usan para contener bloques de código Visual Basic.NET NO diferencia entre mayúsculas y minúsculas. Escribir MyCase es exactamente lo mismo que escribir myCase o MYCASE.
Oye, Dirk, ¿Cuáles son algunas de las diferencias sintácticas clave en C#? Bueno, en C# cada línea termina con un punto y coma. Además, los bloques de código están contenidos entre llaves, { y }. Una línea de comentario inicia con dos diagonales // y C# sí diferencia entre mayúsculas y minúsculas. MyCase es diferente de myCase y de MYCASE. Oigan, no se olviden de J#. J# y C# comparten la misma sintaxis básica. Por ejemplo, J# usa un punto y coma para indicar el fin de una línea de código y los bloques de código se ponen entre llaves. Las líneas de comentario en J# inician con // y J# también diferencia entre mayúsculas y minúsculas.
Recomendación para el profesor Visual Basic es un buen primer lenguaje para aprender ya que es más benévolo que la mayoría. El tamaño de la letra no importa. Las líneas de código no necesitan marcarse de manera especial. La estructura es más bien intuitiva.
Unidad 1 - Everywhere, Wisconsin
Pág. 22 de 322
Llegada a Everywhere Bienvenido a Everywhere, Wisconsin. Tienes que contestar la pequeña prueba para prepararte para el Comité del rally. En el curso impreso la prueba no es interactiva. En la versión en línea de este curso la computadora revisa las respuestas. Aquí la tienes. ¡Suerte!
Una diferencia importante entre los diferentes lenguajes de programación es:
Hay miles de lenguajes de computación distintos porque:
Sintaxis
Los científicos de la computación tienen que mantenerse ocupados.
Traducción
Cada uno se ha creado para resolver problemas específicos.
Ortografía Cada marca de computadora requiere un lenguaje único
¿Qué hace la compilación de un programa?
Por lo general un lenguaje de computadora está constituido por:
Reune datos en un agrupamiento interno
Tablas de traducción
Asocia objetos de formato con la página del código.
Líneas de código escritas en un lenguaje de programación similar al inglés
Convierte el texto escrito por un programador en un código que la computadora puede entender
Símbolos matemáticos creados por computadoras
Unidad 1 - Everywhere, Wisconsin
Pág. 23 de 322
Temas en el camino a Ideal: Visual Studio.NET y el IDE Iniciar Visual Studio Crear un proyecto nuevo Ventana de proyecto nuevo Ventana de diseño de formato Ventana de cuadro de herramientas Agregar un código a un botón Construir tu solución Iniciar tu programa Archivos y carpetas de soluciones
Unidad 2 - Ideal, Illinois
Pág. 24 de 322
Visual Studio.NET y el IDE Hola, ¿cómo te va hasta ahora? ¿Pudiste contestar todas las preguntas del comité del rally? Puede ser que sean más difíciles conforme avancemos, pero para ese entonces también sabrás más. Estoy seguro de que no tendrás problemas. Nikki va a manejar por un rato para que yo te pueda explicar algunas cosas durante el camino hacia nuestro siguiente emocionante destino: Ideal, Illinois. Durante el trayecto te voy a enseñar lo que necesitarás para pasar la prueba de manejo de IDE. El IDE son las siglas en inglés de ‘Ambiente de Desarrollo Integrado’ proporcionado por Visual Studio.NET de Microsoft. Lo usarás para escribir tu primer programa de Visual Basic.NET. Puedes usarlo para escribir programas en otros lenguajes también. Después de que aprendas sobre IDE y pases el examen de manejo, estarás listo para manejar también y ayudarnos con las pruebas del rally. Después de todo, no queremos que alguien más maneje todo el tiempo ¿o sí? No sería muy divertido.
Unidad 2 - Ideal, Illinois
Pág. 25 de 322
Visual Studio.NET ¿Sabías que es posible escribir un código de computación usando un simple procesador de palabras como el bloc de notas o Microsoft Word? Eso, claro, si quieres hacer las cosas de la manera más complicada. En su lugar, la mayoría de los programadores como Nikki y yo usamos herramientas de software para ayudarnos a desarrollar programas con más facilidad. Y eso es lo que vas a hacer tú también, usando Visual Studio.NET de Microsoft. Visual Studio.NET Microsoft es una herramienta de desarrollo que ayuda a escribir programas en varios lenguajes de programación .NET diferentes. Por ejemplo, cuando agregues un botón a un formato, Visual Studio.NET automáticamente agrega algún código para este botón. Es obvio que Visual Studio.NET no puede escribir todo el código; después de todo, no sabe lo que se supone que tu programa va a hacer. Sin embargo, puede reducir la cantidad de código que tienes que escribir y el tiempo necesario para hacerlo. Visual Studio.NET te facilita la vida también de otros modos. Automáticamente colorea tu código según su significado. Por ejemplo, los comentarios siempre están en verde y las palabras claves en azul. Incluso los errores en sintaxis están subrayados con una línea roja ondulante. Esto te ayuda a identificar y corregir errores antes de que operes tu código. Visual Studio.NET te ayuda a mantener tu código organizado al almacenarlo en archivos independientes. De esta manera puedes dividir tu código en unidades funcionales. Por ejemplo, un archive independiente será usado para almacenar el código para cada uno de tus formatos. Visual Studio.NET facilita la compilación y operación de tu programa con sólo hacer clic unas cuantas veces en el ratón. Puedes usar sus funciones auxiliares de depuración para buscar errores en tu programa y desplegar información mientras se ejecuta tu programa. Lo mejor de todo es que, Visual Studio.NET te permite desarrollar programas en muchos lenguajes distintos, conocidos como los lenguajes .NET. Usas la misma interfaz familiar de Visual Studio.NET para cada uno. Los lenguajes .NET incluidos en Visual Studio.NET son:
Visual Basic.NET C# (se pronuncia C sharp) J# (se pronuncia J sharp) C++ ( se pronuncia C plus plus) ASP.NET (creación de páginas web)
Unidad 2 - Ideal, Illinois
Pág. 26 de 322
Durante nuestro viaje a nuestro próximo destino, te mostraré como usar Visual Studio.NET para escribir tu primer programa. Usarás Visual Basic.NET como tu lenguaje de programación primario durante este viaje, pero también te mostraremos ejemplos del código C# y J# a lo largo del camino. Prepárate porque vas a escribir tu primer programa.
Iniciar Visual Studio Para iniciar Visual Studio: 1. 2. 3. 4.
Oprime el botón de inicio Selecciona Programas Selecciona la carpeta Microsoft Visual Studio.Net 2003 Selecciona la aplicación Microsoft Visual Studio.Net 2003
También hay un icono en mi Escritorio que yo puedo usar para abrir Visual Studio. El icono es una forma rápida de iniciar Visual Studio.NET, sólo haz doble clic sobre él. Recomendación para el profesor Recuerda, la ubicación de Visual Studio puede variar de una computadora a otra. Si estás usando una computadora en la escuela o la computadora de alguien más, Visual Studio puede encontrarse en un lugar distinto. Pregúntale a tu profesor o al representante del departamento de cómputo, si no puedes encontrar el modo de abrir Visual Studio.NET.
Unidad 2 - Ideal, Illinois
Asegúrese de mostrarles a sus alumnos el método que se usa en su escuela para ubicar y abrir Visual Studio. Los alumnos sin experiencia previa tal vez tengan dificultad al inicio para navegar hacia la ubicación correcta.
Pág. 27 de 322
Usar Visual Studio.NET Ahora te voy a explicar los pasos para crear tu primer programa Visual Basic.NET usar Visual Studio.NET. Ya debes tener Visual Studio.NET abierto. Sigue los pasos conforme te los indico. No sólo lee; ¡haz lo que estás leyendo!
Página de inicio IDE La primera página que debes ver cuando abres Visual Studio.NET es la página de inicio. La pestaña Proyectos es seleccionada de manera predeterminada. Por lo general, verías una lista de Proyectos existentes. Dado que probablemente esta sea la primera vez que usas Visual Studio.NET, no habrá nada en la lista.
La pestaña Mi perfil es donde puedes personalizar Visual Studio.NET para que se adapte a tu estilo de trabajo.
1. Haz clic en la pestaña Mi perfil.
Unidad 2 - Ideal, Illinois
Pág. 28 de 322
Mi Perfil Mi perfil es donde puedes seleccionar qué tipo de desarrollador eres y personalizar tu configuración de estudio de Visual Studio.NET. 1. Selecciona Desarrollador Visual Studio de la lista desplegable de perfiles. 2. Revisa que las configuraciones predeterminadas sean Esquema de teclado: [Ajuste por omisión] Configuración de la ventana: Visual Studio Predeterm. Filtro de ayuda: sin filtro 3. Selecciona Ayuda interna para la configuración Mostrar ayuda. 4. Selecciona Mostrar página de inicio para la configuración de Al inicio. 5. Selecciona la pestaña Proyectos en la parte superior de la Página de inicio para continuar.
Unidad 2 - Ideal, Illinois
Pág. 29 de 322
Crear un proyecto nuevo Ahora que haz terminado la configuración del ambiente Visual Studio.NET, exploraremos la pestaña de Proyectos. Puedes iniciar un nuevo proyecto o abrir un proyecto existente desde esta pestaña. Para abrir un proyecto existente debes hacer clic en el botón Abrir proyecto en la parte inferior de la pantalla. Después de que creas tu primer proyecto, aparecerá en la lista de proyectos existentes. Para abrir un proyecto existente, selecciona el proyecto de la lista y haz clic en Abrir proyecto. Te voy a enseñar a crear un proyecto nuevo para el programa Hello World; después escribiremos el programa. Hello World es el primer programa típico que escribe la mayoría de los programadores. El objetivo es crear un recuadro de mensaje que diga "Hello World."
1. Haz clic en el botón Proyecto nuevo para crear un proyecto nuevo. Se abre la ventana de diálogo Proyecto nuevo.
Unidad 2 - Ideal, Illinois
Pág. 30 de 322
Ventana de Proyecto nuevo En la pestaña Proyecto nuevo verás que en el panel superior izquierdo llamado Tipo de proyectos, hay varios tipos de proyectos disponibles en Visual Studio.NET. Te presentaremos algunos de ellos en breve. El programa Hello World será una aplicación de Windows (las reglas del código sólo usarán aplicaciones de Windows, así es que ni siquiera hay que preocuparse por las otras plantillas). En esta pestaña no sólo seleccionarás el tipo de proyecto y la plantilla sino también los nombres de proyecto y las ubicaciones de archivos para los proyectos guardados. 1. Selecciona Proyectos de Visual Basic como Tipo de proyecto. 2. Selecciona Aplicaciones de Windows como plantilla. 3. Teclea el nombre HelloWorld para el proyecto (los nombres de archivo no llevan espacios). 4. Selecciona una ubicación para guardar tu proyecto. 5. Haz clic en el botón ‘OK’. El proyecto nuevo se abrirá, desplegando un formato llamado Form1.vb en el lado izquierdo de la pantalla y el Explorador de soluciones en el lado derecho. Súper, ¿no?
Unidad 2 - Ideal, Illinois
Se creará un directorio llamado “HelloWorld” (que elegiste para guardar tu archivo) y el proyecto HelloWorld quedará guardado en el directorio.
Pág. 31 de 322
Recomendación para el profesor Cada escuela tiene sus propias reglas acerca de la ubicación para guardar los proyectos de los alumnos. Sea muy específico al describir las reglas de la escuela. Cada proyecto debe quedarse en su propia carpeta.
Unidad 2 - Ideal, Illinois
Pág. 32 de 322
Ventana de diseño de formato La mayoría de las veces construirás aplicaciones de Windows que inician con un formato. Éstos son la parte del programa que el usuario ve. Podrás poner objetos en el formato, como botones y cajas de texto. Cuando se hace clic en un botón, el código se ejecutará para realizar el proceso requerido para ese botón. Un formato en blanco puede verse en la ventana principal en el lado izquierdo de la pantalla. Esta se llama ventana de diseño de formato (llamada Form1.vb [Design]). El Explorador de soluciones puede verse en el lado derecho. El formato no tiene botones o cuadros de texto en este punto. Después habrá tiempo para ponerse creativo con los formatos. Por ahora, déjame mostrarte un par de cosas sencillas que hacer.
Unidad 2 - Ideal, Illinois
Pág. 33 de 322
Puedes cerrar cualquier ventana en Visual Studio.NET al hacer clicwindow en la “x”inubicada close any en la Studio.NET esquina by superior Visual derecha dethe la ventana. clicking on "X" located Puedes abrir right la mayoría in the upper corner de las ventanas de Visual of the window. You can Studio.NET, en Ver’ en el open most Visual Menú principal y seleccionar Studio.NET la ventana windows apropiadaby del going to View on the Main menú.
Menu and selecting the
appropriate window from Puedes ocultarla de manera the menu. al hacer clic en el automática icono de tachuela ubicado en la derecha Youesquina can autohide anyde la ventana. ocultas una window Cuando by clicking on the ventana de manera thumbtack (pushpin) icon automática, esta desaparece located in the upper right y aparecerá una barra de corner of the window. tareas en la orilla derecha de When you autohide a la pantalla que muestra window, itpara disappears. A pestañas la ventana taskbarSiwill appearelalong oculta. mueves cursor the right edge of the sobre la pestaña, la ventana screenaparecerá. showing tabs for oculta La función de auto-ocultar una the hidden window.esIf you excelente de ahorrar move the manera cursor over the espacio pantalla si tienes tab, the de hidden window una ventana con un will slide into view. código mayor. Si pulsas el icono de Autohide is a great way to tachuela otra vez, se save screen space so you deshabilitará el comando have a larger code auto-ocultar. window. If you click the pushpin icon again, autohide will be disabled.
Recomendación para el profesor Aliente a los alumnos a usar el comando auto-ocultar en todas las ventanas. Esto hace visible una mayor área de la página del código y reduce los errores de codificación.
Unidad 2 - Ideal, Illinois
Pág. 34 de 322
Ventana de Cuadro de herramientas Gran parte de las funciones de Visual Studio.NET se accesa al abrir y cerrar diferentes ventanas. Por ejemplo, para colocar botones y cuadros de texto en el formato, abrirás la ventana de Cuadro de herramientas, la cual muestra todos los elementos diferentes que puedes colocar en el formato, tales como botones, botones de radio, cuadros de texto, listas desplegables, etc. Aquí es donde crearás formatos que se verán geniales.
1. Selecciona Ver de la barra del Menú principal 2. Selecciona Cuadro de herramientas y abre esta ventana. 3. Haz doble clic en Botón para añadir un botón al formato (El botón que añadiste puede estar escondido detrás del Cuadro de herramientas; la moveremos en un instante)
Unidad 2 - Ideal, Illinois
Pág. 35 de 322
Mover y redimensionar un botón Ahora que haz añadido un botón a un formato, te voy a enseñar qué fácil es mover o redimensionarlo.
1. Haz clic en el botón y arrástralo al centro del formato. 2. Mueve el cursor sobre uno de los cuadros blancos (estos son los puntos de redimensionamiento). 3. Mientras mantienes presionado el botón izquierdo del ratón, arrastra el punto de redimensionamiento para estirar o reducir el tamaño del botón.
Fue fácil ¿no? Ahora vas a añadir el código al botón para hacer que haga algo cuando el usuario lo oprime.
Unidad 2 - Ideal, Illinois
Pág. 36 de 322
Agregar un código al botón Cuando creamos el botón, Visual Studio.NET automáticamente agrega varias líneas de código a la ventana de código. Ve el siguiente ejemplo. Public Class Form1 Inherits System.Windows.Forms.Form Window Forms Designer Generated Code Private Sub Botón 1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button 1.Click End Sub
Recomendación para el profesor Muchos ejemplos de código en el curso son una sola línea en Visual Basic pero ésta se ajusta cuando se despliega en el curso. Para continuar una línea de código en una segunda línea en Visual Basic, finaliza la primera línea con un espacio seguido por un guión bajo ( _ ).
Parece que está en chino, ¿verdad? Pero no te preocupes, te ayudaremos a traducir conforme avancemos. Por ahora sólo encuentra el ‘Button 1_Click’. Esta parte del código se usa cuando el usuario hace clic en el botón. Si hacemos clic ahora, no pasa nada. Necesitamos decirle a nuestra aplicación qué hacer cuando se oprima el botón. De eso trata la programación. ¿Estás listo para comenzar?
1. Después de hacer doble clic en ‘Button 1’, se abre la ventana de código 2. Haz clic en la línea en blanco arriba de ‘End Sub’ 3. Introduce la siguiente línea de código exactamente como se muestra a continuación
Unidad 2 - Ideal, Illinois
Pág. 37 de 322
MessageBox.Show("Hello, World.") Esta línea de código se ejecuta cuando el usuario oprima el botón en el formato.
Crear tu solución Es hora de crear tu solución. Aquí es donde el código que tú y Visual Studio.NET han escrito se compila en instrucciones que la computadora puede comprender.
1. Selecciona Crear de la barra del Menú principal 2. Selecciona Crear solución del menú desplegable
Recomendación para el profesor Las versiones de Visual Basic anteriores a .NET no requerían que se seleccione Crear antes de la ejecución. .NET siempre requiere que se seleccione Crear.
Unidad 2 - Ideal, Illinois
Pág. 38 de 322
Creación exitosa Una vez que termina la operación Crear, la ventana de salida se abre y despliega un mensaje, el cual indica si tu creación fue exitosa o si hubo errores. Si la creación fue exitosa, verás el siguiente mensaje en la ventana de salida: ------ Build started: Project: HelloWorld, Debug .NET -----Preparing resources... Updating references... Performing main compilation... Building satellite assemblies...
Configuration:
---------------------- Done ---------------------Build: 1 succeeded, 0 failed, 0 skipped
Unidad 2 - Ideal, Illinois
Pág. 39 de 322
Creación fallida Supongamos que en vez de introducir MessageBox, cometiste un error e introdujiste mMessageBox. La ventana de salida arroja un mensaje de error que se ve así.
------ Build started: Project: HelloWorld, Configuration: Debug .NET -----Preparing resources... Updating references... Performing main compilation... C:\VBNETProjects\HelloWorld\Form1.vb(59) : error BC30451: Name 'mMessageBox' is not declared. Building satellite assemblies... ---------------------- Done ---------------------Build: 0 succeeded, 1 failed, 0 skipped
Cuando puede, Visual Basic también subraya la ubicación del error. Al hacer doble clic en el mensaje de error, el cursor señala el error. Además se abre una ventana de lista de tareas que te mostrará los errores específicos. Si tu creación contiene errores, regresa y revisa que hayas escrito la línea de código para el botón exactamente como se muestra. Después sigue los pasos para crear la solución que te mostramos antes.
Unidad 2 - Ideal, Illinois
Pág. 40 de 322
Iniciar tu programa Tu programa ahora está compilado sin errores. Estás a punto de convertirte en un programador. Llegó la hora de ejecutar tu primer programa. 1. Selecciona Depurar de la barra de Menú principal 2. Selecciona Iniciar del menú desplegable. (Tu formato se despliega y en el se encuentra el botón que agregaste.) 3. Haz clic en el botón. Ya sabía que lo harías.
Recomendación para el profesor Cuando se selecciona ‘Iniciar’, Visual Basic efectúa Crear antes de la ejecución. Si hay errores de creación, el sistema pregunta al alumno si quiere ejecutar el programa de todos modos. La respuesta correcta es NO. Si el alumno intenta ejecutar el programa, no podrá hacerlo.
Unidad 2 - Ideal, Illinois
Pág. 41 de 322
Desplegar el cuadro de mensaje Cuando haces clic en el botón, un cuadro de mensaje aparece desplegando el texto "Hello World". Después de todo, eso es lo que le dijiste a tu programa que hiciera. ¡Felicidades! Haz ejecutado tu primer programa de Visual Basic.NET. 1. Haz clic en el botón OK para cerrar el cuadro de mensaje. (El cuadro de mensaje desaparece pero tu formato sigue ahí. Puedes hacer clic en el botón otra vez para mostrar el cuadro de mensaje por segunda vez.) 2. Haz clic en la "X" en el extremo superior derecho de tu formato para cerrar tu programa.
Unidad 2 - Ideal, Illinois
Pág. 42 de 322
La ventana de salida Una vez que el programa finaliza, se muestra la información de depuración. Tienes que avanzar hacia abajo para ver toda la información.
Recomendación para el profesor Los alumnos principiantes no usarán la información de depuración. Se menciona aquí para que no se sorprendan cuando vean esta información.
Guardar tu proyecto Es hora de guardar tu proyecto. Esta parte es como cualquier otro programa de Windows. 1. Escoge Seleccionar archivo de la Barra de Menú principal 2. Selecciona Guardar todo del Menú desplegable 3. Para salir de Visual Studio.NET, selecciona Archivo de la Barra de Menú principal 4. Selecciona Salir del Menú desplegable Puedes intentarlo tú solo. Tengo un Prove-It en mi organizador personal para ti. Recomendación para el profesor Visual Basic guardará automáticamente el proyecto cada vez que se efectúe Unidad Crear. 2 - Ideal, Illinois
Pág. 43 de 322
02 Ejercicio 01
Hello World
Escribe un programa llamado HelloWorld. Repite los pasos mostrados en el curso. Despliega un cuadro de mensaje que diga “Hello, World”.
Unidad 2 - Ideal, Illinois
Hello World Escribe un programa llamado Hello World. Despliega un cuadro de mensaje que diga “Hello World”. El archivo 02_proveit01_files contiene las instrucciones para este Ejercicio y cualquier archivo de apoyo que pudieras necesitar.
Pág. 44 de 322
Archivos y carpetas de solución Cuando creas una aplicación de Visual Basic, se crean muchos archivos. Necesitas saber qué archivos se han creado y lo que significan algunos de ellos. Ve la imagen de la pantalla a continuación para ver una organización típica de archivos y carpetas.
Con Windows Explorer navega a la ubicación donde almacenaste tu proyecto HelloWorld. Expande esta carpeta y veras que se ha creado una carpeta para el proyecto llamado HelloWorld. Expande la carpeta HelloWorld para ver los archivos creados por Visual Studio.NET para tu proyecto. Debes ver los siguientes archivos: HelloWorld.sln es el archivo de solución que mantiene un registro de todas las otras partes de la solución. Una solución puede hacer referencia a múltiples proyectos, pero tu solución HelloWorld contiene sólo uno llamado HelloWorld.vbproj. El archivo HelloWorld.sln es al que se hace referencia cuando abres un proyecto existente. El archivo Form1.vb contiene el formato y su código asociado. Haz doble clic en la carpeta papelera para expandirla. Contiene el archivo de código ejecutable Visual Basic llamado HelloWorld.exe. Este archivo puede ejecutarse en otra computadora aún si no dispone de Visual Studio.NET.
Unidad 2 - Ideal, Illinois
Para ejecutar un archivo ejecutable en otra computadora, ésa debe contar con ciertos archivos que permitirán la ejecución de la aplicación .NET. Estos archivos ya están instalados en las computadoras con el sistema operativo Windows XP. Pueden descargarse e instalarse en computadoras con otros sistemas operativos.
Pág. 45 de 322
Llegada a Ideal Ahora que haz terminado de leer el Manual del conductor de IDE, es hora de tomar el examen de manejo. Haz el Ejercicio “MyNameIs” para demostrar que estás listo para salir a circular.
02 Ejercicio 02 MiNombreEs Escribe un programa llamado MiNombreEs. Este programa es muy similar al programa HelloWorld mostrado en el curso. Crea un nuevo proyecto llamado MiNombreEs. En la página de Inicio selecciona el botón Proyecto nuevo. Tal vez necesites cerrar la ventana de salida para verlo. O, puedes ir a Archivo / Nuevo / Proyecto. En Form1 coloca un botón y un cuadro de texto. Deja los nombres del botón y del cuadro como sus nombres predeterminados.
Hello World Escribe un programa llamado MiNombreEs. Despliega un cuadro de mensaje que diga “mi nombre es”. El archivo 02_proveit02_files contiene las instrucciones para este ejercicio y cualquier archivo de apoyo que pudieras necesitar.
Haz doble clic en Botón 1 para abrir la página del código. En el subprograma Botón 1_Click, introduce esta línea del código: TextBox1.Text = "tu nombre" Reemplaza tu nombre con tu nombre. Asegúrate de que aparezcan las comillas. Crea e inicia tu programa. Una vez que funcione correctamente, muéstraselo a tu instructor. Unidad 2 - Ideal, Illinois
Pág. 46 de 322
02 Reto
Comida rápida
Ya que al parecer nos estamos deteniendo en cada restaurante de comida rápida que vemos, vamos a divertirnos con un programa. Ya sabes como agregar un botón a un formato, crear una aplicación y ejecutarla. La plantilla 02_challenge_template es una aplicación completa, salvo que necesita cuatro botones llamados Botón 1 – Botón 4.
Comida rápida En este reto debes agregar botones a un formato de comida rápida. El archivo 02_challenge_files contiene las instrucciones para este trabajo y todos los archivos de apoyo que necesites.
Recomendación para el profesor El alumno añade botones a un programa existente donde éstos se quitaron, pero donde el programa en sí está completo.
El formato debe verse como sigue una vez que hayas agregado los botones. Crea la aplicación. Después escoge Depurar / Iniciar sin depurar, o puedes escoger Depurar / Iniciar. ¿Qué ocurre cuando haces clic en cada botón? Cuando funcione correctamente, muéstraselo a tu instructor.
Unidad 2 - Ideal, Illinois
Pág. 47 de 322
Extensión / Desviación En una unidad posterior te mostraremos como cambiar el texto en un botón. ¿Puedes descubrir tú solo como cambiar el texto del botón usando la ventana Propiedades? Bienvenido a Ideal. Aquí hay otra pequeña prueba para prepararte para el comité del rally. En el curso impreso la prueba no es interactiva. En la versión en línea de este curso la computadora revisa las respuestas. Aquí la tienes. ¡Suerte!
Unidad 2 - Ideal, Illinois
Pág. 48 de 322
En Visual Studio, las soluciones pueden contener uno o más proyectos; éstos pueden contener formatos, y los formatos objetos y códigos. Cierto Falso
¿Qué ventana se usa para colocar objetos en un formato? Propiedades Cuadro de herramientas Salida
Unidad 2 - Ideal, Illinois
Antes de ejecutar un programa debes:
Crear Depurar Explorar recursos
Visual Studio puede personalizarse para cada usuario en: La página de proyectos La página de recursos en línea La página de perfil
Pág. 49 de 322
Temas en el camino a Pseudo: Tipos de instrucciones de código ¿Qué es un pseudo código? Comentarios de código Pseudo código como comentario Sangría y espacio en blanco Llegada a Pseudo
Unidad 03 – Pseudo, Pennsylvania
Pág. 50 de 322
Tipos de órdenes de código Cliff hizo un excelente trabajo al presentar Visual Studio.NET. ¿No te pareció fantástico escribir tu primer programa? Se que no haz escrito muchos códigos todavía, pero lo harás más adelante. Por ahora quiero mostrarte como planear y organizar tu programa incluso antes de que comiences a escribir el código. ¿Sabías que puedes escribir un programa antes de que sepas un lenguaje de computación? Muchos programadores escriben sus programas en un "pseudo código" primero y después los traducen a un lenguaje real de programación. Esto les ayuda a determinar el flujo lógico del programa y lo que tienen que hacer. El pseudo código consiste de instrucciones sencillas escritas en inglés (o tu idioma nativo) las cuales explican lo que el programa tiene que hacer. Una vez escrito el pseudo código es más fácil escribir el código real. El pseudo código brinda una estructura o lineamiento para el programa. Antes de que te enseñe como usar un pseudo código, quiero mostrarte algunos de los tipos de instrucciones básicas que constituyen un programa de computación. Todos los lenguajes de programación usan los mismos tipos de instrucción de código básicos, aunque la sintaxis para escribirlos sea diferente en cada lenguaje. Cuando se combina, estas instrucciones básicas te permiten escribir programas muy complejos. ¿Recuerdas la línea de código que introdujiste para el botón en el programa Hello World? Era: MessageBox.Show("Hello, World.") Este código despliega información para el usuario. Es un tipo de instrucción básica conocido como alerta, mensaje, o instrucción. Todos los lenguajes de programación tienen un tipo de instrucción básica similar usado para brindarle información al usuario, aunque la sintaxis dependerá del lenguaje. Hay otros tipos de instrucciones fundamentales que usan todos los lenguajes de programación. Unidad 03 – Pseudo, Pennsylvania
Pág. 51 de 322
A continuación te muestro unos ejemplos. Las variables son usadas para almacenar información tales como números o texto. Representan información o resultados de cálculos. Las instrucciones de asignación establecen lo que está almacenado en una variable. El valor puede ser un número, texto, otra variable o un valor calculado. Las instrucciones de comparación se usan para comparar un valor o variable con un número, u otro valor o variable. Hacen una pregunta cuya respuesta siempre es "cierto" o "falso". Las instrucciones de decisión se usan para elegir. El proceso de decisión se basa en una comparación. Si la respuesta a la comparación es "cierto", entonces se realiza la primera elección, si es "falso", la segunda. Las instrucciones de decisión a menudo se denominan instrucciones de ramificación porque el flujo del programa puede ir ya sea en una dirección o en otra.
¡Es fantástico estar aquí esta noche! Le decía al encargado de seguridad en la entrada que si estoy en la ciudad y es noche de aficionados me encontrarán en este escenario.
Las instrucciones de bucle se usan para hacer cosas una y otra vez. Las instrucciones de bucle reducen la cantidad de código que tienes que escribir cuando tu programa está realizando la misma acción repetidamente. Conforme aprendas a programar, aprenderás a usar estas instrucciones básicas para que tu programa haga lo que tú quieres que haga. Para poder usar Visual Basic.NET (o cualquier otro lenguaje de programación) tu trabajo será aprender la sintaxis particular requerida por el lenguaje de programación para escribir y usar estas instrucciones básicas.
Unidad 03 – Pseudo, Pennsylvania
Pág. 52 de 322
¿Que es un pseudo código? Como ya lo dije antes, los programadores a menudo escriben sus programas en pseudo código. La palabra pseudo significa "en lugar de". Por ejemplo, algunos autores usan un pseudónimo en lugar de su nombre real. Un pseudo código no está escrito en un lenguaje real de programación sino que consiste de instrucciones sencillas que describen lo que el programa va a hacer. Podrías escribir un pseudo código en inglés, español, latín o cualquier otro idioma, porque una computadora ni siquiera tiene que leer o comprender tu pseudo código. Éste tiene que ser claro para que tú y otros programadores lo entiendan, porque brinda el marco o instrucciones para escribir el código real de tu programa. Tu pseudo código se escribe usando los diferentes tipos de instrucciones básicas: asignación, comparación, decisión, etc.
Una gran ventaja de diseñar tu propio programa usando un pseudo código es que no tienes que preocuparte acerca de qué lenguaje de programación vas a usar. Primero, encuentra la lógica y estructura usando el pseudo código. Después "traduce" tu pseudo código al lenguaje de programación que quieres usar.
Recomendación para el profesor El concepto principal en esta unidad es que el programador debe planear qué código escribir antes de iniciar la codificación en sí.
Unidad 03 – Pseudo, Pennsylvania
Pág. 53 de 322
Déjame darte un ejemplo de como usar el pseudo código para diseñar un programa. Digamos que quisiera escribir un programa para calcular el costo promedio de la gasolina en dólares por galón para todo nuestro viaje. ¿Qué tendría que hacer el programa? Para contestar esta pregunta, diseñaré el programa usando un pseudo código. Estos son los pasos que mi programa tendría que hacer para calcular el costo promedio de la gasolina durante nuestro viaje: 1. 2. 3. 4.
Sumar todo el dinero que pagamos para la gasolina y asignar este monto a una variable (total en dólares) Sumar el número total de galones de gasolina que usamos y asignar este monto a una segunda variable (total de galones) Tomar la primera variable (total en dólares) y dividirla entre la segunda variable (total de galones) y asignar el resultado a una tercera variable (dólares por galón). Desplegar un mensaje que da el costo promedio en dólares por galón.
El pseudo código claramente muestra lo que mi programa necesitará hacer. Ahora puedo escribir el código para realizar las tareas delineadas en el pseudo código.
Unidad 03 – Pseudo, Pennsylvania
Pág. 54 de 322
Déjame darte un ejemplo distinto con más pasos. Puede ser para un robot programable que cambia llantas. 1. 2. 3. 4.
5. 6. 7. 8. 9. 10. 11. 12.
Determinar que llanta está Poner llanta nueva. ponchada. (instrucción de Colocar de nuevo las tuercas y comparación) apretarlas. Determinar el tamaño de la llanta Colocar el tapón. ponchada (instrucción de comparación) Si hay una llanta de refacción del tamaño correcto entonces proceder; de otro modo, conseguir la refacción en una tienda de llantas. (instrucción de comparación y decisión) Levantar la camper usando un gato hidráulico. Quitar el tapón con un desarmador para exponer las tuercas. Quitar las tuercas usando una llave de cruz hasta haber removido todas. (instrucción de bucle) Remover la llanta ponchada. Colocar la llanta nueva. Colocar de nuevo y ajustar las tuercas usando una llave de cruz hasta que todas estén en su lugar. (instrucción de bucle) Colocar el tapón y ponerlo en su lugar con un martillo. Bajar el gato hidráulico.
En el pseudo código anterior hay una mezcla de instrucciones de asignación, de comparación, de decisión y de bucle. Por ejemplo, debes recordar el tamaño de la llanta ponchada; eso es una instrucción de asignación. Debes comparar el tamaño de la llanta ponchada con el tamaño de las llantas que tienes en existencia; esa es una instrucción de comparación. Una instrucción de decisión se usa con la instrucción de comparación. Si tienes una llanta del tamaño correcto, entonces procede, o visita la tienda de llantas. Colocar y apretar las tuercas puede verse como un proceso de bucle. Necesitas repetir cada proceso un número de veces hasta que se hayan quitado todas las tuercas y después hasta que se hayan apretado de nuevo.
Unidad 03 – Pseudo, Pennsylvania
Pág. 55 de 322
¿Por qué no intentas escribir un pseudo código usando mi organizador personal?
03 Ejercicio 01
Empacar para el viaje
Escribe en pseudo código los pasos requeridos para empacar lo que vas a llevar para tu viaje. Tu solución debe tener por lo menos siete pasos. Si cada paso comienza con una instrucción condicional, no entendiste el pseudo código.
Recomendación para el profesor Es sorprendente cuántos alumnos escriben un pseudo código que consiste en el 100% de instrucciones condicionales en vez de contener una mezcla de acciones y acciones condicionales. Un pseudo código sin instrucciones condicionales también es correcto.
Unidad 03 – Pseudo, Pennsylvania
Empacar para el viaje En este ejercicio deberás escribir un pseudo código explicando los pasos que sigues para empacar lo que vas a llevar para tu viaje El archivo 03_proveit01_files contiene las instrucciones para este ejercicio y cualquier archivo de apoyo que pudieras necesitar.
Pág. 56 de 322
Comentarios de código Los lenguajes de programación modernos, incluyendo Visual Studio.NET, permiten añadir comentarios a tu código. Éstos no se compilan como parte de tu programa y no se ejecutan cuando corres tu programa. Los comentarios son una forma útil de documentar tu código. Te ayudan a recordar lo que hace. También ayudan a otros programadores a comprenderlo. Siempre debes comentar tu código. Los comentarios son muestra de un buen programador. Un buen programador se toma el tiempo para comprender y documentar a fondo el código que ha escrito. Debes agregar comentarios a tu código cuando haces un cambio o añades una función. También haz comentarios sobre partes de tu código que son difíciles de comprender o que realizan un cálculo particularmente difícil o complejo.
Haz comentarios respecto a tu código pero no demasiados. Estas tratando de documentar tu código, no de escribir una novela.
Recomendación para el profesor Hay muchas razones para examinar el código en sí que los alumnos escriben en vez de ver simplemente el resultado de ejecutar el programa.
Incítelos a hacer comentarios
Motive buenos nombres de datos
Detecte si un alumno está copiando el código de otro. Copiar es fácil y es tentador. Busque similitudes de técnica, ya que puede aplicarse la función de Encontrarreemplazar a los nombres de variables para disfrazar el código.
Unidad 03 – Pseudo, Pennsylvania
Pág. 57 de 322
En Visual Basic.NET comenzarás una línea de comentario con una sola comilla ('). Cualquier línea de código que inicia con una sola comilla se interpreta como un comentario y no será compilada o ejecutada cuando se corre el programa. Lo siguiente es un ejemplo de un comentario en Visual Basic.NET
'Función agregada para calcular el promedio de millas por galón.
Oye, podrás usar una sola comilla para los comentarios en Visual Basic.NET, pero en C# y J#, usamos una doble diagonal (//) al principio de nuestras líneas de comentario. Por ejemplo,
//Función agregada para calcular el promedio de millas por galón.
Unidad 03 – Pseudo, Pennsylvania
Pág. 58 de 322
Los comentarios tienen otra función importante además de documentar tu código. Dado que no se ejecutan, pueden usarse como un método para evitar que ciertas líneas del código se ejecuten. Esto se llama "comentar para excluir” una línea de código. Comentar para excluir es un método que puede usarse para ayudarte a encontrar errores en tu código. Si tienes un error en tu programa, puedes marcar líneas o bloques completos de código como si fueran comentarios para evitar su ejecución hasta que el error deje de ocurrir. El último código que marcaste de esta manera es probablemente donde está ocurriendo el error. Es muy útil, ¿no? Ahora te daré un ejemplo de comentar para excluir un código. Date cuenta de que hay tres líneas de código. La segunda línea se comenta para excluirla poniendo una sola comilla en su inicio. Por lo tanto, no se ejecutará, pero la primera y tercera líneas sí.
MessageBox.Show("Soy de" 'MessageBox.Show("una ciudad fantástica llamada") MessageBox.Show("San Francisco.")
Unidad 03 – Pseudo, Pennsylvania
Pág. 59 de 322
Pseudo código como comentario Y ahora, un uso más del may versátil comentario. Estoy seguro que te mueres por saber. Puedes usar los comentarios para diseñar y arreglar tu programa. Es fácil. Ya escribiste el pseudo código que describe lo que tu código va a hacer. Aprovéchalo. Copia y pega tu pseudo código en tu programa y pon una sola comilla al principio de cada línea de tu pseudo código para convertirla en comentario. Ahora, escribe el código real de Visual Basic.NET bajo cada línea de pseudo código y tu programa no sólo estará completo, sino que también tendrá comentarios. Así de simple. He aquí un ejemplo basado en el pseudo código que escribí para calcular la cantidad promedio en dólares por galón de gasolina para nuestro viaje. Nota que el pseudo código proporciona los comentarios.
'Suma todo el dinero que pagamos de gasolina y asigna este monto a una variable (total de dólares) Dim totalDollars As Double totalDollars = 88.76 + 100.8 + 120.3 'suma el total de galones de gasolina que usamos y asigna este monto a una segunda variable (total de galones) Dim totalGallons As Double totalGallons = 49.3 + 55.5 + 46.3 'Toma la primera variable (total de dólares), divídela entre la segunda variable (total de galones) y asigna el resultado a una tercera variable (dólares por galón). Dim dollarsPerGallon As Double dollarsPerGallon = totalDollars / totalGallons 'Despliega un mensaje dando el costo promedio en dólares por galón. MessageBox.Show (dollarPerGallon)
Unidad 03 – Pseudo, Pennsylvania
Pág. 60 de 322
Sangrías y espacios en blanco Aunque tal vez no comprendas todo el código Visual Basic.NET, quiero que veas un par de cosas. En primer lugar puedes ver que todos los comentarios inician con una sola comilla. El color del texto del comentario es verde. Esto facilita distinguirlos del resto del código. En segundo lugar, fíjate que se agregó una línea en blanco antes de cada comentario. Esta línea en blanco divide los comentarios y el código en grupos de acuerdo a su función. Las líneas en blanco hacen la lógica de tu programa clara y tu programa, de fácil comprensión. En la mayoría de los casos Visual Basic.NET agrega automáticamente espacios en blanco y sangrías para hacer que tu código sea más fácil de leer. Sin embargo, puedes añadir espacios en blanco adicionales y sangrías como tú quieras. Mi opinión al respecto es que los uses para hacer tu código y comentarios más fáciles de leer. A Visual Basic.NET y a los demás lenguajes .NET no les importan las líneas en blanco o las sangrías. De hecho las ignoran cuando se compila el programa. Aunque a Visual Basic.NET no le importen, estas líneas en blanco y las sangrías les facilitan a los demás leer tu código. (Y tú eres la persona que más se beneficiará de ello.)
Por omisión, Visual Basic.NET aplica la sangría de manera automática a tus instrucciones de código basado en la sintaxis de tu código. Aunque puedes inhabilitar la aplicación automática de sangría, se recomienda que la uses.
Recomendación para el profesor Aliente el uso de líneas en blanco entre los bloques de código. Esto beneficia tanto al alumno como al profesor.
Unidad 03 – Pseudo, Pennsylvania
Pág. 61 de 322
03 Ejercicio 02
Lavar los trastes
Tengo otro Ejercicio en mi organizador personal para que lo resuelvas una vez que termines de lavar los trastes. La camper tiene una cocina que usamos cuando no hay un restaurante de sushi o comida Cajun cerca. Cocinar significa trastes sucios que lavar. La camper no tiene un lavavajillas automático. Escribe un pseudo código explicando los pasos necesarios para lavar los trastes. Si no tienes experiencia en el tema, tendrás que investigar al respecto.
Lavar los trastes En este ejercicio escribirás un pseudo-código explicando los pasos que sigues para lavar los trastes El archivo 03_proveit02_files contiene las instrucciones para este ejercicio y cualquier archivo de apoyo que pudieras necesitar.
Tu solución debe tener por lo menos siete pasos.
Unidad 03 – Pseudo, Pennsylvania
Pág. 62 de 322
03 Reto
Pecera
¿Ves la pecera en el aparador de esa tienda de mascotas? Rápido, antes de que cambie el semáforo. Contemos los peces de cada color para calcular el porcentaje que cada uno representa. En realidad, tengo el programa que hace eso. Encuentra el archivo FishTank.sln. Haz doble clic en él para abrir Visual Studio.NET. Ve a la página del código. Tu tarea es ver la página del código, y luego copiar todos los comentarios en un documento de Word o de texto.
La pecera En este Reto estudiarás los comentarios en el programa de la pecera El archivo 03_challenge_files contiene las instrucciones para este Reto y todos los archivos de apoyo que pudieras necesitar.
¿El resultado se ve como pseudo código? Entrégale la lista de comentarios a tu instructor.
Extensión / Desviación ¿Hay demasiados comentarios? ¿Demasiado pocos? ¿Por qué?
Unidad 03 – Pseudo, Pennsylvania
Pág. 63 de 322
Llegada a Pseudo Ya que estamos por llegar a Pseudo, PA tienes que contestar otra pequeña prueba del rally. Te puede ayudar contestar algunas de las preguntas que hará el comité del rally.
¿Cuál de las siguientes instrucciones se usa para algo varias veces?
Los errores de programa pueden evitarse al incluir lo siguiente en tu programa
Instrucción de comparación Instrucción de bucle Instrucción de asignación
Un pseudo-código es: Un lenguaje de programación Instrucciones sencillas que describen lo que el programa va a hacer
Comentarios Espaciado Ambos
Las instrucciones de decisión Involucran una comparación Realizan una acción cuando una comparación es cierta y otra falsa ambas
El nombre del autor
Unidad 03 – Pseudo, Pennsylvania
Pág. 64 de 322
Controles y propiedades de formato
Temas en el camino a Formsville: Aplicaciones de Windows Diseño del formato Uso del formato Propiedades del formato Controles y propiedades del formato Desencadenar eventos Cuadros de mensajes Entrando a Formsville
Unidad 04 – Formsville, Virginia
65
Controles y propiedades de formato
Aplicaciones de Windows Nos dirigimos a uno de mis lugares favoritos: ¡Formsville, Virginia! Antes, Formsville era un lugar muy aburrido. No había gran cosa que ver, pero ciertamente había mucho papeleo que hacer. Tenías que llenar un formato de 10 páginas tan sólo para pasar por el pueblo. En la actualidad, Formsville es fantástica. Hay tantas cosas emocionantes que hacer que podrías pasar un año entero en Formsville y no ver todo ni tampoco aburrirte. Para mí, Formsville es una de las principales razones por las que hice este viaje. ¿Te acuerdas que en el camino a Ideal usaste Visual Studio para escribir tu primer programa? Una de las primeras cosas que tuviste que decidir fue qué tipo de proyecto querías crear y escogiste una aplicación de Windows. Una aplicación de Windows es un tipo de programa que tiene una interfase de usuario que brinda un formato para que tu usuario interactúe con el programa. No todos los programas tienen una interfase de usuario, algunos se ejecutan una sola vez o en segundo plano y no requieren ninguna información de introducción del usuario una vez que se abrieron. Mmmmm. Es un tanto aburrido, si me preguntas.
Unidad 04 – Formsville, Virginia
66
Controles y propiedades de formato
Diseño del formato A mí me gustan los juegos, y eso significa acción interactiva, por lo que todos los programas que escribo son aplicaciones de Windows. Las aplicaciones de Windows usan formatos para que diseñes lo que el usuario ve y como interactúa con tu programa. Cuando creas por primera vez una aplicación de Visual Basic de Windows, Visual Studio agrega automáticamente un formato llamado Form1.vb a tu proyecto. Agregas "controles de formato" tales como botones, etiquetas, cuadros de texto, listas desplegables, etc. al formato para brindar formas para que el usuario interactúe con tu programa. Digamos que tu aplicación tiene un "formato de llanta ponchada" para introducir la información acerca de una llanta ponchada. He aquí una descripción de los controles que necesitas en el formato de llanta ponchada y lo que hacen: • • • • • •
En un cuadro de texto, introduce el número de las placas del coche. De un grupo de botones de selección selecciona el que indica qué llanta está ponchada (la frontal izquierda, la frontal derecha, la trasera izquierda, la trasera derecha) Utiliza una casilla para indicar que este es un "trabajo urgente" De un combobox selecciona el tamaño de la llanta Haz clic en un botón que busque en el inventario de las llantas En un cuadro de texto despliega una lista de las llantas disponibles incluyendo el fabricante, número de modelo, tamaño, número de inventario y costo.
Así que el formato de llanta ponchada tiene dos cuadros de texto, cuatro botones de selección, una lista desplegable, una casilla de verificación, y un botón. Puedes organizarlos en el formato en muchas formas diferentes y es ahí donde la diversión y al creatividad comienza.
Unidad 04 – Formsville, Virginia
67
Controles y propiedades de formato
Para mí, uno de los aspectos más agradables de la programación es el diseño del formato. Puedo decidir como se ve el formato y como se organizan sus controles. Los formatos son como un lienzo y sus controles la pintura. Pero tengo que ser cuidadoso también. Tengo que asegurarme de que el formato haga lo que se supone que tiene que hacer. Tiene que cumplir con los requisitos del programa. Tiene que ser fácil de usar y no puede tener elementos innecesarios. Cuando diseño un formato me pregunto continuamente: "¿Cuál es el objetivo de este formato? ¿Qué se supone que haga?" También tengo que asegurarme de que el formato se vea bien, como yo. No puede estar lleno de colores extravagantes o molestos efectos visuales tales como textos cintilantes que distraen al usuario. Y los controles del formato tienen que organizarse de forma clara y lógica. Tengo que pensar en el orden en que el usuario introducirá la información e interactuará con el programa. Algunas veces tengo que notificar al usuario que no ha introducido toda la información requerida, o que parte de la información es errónea. Cuando estás diseñando tus formatos, tienes que pensar como un usuario y tratar de imaginar todas las formas posibles en las que un usuario puede interactuar con tu programa. Finalmente, cuando diseñas un formato, tienes que recordar que todas las aplicaciones de Windows tienen una apariencia y un ambiente estándar. Un usuario espera que tu aplicación siga ciertos lineamientos de diseño y se comporte de cierta manera. Por ejemplo, la primera elección del menú de una aplicación de Windows es "Archivo", y bajo "Archivo" se encontrará una elección de menú llamada "Salir" que el usuario selecciona para cerrar el programa. Un usuario estaría muy sorprendido y molesto si hace clic en un botón llamado "Calcular resultados" y tu programa cambia el color del formato principal a rojo y traduce todos los títulos de los botones al latín.
Unidad 04 – Formsville, Virginia
68
Controles y propiedades de formato
Uso del formato
Recomendación para el profesor
Como sabes, cuando creas una nueva Form1.vb puede cambiarse de aplicación de Windows, Visual Studio agrega nombre con una denominación más automáticamente un formato llamado descriptiva. Esto es deseable para las aplicaciones complejas. Form1.vb. Este es el formato principal, o formato de inicio, de tu aplicación. Es lo primero que el usuario ve cuando abre tu programa. El formato principal es como un panel de control central. Desde aquí el usuario puede dirigirse a cualquier otra parte del tu programa. A menudo, una barra de menú o barra de herramientas se coloca a lo largo de la parte superior del formato principal para brindar medios de navegación a distintas partes de la aplicación. Desde el formato principal el usuario selecciona los elementos del menú o hace clic en los botones que abren otros formatos. Estos formatos pueden ser para introducir o visualizar información o interactuar con el programa de otras maneras. Por lo general tienen un propósito específico, como visualizar la puntuación del boliche, introducir una lista de efectos secundarios o elegir configuraciones de programa. Después de que el usuario ha introducido o visualizado la información en uno de estos formatos, éste se cierra por lo general y regresa al formato principal. Aunque Visual Studio solo agrega Form1, tú puedes añadir a tu proyecto cuantos formatos requieras. Otro tipo de formato importante es el cuadro de mensaje. En realidad tú ya usaste este formato. En el programa HelloWorld usaste un cuadro de mensaje para desplegar las palabras "Hello World". Se usa para desplegar tu mensaje en un formato de diálogo común. Una vez que el usuario leyó el mensaje, cierra el cuadro de mensaje haciendo clic en el botón OK. Comencemos. Vas a diseñar tu propio formato: un formato de llanta ponchada. Después agregarás algunos controles de formato y establecerás sus propiedades. Te mostraré como responden los controles de formato a acciones tales como hacer clic en un botón y volveremos a ver un formato integrado especial: nuestro viejo amigo el cuadro de mensajes. Recomendación para el profesor Los alumnos estarán tentados a leer el material pero no a llevar a cabo realmente lo que está descrito en el texto. Se beneficiarán más cuando hagan realmente lo que dice el texto del curso, lo cual indica, confirma y refuerza que comprendieron el material del curso.
Unidad 04 – Formsville, Virginia
69
Controles y propiedades de formato
Propiedades del formato Cuando creas una aplicación nueva de Windows, Form1 se agrega automáticamente. Tiene un tamaño predeterminado de 300 por 300 píxeles. ¿Cómo sabía el tamaño de Form1?, te preguntarás. Bueno, hay una manera sencilla de verificarlo usando la ventana de propiedades. Lo que es más, puedes cambiar el tamaño del formato en la misma ventana. Te mostraré los pasos. Primero, tienes que crear una nueva aplicación de Windows llamada LlantaPonchada. Una vez creado el proyecto, pulsa una vez en Form1 para seleccionarlo. Oprime la tecla F4 para abrir la ventana de propiedades. 1. Ya que Form1 está seleccionada en este momento, la ventana de propiedades despliega las de Form1. Nota que el rubro Texto es resaltado por omisión.
2. Recorre la lista de propiedades de Form1 y ubica el rubro Tamaño. Nota que éste tiene un signo de más junto a él, lo que indica que puede expandirse para desplegar otras propiedades.
Unidad 04 – Formsville, Virginia
70
Controles y propiedades de formato
3. Haz clic en el signo de más ubicado junto a Tamaño. Se despliegan las propiedades Altura y Ancho. La altura de Form1 es de 300 y el ancho es de 300. Vamos a cambiar el tamaño de Form1.
4. Haz doble clic en Ancho para resaltar el valor del rubro (300). Oprime la tecla de retroceso para borrar este valor.
5. Introduce el número 450. Oprime la tecla Enter ¡listo! Acabas de cambiar el ancho del formato. Nota cómo el ancho del formato cambió en cuanto oprimiste la tecla Enter. Nota también cómo el valor del ancho ubicado junto al rubro tamaño se estableció al mismo tiempo.
Unidad 04 – Formsville, Virginia
71
Controles y propiedades de formato
Ahora, establezcamos la propiedad Color de fondo de Form1. El color de fondo es el color del formato y de los controles que están en él. En la ventana de propiedades, ve a Color de fondo de Form1. Haz clic en la palabra Control. Un botón de flecha hacia abajo aparecerá a la derecha; haz clic en él. Se abre una ventana de paleta de colores. Selecciona la pestaña Personalizar. Haz doble clic en el cuadro de color que quieres seleccionar. A mí me gusta el amarillo brillante. ¡Guau, mira ese formato ahora! Crea tu solución y comienza tu proyecto. Ve el nuevo y extravagante color de fondo de tu formato. Además, fíjate que éste ahora se llama "Formato de llanta ponchada" y ya no tiene forma cuadrada sino rectangular.
Ahora ya sabes como cambiar las propiedades de un formato usando la ventana de propiedades. Recorre las propiedades de Form1 y familiarízate con la lista. Ésta ventana te permite cambiar las propiedades del formato en el momento de diseñarlo. Como verás, la ventana de propiedades no es sólo para formatos. También te permite cambiar las propiedades de los botones, cuadros de texto y otros controles del mismo.
Unidad 04 – Formsville, Virginia
72
Controles y propiedades de formato
Controles y propiedades de formato Ahora eres un experto en agregar botones a los formatos, ¡pero eso es un tanto repetitivo! Puedes ver que la ventana de caja de herramientas tiene muchas otros controles de formato disponibles. Ahora voy a mostrarte como usar algunos de los más comunes y como configurar sus propiedades mas útiles. Comencemos con los títulos.
Etiquetas El control de formato Etiqueta se usa para etiquetar controles individuales o grupos de controles en tu formato. También se usa comúnmente para dar instrucciones o indicar el orden para introducir información en el formato.
Recomendación para el profesor Todos los controles son objetos pero no todos los objetos son controles. Un objeto puede ser casi cualquier cosa menos una propiedad. Una propiedad es una característica de un objeto, como el ancho o el color.
Abre la ventana cuadro de herramientas y haz doble clic en el control de formato Etiqueta para agregar una etiqueta a tu formato. Arrástrala a una ubicación adecuada deteniendo el botón izquierdo del ratón y moviendo el ratón. Selecciona ‘Label1’ y abre la ventana de propiedades, la cual despliega una lista de propiedades del control de etiquetas. Mueva el cursor a Texto, haga doble clic para seleccionar el texto, y bórralo con la tecla de retroceso. Teclea las palabras Introducir licencia.
Cuadro de texto Un cuadro de texto puede usarse para desplegar información para el usuario o recabar información del usuario. En la ventana Cuadro de herramientas haz doble clic en el control de formato Cuadro de texto; se agrega ‘Textbox1’ a tu formato. Arrastra ‘Textbox1’ a la derecha de ‘Label1’, baja al rubro Texto, haz doble clic y presiona la tecla de retroceso para borrar el texto. Establece Sólo lectura a Falso para que el usuario pueda introducir texto en el cuadro de texto. Falso debe ser el valor predeterminado.
Unidad 04 – Formsville, Virginia
73
Controles y propiedades de formato
Los cuadros de texto a menudo se usan para desplegar una gran cantidad de información. Si el texto es realmente largo tal vez quieras agregar barras de desplazamiento al cuadro de texto. Agrega otro cuadro de texto a tu formato. Establece la propiedad Multilínea a Verdadero. Pon la altura a 100 píxeles y el ancho a 100 píxeles. Si Multilinea se establece a falso, no podrás cambiar la altura. Pon las barras de desplazamiento en Vertical y Solo lectura en verdadero para que el usuario no pueda introducir texto en el cuadro de texto.
Botones de selección Los botones de selección se usan para ofrecerle al usuario opciones. Éste puede seleccionar un solo botón de selección de un grupo de botones. Es como una prueba de opción múltiple. En la ventana Cuadro de herramientas haz doble clic en el control de formato de botón de selección. Se agrega el botón de selección RadioButton1 al formato. Selecciona RadioButton1 en tu formato, oprime el botón derecho del ratón y selecciona Copiar del menú. Haz clic en cualquier lugar en Form1, oprime el botón derecho del ratón, y selecciona Pegar del menú. Como por arte de magia, se agrega RadioButton2. Repite la operación Pegar para agregar RadioButton3 y RadioButton4. Selecciona RadioButton1 y abre la ventana de Propiedades. Escoge la propiedad Texto y cámbialo de "RadioButton1" a izquierdo, delantero. Cambia las propiedades de texto de los otros botones de selección: RadioButton2 a izquierdo, posterior, RadioButton3 derecho, delantero, RadioButton4 a "(derecho, posterior).
Casilla de verificación Un cuadro de texto puede usarse para desplegar información para el usuario o para recabar información del usuario. En la ventana Cuadro de herramientas, haz doble clic en control de formato de cuadro de texto. Se agrega Textbox1 a tu formato. Arrastra Textbox1 a la derecha de Label1. Selecciona la propiedad Texto, pulsa dos veces, y oprime la tecla de retroceso para borrar el texto. Establece Sólo lectura a Falso para que el usuario pueda introducir texto en el cuadro de texto. Falso debe ser el valor predeterminado. Las casillas de verificación también se usan ofrecerle al usuario opciones. Un usuario puede seleccionar una o más casillas de verificación de un grupo. En la ventana Cuadro de herramientas haz doble clic en el control de formato de casilla de verificación. Se agrega CheckBox1 al formato. Abre la ventana de propiedades y cambia Texto’ a "Rush Job" (trabajo urgente.)
Unidad 04 – Formsville, Virginia
74
Controles y propiedades de formato
ComboBox Una combobox brinda una lista de opciones para el usuario. Al seleccionar un elemento de la lista, éste se despliega en la combobox. En la ventana Cuadro de herramientas, haz doble clic en el control de formato Combobox; se agrega ComboBox1 al formato. Abre la ventana de Propiedades y cambia Texto a Escoge tamaño de llanta. Ve a elementos y haz clic en la palabra Colección. Un botón de elipsis (botón con tres puntos en él) aparece a la derecha. Haz clic en el botón ellipsis y se abre una ventana en donde puedes introducir una lista de elementos que aparecerán en la combobox. Debes colocar cada elemento de la lista en una línea independiente. Después de haber introducido un elemento, haz clic en Entrar para crear una línea nueva. En la ventana introduce 12, oprime Entrar, introduce 13, oprime Entrar, introduce 14; oprime Entrar e introduce 15. Haz clic en el botón ‘OK’ para cerrar la ventana.
Botones de comando Un cuadro de texto puede usarse para desplegar información para el usuario o para recabar información del mismo. En la ventana Cuadro de herramientas haz doble clic en el control de formato Cuadro de texto; se agrega Textbox1 a tu formato. Arrastra Textbox1 a la derecha de Label1. Ve a la propiedad Texto, haz doble clic y oprime la tecla de retroceso para borrar el texto. Pon Sólo lectura en Falso para que el usuario pueda introducir texto en el cuadro de texto. Falso debe de ser el valor predeterminado. Agrégale un botón a tu formato. Pon en la propiedad Texto "Conseguir llantas”. Cambia el color de fondo a rojo. Ve a la propiedad Fuente. Haz clic en Fuente para desplegar el botón de elipsis. Haz clic en el botón de elipsis para desplegar Paleta de fuentes. En la paleta de fuentes, cambia el estilo de fuente a Negrita. Haz clic en ‘OK’ para cerrar la paleta de fuentes. Crea tu solución y comienza el proyecto. Haz clic en los varios controles de formato que agregaste. ¿Qué ocurre cuando haces clic en la combobox? ¿Qué ocurre cuando escoges uno de los botones de selección, un botón de selección diferente, la casilla de verificación? Introduce algún texto en el cuadro de texto junto a la etiqueta Introducir licencia. Nota que el otro cuadro de texto es gris y que no puedes introducir texto en él. Haz clic en la "X" en el extremo superior derecho para cerrar tu aplicación. Unidad 04 – Formsville, Virginia
75
Controles y propiedades de formato
¿Te diste cuenta de que acabas de crear el "formato de llanta ponchada"? Durante el trayecto aprendiste varios tipos de controles de formato y sus propiedades. Para convertirlo en un formato de trabajo real, falta agregar el código Visual Basic.NET al formato y los controles de formato. Asegúrate de familiarizarte con las varias Recomendación para el propiedades de cada control de formato que profesor agregaste. Puedes reorganizar los controles de formato para hacer el formato más claro El alumno debe usar la ventana de y fácil de usar. Puedes agregar títulos que propiedades para revisar las propiedades de cada control. le digan al usuario para qué se utilizan los diferentes controles y dar instrucciones sobre qué tipo de información se necesita. ¿Cómo crees que deben organizarse los controles en el formato? ¿Qué control debe estar al principio y cuál al final?
Unidad 04 – Formsville, Virginia
76
Controles y propiedades de formato
Un formato y muchos objetos de formato tienen las mismas propiedades. Algunas de las más comunes son: • Color de fondo • Habilitado • Color frontal • Ubicación • Nombre • Tamaño (altura, ancho) • Texto • Visible
En J# y C# el diseño de formato es exactamente igual que en VB.NET. Se facilita gracias a Visual Studio.NET. Sólo abrimos el Cuadro de herramientas y arrastramos los controles de formato hacia el formato. Después abrimos la ventana de propiedades y las configuramos.
Unidad 04 – Formsville, Virginia
77
Controles y propiedades de formato
04 Ejercicio 01
Quién es quién
¿Te gustaría saber más acerca de la gente con la que estás viajando? En este punto del viaje debes demostrar que puedes crear un formato y ajustar las propiedades de los objetos colocados en el formato usando la ventana de propiedades. Si creas el formato correctamente, usando el código suministrado, aprenderás más acerca de tus compañeros de viaje. Puedes obtener el código de base 04_ proveit_01_template code (solución) de tu instructor o del sitio de internet del curso si es que lo estás tomando en línea. Coloca la solución en una carpeta individual. Debes tener dos carpetas (papelera, objetos) y 7 archivos.
Quién es quién Debes crear un formato para desplegar las biografías de Nikki, Cliff, Jen, Dirk y DJ Vu. Tendrás el código Visual Basic.NET. El archivo 04_proveit01_files contiene las instrucciones para este ejercicio y cualquier archivo de apoyo que pudieras necesitar. Haz clic en el botón Descargar para descargar el archivo.
Abre Visual Studio.NET, selecciona Proyecto existente, y navega al archivo llamado WhosWho.sln. Como alternativa puedes usar Mi PC para navegar a WhosWho.sln, haz doble clic en él, y el archivo WhosWho abrirá en Visual Studio.NET. Tu tarea es agregar objetos del cuadro de herramientas para que el formato se vea así. También deberás actualizar elementos en la ventana de propiedades como se describe a continuación.
Unidad 04 – Formsville, Virginia
78
Controles y propiedades de formato
1. Haz clic una vez en el formato para resaltarlo y después usa la ventana de propiedades para cambiar el nombre del formato a ‘Whoswho’. 2. Coloca dos casillas de verificación en el formato. Deja los nombres predeterminados como CheckBox1 y CheckBox2. Cambia las propiedades de Texto a Mostrar imagen y Mostrar biografía. 3. Coloca cinco botones de selección en el formato. Cambia las propiedades de texto a Nikki, Cliff, Dirk, Jen, y DJ Vu. Deja los nombres como RadioButton1 – RadioButton5. 4. Coloca un cuadro de texto llamado TextBox1. 5. Coloca un control de cuadro de imagen llamado PictureBox1. Usa la ventana de propiedades para configurar la altura a 160 y el ancho a 140. Estos se cambian al pulsar el signo de más en el tamaño. 6. Coloca un cuadro de texto llamado TextBox1. Debes hacer varios cambios en las propiedades. El orden en el que realizas los cambios es importante. Quieres que el recuadro sea lo suficientemente grande para mostrar varias líneas de biografía. Visual Basic no te permitirá ajustar la altura de un cuadro de texto hasta que colocas PRIMERO la propiedad Multilínea en Verdadero. Visual Basic sabe que si sólo tienes una línea no hay razón para tener un cuadro largo. Ahora ajusta la altura del cuadro a 120. Finalmente, coloca las barras de desplazamiento vertical en caso de que haya más líneas de biografía de las que pueden caber en el cuadro. 7. Coloca un botón de comando llamado Button1. Ajusta la propiedad Texto a Salir. Una vez que hayas creado tu formato, crea la solución. Si no hay errores de creación, escoge Depurar / Iniciar para ejecutar tu programa. Si tu programa funciona correctamente, muéstraselo a tu instructor. Recomendación para el profesor El alumno coloca objetos en un programa parcialmente terminado. No debe escribe ningún código.
Unidad 04 – Formsville, Virginia
79
Controles y propiedades de formato
Desencadenar acciones Las acciones son producidas por acciones del usuario. Por ejemplo, cuando un usuario oprima un botón, selecciona un elemento de un combobox, o cambia el texto en un cuadro de texto, se produce un evento. Los eventos del usuario al hacer clic una o dos veces en un control o mover el cursor hacia un control o fuera de él también generan eventos. Tú usas estos eventos para ejecutar el código VB.NET asociado con ellos. El código VB.NET produce que tu programa haga lo que se supone que tiene que hacer. Cuando escribiste la aplicación HelloWorld, hiciste doble clic en el botón y la ventana de código se abrió para que pudieras introducir el código en la acción Button1_Click. La acción Button1_Click es el evento predeterminado para un botón. Cada control de formato tiene un evento predeterminado. Cuando estás en modo de diseño, haz doble clic en el control de formato y la ventana de código se abrirá para el evento predeterminado. Por ejemplo:
Para un botón el evento predeterminado es hacer clic en él. Para un cuadro de texto el evento predeterminado es Cambio de texto. Para un botón de selección el evento predeterminado es marcado cambiado. Para una casilla de verificación , el evento predeterminado es Marcado cambiado) Para un ComboBox , el evento predeterminado es SelectedIndexChanged (Índice seleccionado cambiado.
Para mostrarte cómo funciona esto, les agregaremos algunos códigos a los eventos predeterminados de los controles de formato del "formato de llanta ponchada". El código mostrará un cuadro de mensaje que despliega el tipo de control que envió la acción. En modo de diseño, haz doble clic en cada uno de los controles de formato que agregaste. La ventana de código se abrirá para la acción predeterminada de cada control. Pega la siguiente línea de código en cada de sección de evento. MessageBox.Show(sender.GetType.Name) Crea tu solución e inicia tu proyecto. Haz clic en los varios elementos del formato, cambia el texto en el cuadro de texto y selecciona un elemento del ComboBox. Para cada control se desencadena el evento predeterminado y se despliega el cuadro de mensaje mostrando el tipo de control que envió el evento. Unidad 04 – Formsville, Virginia
80
Controles y propiedades de formato
Si el formato de llanta ponchada fuera parte de una aplicación real, agregarías un código a las acciones predeterminadas para brindarle la funcionalidad que requiere tu programa. Por ejemplo, cuando haces clic en el botón Conseguir las llantas, se desplegará en el cuadro de texto una lista de llantas disponibles.
Recomendación para el profesor Puede suceder que un alumno haga doble clic en el control equivocado, como una etiqueta, creando un código de evento por clic. Por lo general, cuando un alumno borra un código innecesario, no hay problema. A veces, VB crea un código además del código de evento por clic. Ese código también debe borrarse para completar un proceso de creación. Una creación marcará el error para que sea fácil de encontrar.
Unidad 04 – Formsville, Virginia
81
Controles y propiedades de formato
En C# y J# los controles de formato tienen los mismos eventos que en VB.NET. Esto se debe al marco .NET; y Visual Studio lo facilita.
Cuadros de mensaje A menudo descubrirás que tu programa necesita entablar un dialogo con el usuario. El programa tal vez le requiera enviar un mensaje, recabar su respuesta, o recibir la información de entrada del mismo. De hecho, estos tipos de dialogo son tan comunes que Visual Studio.NET incluye un cuadro de mensaje para manejarlos. En el programa que escribiste, usaste una línea de código que desplegó un cuadro de mensaje. MessageBox.Show("Hello, World.") El cuadro de mensaje es un tipo de formato que está integrado en VB.NET. No tienes que agregar un cuadro de mensaje a tu proyecto para usarlo. Todo lo que tienes que hacer es usar el método de Mostrar () e incluir el texto que quieres que el cuadro de mensaje muestre. La sintaxis para usar el cuadro de mensaje es: Nota que el mensaje que quieres desplegar debe estar incluido en comillas dobles. Oye, ve el código para un cuadro de mensaje en C#. Es el mismo que en J# también. { MessageBox.Show("Hello World"); }
Unidad 04 – Formsville, Virginia
82
Controles y propiedades de formato
Los controles de formato tienen más de un evento predeterminado. La mayoría de los controles de formato tienen una docena de eventos. Por ejemplo, el cuadro de texto tiene las siguientes acciones: Cambio de texto (evento predeterminado) Hacer clic Hacer doble clic Entrada de ratón Salida de ratón ¡y muchos más! Para ver todos los eventos para un control de formato, selecciona el control. Haz clic con el botón derecho y selecciona Ver código del menú emergente. La ventana de código se abre. En la parte superior de la misma ves dos listas desplegables. La que está en el lado derecho enlista todos los eventos de control. Los eventos en negritas tienen código asociado con ellos.
En C# y J# los controles de formato tienen los mismos eventos que en VB.NET. Esto se debe al marco .NET; y Visual Studio lo facilita.
Unidad 04 – Formsville, Virginia
83
Controles y propiedades de formato
Cuadros de mensajes A menudo descubrirás que tu programa requiere entablar un dialogo con el usuario. El programa tal vez tenga que enviar un mensaje al usuario, recabar la respuesta del usuario, o recibir la información de entrada del usuario. De hecho, estos tipos de dialogo son tan comunes que Visual Studio.NET incluye un objeto de cuadro de mensaje para manejarlos. En el primer programa que escribiste, usaste una línea de código que desplegó un cuadro de mensaje. MessageBox.Show("Hello, World.")
El cuadro de mensaje es un tipo de formato que está integrado en VB.NET. No tienes que agregarlo a tu proyecto para usarlo. Todo lo que tienes que hacer es usar el método de Mostrar() e incluir el texto que quieres que el cuadro de mensaje muestre. La sintaxis para usar el cuadro de mensaje es: MessageBox.Show("Tu mensaje")
Nota que el mensaje que quieres mostrar debe incluirse en comillas dobles. Oye, ve el código para un cuadro de mensaje en C#. Es el mismo que en J# también.{ MessageBox.Show("Hello World"); }
Recomendación para el profesor Un cuadro de mensaje tiene un formato más complejo que despliega botones que el usuario puede pulsar (Ej. si, no, cancelar). El programador puede revisar para ver que elección hizo el usuario. Los cuadros de mensaje complejo no se usan en este curso. Por ejemplo, Dim ElecciónUsuario como Integral ElecciónUsuario = MessageBox.Show ("pregunta aquí?", vbYesNo, "título aquí") Si ElecciónUsuario = vbYes entonces ‘ "si" código aquí o ‘ "no" código aquí Terminar condicional
Unidad 04 – Formsville, Virginia
84
Controles y propiedades de formato
Entrada a Formsville Buen trabajo en la creación de ese formato de llanta ponchada! Ahora ves porque me gusta tanto el diseño de formatos. Se que estás listo para Formsville. Intenta resolver estos Ejercicios, contesta la pequeña prueba, y estarás en camino de convertirte en un diseñador profesional de formatos.
04 Ejercicio 02
Precio de la Pizza
¿Qué sería un viaje en carretera sin pizza? Pizza palace en Formsville tiene un programa para ayudar a los clientes a evaluar el precio de su pizza. Apuesto a que puedes escribir el mismo programa. Bueno, puedes diseñar el formato de cualquier manera. Te daremos el código. Usa la plantilla 04_proveit02_template. Encuentra el archivo PizzaPrice.sln. Haz doble clic para abrir Visual Studio.
Precio de la pizza Crearás un formato para desplegar el precio de una pizza. Te damos el código de Visual Basic.NET. El archivo 04_proveit02_files tiene las instrucciones para este ejercicio y los archivos de apoyo que necesitarás. Haz clic en el botón ‘Download’ para descargar el archivo
Tu tarea es agregar objetos del Cuadro de herramientas para que el formato se vea así.
Necesitas tres botones de selección, dos títulos y 8 casillas de verificación. Unidad 04 – Formsville, Virginia
85
Controles y propiedades de formato
No te olvides de cambiar el texto en la parte superior del formato. El programa cambiará el texto de ‘label2’. Pizza Palace cobra $5 dólares por una pizza regular, $1 dólar más por cada carne adicional, y $0.50 centavos por cada ingrediente vegetal extra. Una pizza mediana cuesta 25% más y una grande 50% más que una regular. Una vez creado tu formato, crea la solución. Si no hay errores de creación, elige Depurar/iniciar para ejecutar tu programa. Si tu programa funciona correctamente, muéstraselo a tu instructor.
Extensión / desviación Muestra el precio formateado con apariencia de dinero. Visual Basic.NET tiene una función conveniente para esto. Coloque una variable dentro de la función FormatCurrency, como esta: FormatCurrency(miVariable) El resultado se ve como dinero. Agrega un cuadro de imagen con una imagen adecuada referente a la venta de pizza.
Recomendación para el profesor La función ‘FormatCurrency’ opera en el contexto de la variable, no en el objeto mismo. El aplicar ‘FormatCurrency’ a un cuadro de texto no significa que éste siempre estará formateado. Sólo significa que el elemento en el cuadro de texto es formateado al momento en que se aplica la función. Si el contenido del cuadro de texto es reemplazado posteriormente, el formato desaparece, salvo que se aplique nuevamente al momento de la actualización.
Unidad 04 – Formsville, Virginia
86
Controles y propiedades de formato
04 Reto
Gato
Ya que casi todos en el viaje usan la computadora portátil, los juegos de computadora son una forma de pasar el tiempo cuando el paisaje es aburrido. Tu misión, si decides aceptarla, es escribir el clásico juego de gato usando Visual Basic.NET. Dirk encontró el código para el programa en un portal de internet poco conocido pero falta el código del formato. Debes “pintar” el formato para que corresponda al código. Si haces eso correctamente, tendrás un juego de gato listo para jugar. Tu instructor te dará el código de base 04_challenge_template code o lo obtendrás en el portal de internet si estás tomando el curso en línea. Coloca la solución en una carpeta individual. Debes tener dos carpetas (papelera, objeto) y 7 archivos.
Gato En este Reto debes crear el formato usado por el programa ‘Gato’. El código está incluido. Cuando pintes el formato correctamente, tendrás listo el juego llamado gato. El archivo 04_challenge_files tiene las instrucciones para este Reto y los archivos de apoyo que necesitarás. Haz clic en el botón Descargar para descargar el archivo. Después haz doble clic en el archivo para accesar las instrucciones y archivos necesarios.
Abre Visual Studio.NET, selecciona Proyecto existente, y navega al archive llamado TicTacToe.sln. Otra opción, es usar Mi PC para navegar hasta TicTacToe.sln, hacer doble clic en ella, y Visual Studio se abrirá. Tu tarea es agregar objetos del Cuadro de herramientas para que el formato se vea así. También deberás actualizar elementos en la ventana de propiedades como se describe abajo. 1. Haz clic en el formato para enfocarlo. Cambia el título del formato a ‘Gato’. 2. Crea 9 títulos llamados Label1 a Label9. Organízalos para que Label1 se encuentre en el extremo superior izquierdo y Label9 esté en el extremo inferior
Unidad 04 – Formsville, Virginia
87
Controles y propiedades de formato
derecho. Puedes ahorrar mucho tiempo haciendo un título, configurando las propiedades, y después copiando y pegando el titulo 8 veces más. Haz estos cambios en todos ellos: Altura Ancho Fuente Color de fondo Texto
48 48 Microsoft Sans Serif Negrita 36 Puede quedarse como el gris predeterminado Puede quedarse como el predeterminado
3. Crea un título llamado Label10 a continuación del 9 anterior. Altura Ancho Fuente Color de fondo Texto
25 175 Microsoft Sans Serif Negrita 16 Puede quedarse como el predeterminado Puede quedarse como el predeterminado
Recomendación para el profesor Las letras ‘L’ grandes en la página previa representan la primera letra de un título que tiene una fuente grande.
4. Crea 3 títulos llamados ‘Label11’ al ‘Label13’. Cambia el texto a “X Gana” ó “O gana”, y “Empate”, como se muestra en el ejemplo. 5. Crea 3 cuadros de texto llamados ‘TextBox1’ al ‘TextBox3’. Colócalos junto a los títulos creados en el paso 4. 6. Crea un botón llamado Button1, como se muestra. Cambia este texto a “Jugar de nuevo”. 7. Crea un botón llamado Button2, como se muestra. Cambia su texto a “Fin”. Una vez que hayas creado tu formato, crea la solución. Si no hay errores de creación, elige Depurar/iniciar para ejecutar tu programa. Si tu programa funciona correctamente, muéstraselo a tu instructor.
Unidad 04 – Formsville, Virginia
88
Controles y propiedades de formato
Extension / Desviación
Cambia el color de fondo del formato. Cambia la fuente de todos los botones, cuadros de texto, etc. a una fuente más legible, tal como Microsoft Sans Serif negrita 10. ¿Puedes cambiar las fuentes de todos los elementos al primero hacer clic en los elementos mientras detienes la tecla CTRL? Agrega cuadros de texto para los nombres de los jugadores.
Llegada a Formsville Ya que estamos por llegar a Formsville, VA tienes que contestar otra pequeña prueba del rally. Te puede ayudar contestar algunas de las preguntas que hará el comité del rally. ¡suerte!
INTENTA LA PRUEBA DE NUEVO
¿Qué se usa en un formato para permitirle al usuario interactuar con tu programa?
¿Qué control puede usarse para desplegar y recabar información?
Controles
Cuadro de texto
Objetos
Etiqueta
Tanto controles como objetos
Botón de comando
Un formato y sus controles tienen: Profundidad Propiedades Ventanas hijas
Unidad 04 – Formsville, Virginia
En Visual Basic, ¿qué hacen los eventos? Cambian las propiedades de un cuadro de texto Actualizan la carpeta fuente Hacen que se ejecute el código
89
Temas en el camino a Proper Propiedades Dónde inicia el código Leer propiedades con el código Configurar propiedades con el código Métodos IntelliSense y notación de punto Llamar métodos con el código. Entrada a Proper
Unidad 05 – Proper, Georgia
90
Propiedades ¡Formsville fue muy divertido! Yo sé que es uno de los lugares favoritos de Cliff, él sabe mucho acerca del diseño de formatos y controles de formatos. El te enseñó como crear el formato de llanta ponchada. Incluso me enseñó algunas cosas acerca de configurar usando la ventana de propiedades. Voy a manejar hacia nuestro siguiente destino: Proper, Georgia. ¿Alguna vez has ido? Es un lugar muy apropiado. Deberás tener muy buenos modales cuando lleguemos allá, durante el camino te enseñaré más cosas respecto a las propiedades, te enseñaré como leerlas y configurarlas usando el código Visual Basic.NET. Después de aprender sobre dichas propiedades, te enseñaré un poco acerca de los métodos y como accesarlos también.
Unidad 05 – Proper, Georgia
91
Dónde inicia el código Es divertido diseñar un formato y configurar los controles correspondientes usando la ventana de propiedades, pero esto es sólo el principio, la ventana de propiedades es muy fácil de usar, pero no es muy versátil. ¿Qué pasa si tu usuario desea cambiar el color de fondo del formato cuando está usando tu programa? ¿Qué pasa si necesita cambiar el tamaño o estilo de fuente? ¿Cómo sabe tu programa si un usuario ha marcado algún cuadro de verificación o ha hecho clic en un botón de opción en particular? Dado que tus usuarios no tendrán que accesar la ventana de propiedades cuando ejecutan tu programa, ¿Cómo podrían hacer estas cosas? Bien, la respuesta es por medio del código Visual Basic.NET, con él puedes hacer todo esto y mucho más usando el código. Tú mismo escribes código para leer las propiedades de los controles de formato. Tú mismo escribes más códigos para configurar sus propiedades. Es así de simple y es muy poderoso. En mi opinión, es aquí donde empieza realmente la programación.
Usa la ventana de propiedades para configurar las propiedades iniciales de tu formato y los controles de formato cuando lo estás diseñado. Usa el código para cambiar las propiedades durante la ejecución del programa.
Unidad 05 – Proper, Georgia
92
¿A dónde va todo este código? Escribirás tu código en la página correspondiente de tu formato. En la mayoría de los casos lo colocarás en las secciones de eventos de tus controles de formato. ¿Recuerdas el botón clic por evento? Cuando un usuario realiza una acción, como la de pulsar un botón, el código que escribes para la sección de evento se ejecuta y la propiedad de un control de formato se lee o se configura. Cuando agregas un código a los eventos de los controles del formato, estás realizando los primeros pasos para convertir un formato en un programa funcional. ¿Recuerdas el formato de llanta ponchada que diseñaste? El formato no puede hacer nada hasta que le hayas agregado un código.
Para editar la sección de eventos predeterminada de un control, selecciona el control en tu formato y haz doble clic en él. La ventana de código se abre y el código de la sección de evento está listo para su edición. Puedes escoger una sección de evento diferente de una lista desplegable en el extremo superior derecho de la ventana de código.
A continuación te daré unos cuantos ejemplos de como leer las propiedades de los controles de formato usando el código Visual Basic.NET. Posteriormente te daré unos ejemplos de cómo configurarlas.
Unidad 05 – Proper, Georgia
93
Lectura de las propiedades con el código Vamos a ver algunos ejemplos reales respecto a la forma de leer propiedades con el código Visual Basic.NET. Para iniciar, te mostraré unos ejemplos de como leer algunas propiedades sencillas que normalmente se configuran usando la ventana de propiedades. Después de esto te daré unos ejemplos más de cómo leer algunas propiedades que los usuarios pueden cambiar cuando estén usando tu programa. Ahora, sigamos adelante. Crea una nueva aplicación de Windows llamada Leer propiedades, abre el cuadro de herramientas y agrega un botón a Form1. Abre la ventana de propiedades y cambia la propiedad de Texto del ‘Button1’ a Leer texto. Haz doble clic en Button1 para editar el código de evento del botón de clic. Teclea este código: MessageBox.Show(Button1.Text) Crea e inicia tu aplicación. Haz clic en el botón Leer texto. Un cuadro de mensaje se abre y despliega el mensaje Leer texto lo cual es la propiedad de del texto de Button1. Ve esto: tu código leyó la propiedad de texto de Button1 y después desplegó su valor usando un mensaje. Esto es fantástico. Este es otro ejemplo. Agrega otro botón a Form1. Usa la ventana de propiedades para cambiar la propiedad de texto de Button2 a Tamaño del formato. Haz doble clic en el Button2 para editar el código de evento del botón de clic. Teclea la siguiente línea de código en el evento del clic de botón. MessageBox.Show(Form1.ActiveForm.Height & "," & Form1.ActiveForm.Width) Crea e inicia tu proyecto. Haz clic en el botón tamaño de formato. Un cuadro de mensaje despliega: 300,300 (o un valor aproximado, asumiendo que dejaste el formato en su tamaño original) tu código ha desplegado la altura y ancho de Form1, separado por una coma, lo cuál está muy bien y fue realmente sencillo. ¿Qué otras propiedades puede leer el código Visual Basic.NET? Bueno, en realidad, el código Visual Basic.NET puede leer todas las propiedades de un formato o control de formato, los cuales están en la lista de la ventana de propiedades. Tu código puede leer propiedades como altura y ancho, color de fondo, color frontal, y ubicaciones en los ejes ‘X’ e ‘Y’. Sin embargo, muchas de las propiedades desplegadas en la ventana de propiedades se configuran cuando diseñas el formato y no cambian cuando el programa se ejecuta. Por lo tanto, el hecho de leerlas con el código no es tan útil ni emocionante.
Unidad 05 – Proper, Georgia
94
Esa es A3, B2 y mi favorita, B9.
Lo que es realmente útil es leer las propiedades de los controles de formato que los usuarios pueden cambiar cuando usen tu programa, como el contenido de un cuadro de texto o el marcado de un cuadro de verificación. De esta manera tu programa obtiene información de tu usuario. ¿Qué número de placas introdujo Len? ¿Qué llanta está ponchada? ¿Qué tamaño de llanta escogió Cliff? Aquí hay un ejemplo más práctico. Vamos a escribir un código que muestre si un cuadro de verificación está marcado o no. Abre el cuadro de herramientas y agrega un cuadro de verificación a Form1. Agrega un tercer botón a Form1. Abre la ventana de propiedades y cambia el texto del Button3 a verifícame. Haz doble clic en el Button3 para editar el código de evento de clic. Teclea la siguiente línea de código en el evento de clic: MessageBox.Show(CheckBox1.Checke d)
Crea e inicia tu proyecto. Haz clic en el botón verifícame. ¿Qué despliega el cuadro de mensaje? Marca el cuadro de verificación y haz clic en el botón Verifícame otra vez. ¿Ahora qué despliega el cuadro de mensaje? Cada vez que haces clic en el botón, el cuadro de mensaje despliega la propiedad actual del cuadro de verificación. Debe decir cierto. Recomendación para el profesor El alumno debe saber como leer y cambiar las propiedades usando el código, hasta que aprenda también las instrucciones condicionales, hay serias limitaciones sobre que tan interesante puede ser un programa.
Unidad 05 – Proper, Georgia
95
Ahora, como un ejemplo final. Te daré unos ejemplos de como leer y desplegar las palabras que un usuario teclea en un cuadro de texto. Agrega un cuadro de texto a Form1. Abre la ventana de propiedades para asegurarte que la propiedad de ‘Read only’ esté configurada como falso. Configura el texto con Teclear aquí. Agrega un cuarto botón a Form1. Cambia el texto de Button4 a leer el texto. Haz clic en Button4 para editar el código del evento de clic. Teclea la siguiente línea de código. MessageBox.Show(TextBox1.Text) Crea e inicia tu proyecto. Haz doble clic en TextBox1 y oprime la tecla de retroceso para borrar el texto. Teclea un texto nuevo en TextBox1. Haz clic en el botón Leer texto. ¿Qué despliega el cuadro de mensaje? Cambia el texto en TextBox1 y haz clic en el botón Leer texto otra vez. ¿Qué ocurre?
En J# y C# las propiedades de control de formato se leen igual que en Visual Basic.NET. Este es un ejemplo de código J# o C# que despliega el texto de un cuadro de texto: { MessageBox.Show(TextBox1.Text); } Salvo por los corchetes y el punto y coma al final de la línea, el código se ve igual que en Visual Basic.NET. También, en J# y C# TextBox1 inicia con ‘t’ minúscula.
Los ejemplos que expuse anteriormente, demuestran cómo se usa el código Visual Basic.NET para leer propiedades de controles del formato. Pero eso sólo es una parte de la historia, porque el código Visual Basic.NET también se usa para configurar propiedades.
Unidad 05 – Proper, Georgia
96
Configuración de propiedades con código Es fantástico poder leer las propiedades de los controles mediante el código Visual Basic.NET. De este modo nuestro código puede capturar las configuraciones que hacen los usuarios cuando usan el programa. Tu programa puede realizar diferentes acciones o ejecutar un código diferente dependiendo de las configuraciones del usuario. ¿Es posible hacer lo contrario? ¿Qué pasa si yo quiero configurar las propiedades de algunos de los controles cuando el usuario está ejecutando el programa? Por ejemplo, si quiero tener marcado siempre el cuadro de verificación de trabajo urgente cuando el usuario inicia el programa. Quiero que el programa despliegue todos los tamaños disponibles de las llantas en un cuadro de texto cuando el usuario hace clic en el botón Conseguir las llantas. Quiero que la lista de tamaños de llantas disponibles se cargue automáticamente en la lista desplegable una vez que el usuario introduzca un número de placas del vehículo. ¡Por supuesto que el código Visual Basic.NET me permite hacer todo eso! Configurar las propiedades de controles es tan fácil como leerlas. Para configurar una propiedad usando el código Visual Basic.NET usamos una instrucción de asignación. ¿Recuerdas que hablamos de las instrucciones de asignación de camino a Pseudo, PA? Una instrucción de asignación configura a un elemento con otro. El código para una instrucción de asignación se ve como una ecuación sencilla con un signo de igualdad en ella. TextBox1.Text = "Code Rules" El lado derecho de la ecuación (la parte a la derecha del signo de igual) se evalúa primero. Después el lado izquierdo de la ecuación (la parte a la izquierda del signo de igual) se configura con este valor. Recomendación para el profesor Recuerde continuamente a los alumnos que las asignaciones de lenguajes .Net, van de derecha a izquierda. Un concepto muy importante es que todo lo que se encuentra a la derecha del signo de igual permanece sin cambios. El contenido de las variables del lado derecho es evaluado en un área de trabajo de Visual Basic y después es asignado a la variable en el lado izquierdo. Sólo la variable del lado izquierdo se cambia.
Unidad 05 – Proper, Georgia
97
Estos son algunos ejemplos sobre la forma de configurar propiedades usando el código Visual Basic.NET. El primer ejemplo configura el contenido de un cuadro de texto. Esta es una grandiosa forma de desplegar información para el usuario, puede usarse en vez de que siempre emerja un cuadro de mensaje. Inicia una nueva aplicación de Windows y dale el nombre de ‘ConfiguraPropiedades’. Agrega dos cuadros de texto y un botón a Form1. Usa la ventana de propiedades para configurar el texto del Button1 con Configurar texto. Configura el texto de TextBox1 y TextBox2 dejándolo en blanco, haciendo doble clic en sus propiedades de texto y oprimiendo la tecla de retroceso. Haz doble clic en Button1 para editar el código de evento del botón de clic. Agrega la siguiente línea de código: TextBox2.Text = TextBox1.Text Crea e inicia tu proyecto. Teclea texto en TextBox1 y haz clic el botón configurar texto. ¿Qué ocurre? Como puedes ver el texto en TextBox1 ha sido "copiado" en TextBox2. La propiedad de texto de TextBox2 se configura con el mismo valor de la propiedad de texto de TextBox1. El código Visual Basic.NET lee la propiedad de texto de TextBox1 y después configura la propiedad de texto de TextBox2 con este valor. Eso es práctico. Vamos a agregar un código para que un cuadro de verificación esté seleccionado automáticamente y un segundo cuadro de verificación estará automáticamente sin seleccionarse cuando el usuario abra la aplicación. Agrega un cuadro de verificación a Form1 y configura su propiedad de texto con trabajo urgente usando la ventana de propiedades. Agrega un segundo cuadro de verificación a Form1 y configura su propiedad de texto con "Whenever" usando la ventana de propiedades. Haz doble clic en Form1 (no en CheckBox1 o CheckBox2) esto abre el código de evento de carga de Form1_Load para su edición. El código del evento de carga de formato se ejecuta cuando el formato se crea por primera vez y se despliega antes de que cualquier otro código de programa haya sido ejecutado. Agrega las siguientes líneas de código: CheckBox1.Checked = True CheckBox2.Checked = False Crea e inicia tu proyecto. ¿Cuál de las casillas de verificación está marcada? Tu código configuró automáticamente la propiedad de ‘checked’ para las dos casillas de verificación cuando se cargó el formato.
Unidad 05 – Proper, Georgia
98
El evento de carga de formato se usa a menudo para inicializar un programa. La inicialización configura ciertos valores antes de que el formato se despliegue para el usuario. Por ejemplo, podríamos agregar código al evento de carga de formato para configurar el tamaño del formato y su color de fondo así como seleccionar ciertos botones de opción antes de que se despliegue el formato.
Yo sé que el tamaño de llanta más común es el 14. Entonces, vamos a usar el código para elegir automáticamente 14 en nuestro cuadro combinado de tamaño de llanta. Primero, agrega un cuadro combinado al Form1. Usa la Ventana de propiedades para configurar sus elementos con 12, 13, 14,15, y 16. No olvides oprimir ‘Enter’ para crear una línea nueva para cada elemento en la lista. Haz doble clic en Form1 (no en ComboBox1) para editar el código de carga de formato. Agrega la siguiente línea de código: ComboBox1.SelectedItem = "14" Crea e inicia tu proyecto. ¿Qué elemento está seleccionado en el cuadro combinado? Pensemos que me equivoque, descubrí que el tamaño de llanta más común es 13. ¿Cómo cambiarías el código para seleccionar automáticamente 13 en el cuadro combinado?
En J# y C# puedes configurar las propiedades igual que en Visual Basic.NET. El código a continuación muestra cómo configurar la propiedad de ‘verificada’ de una cuadro de verificación en C# o en J#. { checkBox1.Checked = True; }
05 Ejercicio 01
Arco iris
Unidad 05 – Proper, Georgia
99
Inspirado por un lindo arco iris que vimos desde el asiento frontal de la camper, nuestros compañeros decidieron ver quien podía imitar la vida con un programa artístico. Tu tarea es demostrar que puedes manipular también las propiedades usando código VB real, y no solo la Ventana de propiedades. Abre Visual Studio.NET, selecciona Proyecto existente, y navega al archivo llamado Rainbow.sln. Alternativamente, puedes usar Mi PC para navegar a Rainbow.sln, hacer doble clic en él para abrir Visual Studio.NET.
Arco iris de colores. Diseñarás un formato que despliegue un arco iris de colores. Modificarás un código existente para hacer que el programa funcione y lo agregarás a las secciones de eventos de los controles de formato. El archivo 05_proveit01_files incluye las instrucciones para este Ejercicio y todos los archivos de apoyo que pudieras necesitar.
Tu tarea es agregar objetos del cuadro de herramientas para que el formato tenga esta apariencia. También actualizarás elementos en la ventana del código como se describe a continuaión. 1. Haz clic en el formato para centrarlo. Cambia la propiedad de texto del formato a Arco iris. 2. Crea un cuadro de imagen grande llamado ‘ImageBox1’. 3. Crea dos botones de comando llamados Button1 y Button2. Nombra Colores estándar al Button1. Nombra Personalizar colores al Button2.
Unidad 05 – Proper, Georgia
100
4. Haz doble clic en el Button1 para ver el código que ya te dimos. Verás que se dibujan siete colores del arco iris. Los siete se dibujan en negro. Tu tarea es cambiar los colores a los siete colores tradicionales del arco iris: rojo, naranja, amarillo, verde, azul, índigo, violeta. Por ejemplo, reemplaza este código: MyPen.Color = System.Drawing.Color.Black Con este código MyPen.Color = System.Drawing.Color.Red En cuanto se teclea el punto después de la palabra ‘Color’, Intellisense enlista todos los colores definidos. Al teclear una o dos letras de estos, te posiciona en la lista. 5. Haz doble clic en Button2 para ver el código que ya se te asignó. En vez de negro, escoge los siete colores que quieras. Una vez que hayas creado tu formato, crea la solución. Si no hay errores de creación, escoge Depurar/ Iniciar para ejecutar tu programa. Si tu programa funciona correctamente, muéstraselo a tu instructor.
Prueba extra Si quieres, puedes hacer cambios a los parámetros de Dibujar arco para la opción personalizar con el propósito de obtener otros resultados interesantes.
Recomendación para el profesor La función Dibujar arco es en realidad un óvalo circunscrito por un rectángulo invisible. Los parámetros especifican el tamaño del rectángulo, donde inicia el arco y hasta donde llega el arco. El hecho de cambiar los parámetros puede producir algunos efectos interesantes.
Unidad 05 – Proper, Georgia
101
IntelliSense y notación de punto Ahora sabes como escribir un código Visual Basic.NET para leer y configurar todas las propiedades de los formatos y los controles de formato. Sí, apuesto que puedo adivinar cuál es tu siguiente pregunta. Ya que cada formato y control tiene tantas propiedades, ¿cómo llevo un control de todas ellas? No es muy conveniente estar cambiando de la ventana de código a la Ventana de propiedades cada vez que necesitamos saber qué propiedad pertenece a un control en particular. ¿No hay otro modo más fácil?
El grupo y yo hemos tocado durante tanto tiempo que ya saben que voy a hacer a continuación
En efecto, sí lo hay. Se llama IntelliSense. Es una parte de Visual Studio. IntelliSense ahorra mucho tiempo cuando estás escribiendo un código en la ventana de código. IntelliSense sabe a qué control te refieres y sabe cuales son sus propiedades. Despliega una lista de propiedades y te permite escoger la que quieras usar. La propiedad más utilizada se resalta cuando la lista de IntelliSense se despliega. Por ejemplo, la propiedad de texto de un cuadro de texto se resalta inicialmente. Usa las flechas para encontrar la propiedad que quieras. Cuando oprimes la tecla de tabulador, agrega la propiedad a tu código. Con IntelliSense no tienes que memorizar todas las propiedades de todos los controles. ¡Te ahorra capturar mucha información! Yo lo uso todo el tiempo. Recomendación para el profesor De ser posible, haga una demostración de Intellisense. Señale que en cuanto se pone el punto, las opciones aparecen. Si no aparecen opciones entonces es probable que la variable no esté definida o haya sido capturada con errores.
Unidad 05 – Proper, Georgia
102
Inicia una nueva aplicación de Windows llamada IntelliSense. Agrega un cuadro de texto y un botón a Form1. Haz doble clic en el botón para abrir el código de evento de clic para Button1. 1.
Teclea TextBox1 y oprime la tecla de punto (.). (No olvides el punto), en cuanto tecleas el punto, IntelliSense despliega una lista de propiedades para TextBox1, ya que esta es un cuadro de texto, esta lista es la misma para cualquier cuadro de texto que agregues a un formato. Por sistema la propiedad de verificado en la lista IntelliSense es la más usada. En este caso la propiedad de texto está predeterminada por el sistema.
2.
Ahora teclea la letra "R". IntelliSense encuentra la primera propiedad en la lista que inicie con la letra "R". Conforme escribes el nombre, IntelliSense encuentra la propiedad de que más se parezca a lo que escribiste.
3.
Usa la flecha de descenso para moverte en la lista y ubicar la propiedad de texto otra vez. Selecciona la propiedad de texto para resaltarla.
4.
Oprime la tecla de tabulador. ¡Mira lo que ocurre! La palabra ‘Text’ (texto) se agrega a tu código después de TextBox1. Ahora escribe ="Clifford". El código ahora debe decir: TextBox1.Text = "Clifford"
¿No fue fácil y rápido? IntelliSense ayuda a eliminar errores de captura y también de sintaxis. Es el mejor.
Unidad 05 – Proper, Georgia
103
Ya que todas las propiedades están resaltadas en la lista Intellisense, una recomendación aparece junto a ella. La recomendación te da información acerca de la propiedad de, como si se trata de una propiedad de sólo lectura que no puede configurarse. La recomendación también da información acerca de los parámetros de configuración de la propiedad, tales como una cadena (texto) o un entero.
Probablemente ya te diste cuenta de que hay un icono junto a cada uno de los elementos en la lista desplegada por IntelliSense. El icono que representa una propiedad es una mano señalando un elemento en una lista. El icono que representa un método es un cuadro púrpura o diamante púrpura. (En un minuto te explicaré los métodos.) Dependiendo del control, también puedes ver otros iconos correspondientes a los atributos de control adicionales.
¿Te diste cuenta de que tuviste que teclear el punto antes de que apareciera la lista de IntelliSense? Esto se debe a que Visual Basic.NET usa un tipo de sintaxis llamada Notación de punto, una vez que tecleas el nombre del control, como TextBox1, tienes que teclear un punto (.). Después tecleas el nombre de la propiedad. El punto es lo que conecta el control con su propiedad. Esta es la sintaxis básica para referir una propiedad de un formato o control usando notación de punto: FormName.FormProperty ControlName.ControlProperty Ya viste muchos ejemplos pero aquí hay otros más: TextBox1.Text CheckBox1.Checked Form1.ActiveForm.Height Nota que el punto (.) que une el control con su propiedad. En el último ejemplo, formato activo, es una propiedad de Form1 y altura es una propiedad de ActiveForm. Por lo tanto, se requieren dos puntos para unir las propiedades. IntelliSense sabe cuando una propiedad tiene una Unidad 05 – Proper, Georgia
104
propiedad propia. Cuando tengas dudas, teclea otro punto e IntelliSense desplegará una lista de propiedades disponibles. Si IntelliSense no despliega la lista, no hay propiedades adicionales y tendrás que retirar el último punto. O tal vez hayas escrito mal el nombre del control. Cuando desarrollas aplicaciones C# y J# usando Visual Studio, IntelliSense también está disponible. Funciona igual que Visual Basic.NET. Solo teclea el nombre de tu control y después un punto (.). IntelliSense despliega una lista de propiedades y métodos disponibles. Debido a que J#, C# y Visual Basic.NET están basados en el marco de trabajo .NET, la lista de propiedades y métodos para un control es la misma para los tres lenguajes. Un cuadro de texto en C#, J# y Visual Basic.NET tiene las mismas propiedades y métodos.
Unidad 05 – Proper, Georgia
105
, eso es so
Métodos Probablemente ya te diste cuenta de que algunas de las propiedades en la lista desplegada por IntelliSense tienen un icono de diamante púrpura junto a ellas. Estas no son propiedades sino métodos. Las propiedades son características del control, tales como el color, número de asientos, libras de cromo y caballaje del motor son características de los autos. Los métodos tienen más similitud con las acciones del control, tales como girar a la derecha, parar, y acelerar hasta el fondo son acciones de los autos. Los métodos no pueden accesarse mediante la ventana de propiedades. Para desplegar los métodos debe usarse un código. Por ejemplo, la mayoría de los controles de formato tienen un método para ocultar y mostrar. Cuando usas el método ocultar de un control, el control deja de ser visible aunque está en el formato. Cuando usas el método mostrar, el control se hace visible. Algunos métodos te permiten producir una acción que normalmente sería realizada por un usuario. Por ejemplo, un botón tiene un método Hacer clic el cuál permite que tu código hacer clic en un botón, simulando la acción de un usuario. Algunos métodos requieren que incluyas cierta información cuando los usas. Esta información afecta la forma en que se realiza el método y los resultados. Estos datos se llaman argumentos del método. Un método puede requerir uno o más argumentos. Algunos de ellos pueden ser opcionales. Por ejemplo, el método para mostrar el cuadro de mensaje usa una cadena de texto como argumento. Este argumento determina lo que despliega el cuadro de mensaje. Ya has usado el método para mostrar el cuadro de mensaje pero tal vez no te diste cuenta que estabas usando un método con un argumento. MessageBox.Show("Hola Mundo") En el código que está sobre el texto "Hello World" se encuentra un argumento del método para mostrar. El argumento determina lo que se despliega en el cuadro de mensaje. Recuerda, la diferencia principal entre las propiedades y los métodos es que éstos realizan una acción. Los métodos tienen que usarse partiendo del código y no pueden accesarse a partir de la Ventana de propiedades. Algunos métodos pueden requerir uno o más parámetros (argumentos) cuando se usan. Algunos métodos devuelven un valor que puedes usar en tu código.
Llamar métodos con el código La sintaxis para llamar un método es casi idéntica a la sintaxis de configuración o lectura de una propiedad. Usa la notación de punto para conectar el control de formato con su método. Algunos Unidad 05 – Proper, Georgia
106
métodos, como Button.Hide y Button.Show, no necesitan argumentos. Otros, como MessageBox.Show, necesitan un argumento para saber qué mostrar. La sintaxis para llamar un método es: ControlName.MethodName (argument1, argument2, etc.) Recuerda que usaste el método mostrar del cuadro de mensaje cuando diste un argumento: MessageBox.Show(“Hello World”) Como puedes ver, una gran diferencia entre llamar un método y leer (o configurar) una propiedad es que no hay un signo de igual en el código empleado para llamar un método. Ahora veamos algunos de mis métodos favoritos y como puedes usarlos partiendo del código. Te daré unos ejemplos de como ocultar y mostrar controles de formato, borrar el texto en un cuadro de texto y establecer la ubicación del cursor. Para empezar, inicia una aplicación nueva de Windows llamada Métodos. Agrega dos botones y un cuadro de texto a Form1. Cambia el texto de Button1 a "Show". Cambia el texto de Button2 a "Hide". En el evento de clic de Button1 agrega la siguiente línea de código. TextBox1.Show() En el evento de clic de Button2 agrega la siguiente línea de código. TextBox1.Hide() Crea e inicia tu aplicación. Haz clic en los botones "Show" y "Hide". Cada vez que haces clic en un botón estás usando un método del control del botón. Agrega un tercer botón a Form1. Configura el texto de Button3 con "Reset" agrega el siguiente código al evento de clic de Button3. TextBox1.ResetText() TextBox1.Focus() El método ResetText elimina el texto del cuadro de texto. El método ‘Focus’ coloca el cursor en el cuadro de texto. Crea e inicia tu aplicación. Teclea el texto en el cuadro de texto y haz clic en el botón ‘Reset’. El texto se elimina del cuadro de texto y el cursor se coloca automáticamente en el cuadro de texto, listo para teclear datos. Recomendación para el profesor Una alternativa común para TextBox1.ResetText() es el no asignar nada TextBox1.Text = “” y el interior de las comillas está vacío.
Unidad 05 – Proper, Georgia
107
Como habrás adivinado, los métodos se usan en J# y C# igual que en Visual Basic.NET. Este es un código de J# que elimina el texto de un cuadro de texto y pone el cursor en el cuadro de texto. El código C# se ve exactamente igual. { TextBox1.ResetText(); TextBox1.Focus(); }
Unidad 05 – Proper, Georgia
108
Llegada a Proper Muy bien, aquí estamos en las almidonadas y perfectas afueras de Proper, Georgia. Aprendimos mucho durante el camino. Ahora puedes leer y configurar propiedades y usar métodos de controles de formato usando código Visual Basic.NET. Como viste, la mayor parte del código pasa a las secciones de eventos de los controles de formato. Para abrir el código para la sección de eventos sólo haz doble clic en el control, la ventana de código se abre y la sección de evento está lista para edición. Para leer o configurar una propiedad, o usar un método, teclea el nombre de un control y después teclea un punto (.). IntelliSense muestra una lista de propiedades y métodos disponibles para el control. Selecciona el que quieras y oprime la tecla de tabulador para agregarlo a tu código. Tenemos tiempo suficiente para un Ejercicio o dos y una prueba antes de que nos pongamos algo más elegante y vayamos al Peach 'n Bass Café. ¿Listo?
Unidad 05 – Proper, Georgia
109
05 Ejercicio 02
Medidor de viaje
El fantástico mapa de viaje inspiró a Nikki a preguntar si alguien podría escribir un programa que muestre el porcentaje del viaje que ha sido cubierto cuando lleguemos a cada ciudad. Tu tarea es demostrar que ya puedes manipular propiedades usando el código VB real, no sólo la Ventana de propiedades. Abre Visual Studio.NET, selecciona Nuevo proyecto, y crea un proyecto llamado Medidor de viaje.
Medidor de avance del viaje Crea un formato que muestre un medidor que indique el avance del viaje de las reglas de código. Puedes agregar un código a los elementos del formato para hacer tu programa interactivo. El archivo 05_proveit02_files contiene las instrucciones y cualquier archivo de soporte que puedas necesitar.
Tu tarea es agregar objetos del cuadro de herramientas para que el formato se vea así. También deberá actualizar los elementos en la ventana de código como se describe a continuación.
1. Haz clic en el formato y cambia el nombre del formato a Medidor de viaje. 2. Crea 13 botones de opción. Que el ancho de cada botón sea 150 píxeles. Tal vez quieras usar la función copiar y pegar. 3. Alinéalos verticalmente y después sepáralos uniformemente. ¿Sabías que hay iconos en la barra de herramientas que pueden hacer eso? Coloca tu cursor en los botones de la barra de herramientas hasta que encuentres el que necesitas, y luego haz clic sobre él.
Fin
Unidad 05 – Proper, Georgia
110
4. Cambia el texto de los botones a: Inicio: Everywhere, WI Ideal, IL Pseudo, PA Formsville, VA Proper, GA XY, AR Switchboard, OK Whatif, TX Ifelse, NM Def Valley, CA Whatever, CO Function Junction, SD Final: Whatever, WI 5. Crea un botón llamado fin. Haz doble clic para obtener la página de código asociado. Coloca la palabra fin en el evento del clic de botón. 6. Coloca una barra vertical de desplazamiento en tu página. Tal vez tengas que recorrer el cuadro de herramientas usando el triángulo descendente. Por sistema, la barra de desplazamiento, inicia en cero y termina en 100 como predeterminada. Esto hace que el indicador de la barra de desplazamiento sea muy grueso. Para hacerlo más delgado, cambia el parámetro máximo para la barra de desplazamiento a 1000. 7. Ahora puedes escribir el código. Haz doble clic en el primer botón de opción. Coloca esta línea de código en el evento de clic. VScrollBar1.Value = 0 Este mueve el indicador de desplazamiento a la posición cero, para el rango de 0 – 1000. Para cada botón de opción, usa una línea de código similar, haciendo cada valor 83 veces mayor que el valor previo. El último valor debe ser 1000. Una vez creado tu formato, crea la solución. Si no hay errores de creación, elige Depurar / Iniciar para ejecutar tu programa. Si tu programa funciona correctamente, muéstraselo a tu instructor.
Unidad 05 – Proper, Georgia
111
05 Reto
Flores
Cuando pasamos por un campo de flores me pongo de buen humor. Creo que deberíamos tener un programa de flores.
En este reto crearás un formato para mostrar flores. Escribirás un código para hacer cambios en las propiedades del formato. El archivo 05_Challenge_files contiene las instrucciones para esta prueba y todos los archivos de apoyo que necesitas
Haz un formato como este:
1. Pon la propiedad de ‘Visible’ de los cuatro cuadros de imagen en falso. 2. Pon el estilo de orilla de los cuatro cuadros de imagen en 3D fijo. 3. Pon la propiedad de SizeMode de los cuatro cuadros de imagen en auto-dimensionar. 4. Configura la propiedad de cada cuadro de imagen con la imagen correspondiente en la carpeta de descarga. 5. Ve a la página de código. Justo arriba del código hay dos listas desplegables. De la lista desplegable izquierda, escoge Label1. Unidad 05 – Proper, Georgia
Recomendación para el profesor Algunos alumnos configurarán ‘MouseHover’ para el cuadro de imagen. Las instrucciones hacen que el ratón se coloque sobre el 112 título que tiene el nombre de la flor, no sobre la flor.
6. De la lista desplegable a la derecha, elige ‘MouseHover’. 7. En el evento Label1.Mousehover, pon la propiedad de ‘Visible’ de ImageBox1 en Cierto. Pon la propiedad de ‘Visible’ de los otros tres cuadros en falso. 8. Haz lo mismo para los otros tres títulos, haciendo los cambios correspondientes en los cuales las imagines son visibles y en los que no. 9. El resultado final es un programa que solo muestra una imagen a la vez cuando el ratón se mantiene sobre la descripción. Una vez que tu programa funciona correctamente, muéstraselo a tu instructor.
Extensión / desviación Cuando una flor haya sido seleccionada, cambia el color de fondo del formato.
Unidad 05 – Proper, Georgia
113
Dado que ya vamos a llegar a Proper, GA tienes que resolver otra prueba del rally. Buena suerte.
Puedes usar un código de programa para: Leer propiedades de los controles Configurar las propiedades de los controles Ambas
¿Qué línea de código lee y despliega la propiedad de seleccionado de un botón de opción?
Unidad 05 – Proper, Georgia
Todas las instrucciones de asignación de Visual Basic: Van de izquierda a derecha Van de derecha a izquierda Van en cualquier dirección porque son iguales
¿Cómo haces que el código seleccione un cuadro de verificación ?
114
Temas en el camino a XY XY Asignaciones Tipos Tipos primitivos ¿Qué son las variables? Variables de declaración Variables de inicialización El uso de variables Otro tipo de variables La llegada a XY
Unidad 06 – XY, Arkansas
Página 115 de 322
XY Ahora nos estamos dirigiendo a XY, Arkansas. Es la ciudad natal del famoso jugador de basketball Al'Gebra. Mi exnovia vivía aquí. ¿Por qué ex-novia? Es que no nos entendíamos muy bien. Creo que era demasiado voluble. En el camino a XY, te enseñaré algo acerca de los tipos de datos, como las cadenas de caracteres y enteros. Cuando configuras la propiedad de formato, debes estar seguro de que es el tipo correcto. La mayor parte del viaje hablaremos de las variables y cómo utilizarlas en tu código, el cuál utiliza variables para almacenar información de tipos diferentes. Las variables constituyen un bloque básico de creación para la escritura de un código. Yo estoy seguro que aprenderás rápido y comenzarás a basarte en las variables tanto como lo hacemos Nikki y yo para escribir un código.
Unidad 06 – XY, Arkansas
Página 116 de 322
Asignaciones Nikki nos hizo primero escribir un código en Visual Basic.NET que es realmente útil. Ahora ustedes saben cómo leer y configurar las propiedades mediante un código. ¿Sabías que cuando asignas una propiedad estás utilizando una instrucción de asignación? Hablamos de ellas en el camino a Pseudo, PA. Las instrucciones de asignación asignan una cosa a otra. El código para una instrucción de asignación parece una simple ecuación que contiene un signo de igual.
TextBox1.Text = “Code Rules” Ahora rige esta instrucción de asignación. Algo que tú debes saber acerca de las instrucciones de asignación es que el lado derecho de la ecuación (la parte que se encuentra a la derecha del signo de igual) se evalúa primero. Después, el lado izquierdo de la ecuación (la parte que se encuentra a la izquierda del signo de igual) se asigna a este valor. Parece algo retrógrada, pero es así como funciona el programa. En la ecuación que se presenta a continuación, “Code Rules” se evalúa primero. Después TextBox1.Text se asigna a ese valor.
TextBox1.Text = “Code Rules”
Unidad 06 – XY, Arkansas
Página 117 de 322
Tipos Otra cosa que siempre debes tener en mente es que el la parte izquierda de la ecuación espera que su parte derecha sea de true type (texto, número, color, etc.) te lo explicaré mediante la siguiente línea de código como ejemplo:
TextBox1.Texto = “Code Rules Rocks” Aquí, el lado izquierdo de la ecuación es la propiedad de Texto de TextBox1, que sólo puedes asignarse al texto, de modo que el lado derecho también debe ser texto. Si el lado derecho es un tipo diferente (que no sea texto), se produce un error cuando trata de construir el proyecto. Debido a que “Code Rules Rocks” es texto, y es lo que la propiedad de Texto está esperando, no ocurre ningún error. El siguiente código no se compilará porque estamos tratando de configurar la propiedad de Texto que está esperando asignarse a ForeColor, que es un tipo de color.
TextBox1.Text = TextBox1.ForeColor 'resulta un error El siguiente código es correcto porque al lado derecho de la ecuación evalúa un tipo entero y a la Propiedad de altura sólo le puedes asignar un valor entero.
TextBox1.Height = 200 Este código es incorrecto porque incluye un decimal.
TextBox1.Height = 200.5 Recuerda, cuando estás utilizando instrucciones de asignación, el lado derecho de la ecuación debe ser del tipo correcto -- tiene que ser del tipo que lado izquierdo de la ecuación está esperando.
Recomendación para el profesor Con frecuencia, Visual Basic convertirá exitosamente un tipo de datos mal correlacionado. No se puede garantizar una conversión exitosa así que se deben especificar los datos correctos para las variables como una costumbre para lograr una buena programación. J# y C# son más sensibles a errores de correlación.
Unidad 06 – XY, Arkansas
Página 118 de 322
Hasta aquí hemos usado “texto” como tipo. En el marco .NET todos los textos se llaman “cadena”. Cuando usas un código para definir una propiedad que requiere un tipo cadena, acuérdate te colocar el text en sí entre comillas. Button1.Text = “Click Here”
Hasta ahora hemos usado el “texto” como un tipo, en el marco de trabajo de .NET, se le denomina una “cadena”. Cuando estás usando un código para configurar una propiedad que requiere un tipo de cadena, debes recordar que dicho texto va entre comillas, así:
Button1.Text = “Click Here”
Unidad 06 – XY, Arkansas
Página 119 de 322
Tipos primitivos El entorno de .NET soporta a varios tipos básicos, a los cuáles se les conoce como primitivos. Tu ya has utilizado el tipo de cadena para asignar la propiedad de Texto de un botón. Ya has utilizado el tipo entero para asignar la Propiedad de altura de una forma. Incluso haz utilizado la Propiedad booleana (True o False), es decir verdadero o falso, respectivamente para configurar la Propiedad de Visible de un cuadro de texto. Algunos de los tipos primitivos que se utilizan más comúnmente son: Cadena (texto), Entero (números enteros), Sencillo (números decimales) y Booleano (True o False), estos tipos primitivos son comunes en todos los lenguajes de programación de .NET, incluyendo Visual Basic.NET, C#, y J#. A continuación se presentan algunos ejemplos de valores que permitidos para cada uno de estos tipos primitivos: Tipo Cadena Entero
Ejemplo "Hello" 123
Sencillo Booleana
55.12 True
Comentario El texto debe estar entre comillas dobles Todos los números enteros sin puntos decimales Números con puntos decimales Sólo puede ser True o False
Recomendación para el profesor La mayoría de los alumnos tienen problemas con el concepto de que un número, como el entero 1, el cuál no es lo mismo que el carácter de cadena “1”. El formato binario del entero es 00000001 y el formato binario del carácter de cadena 00110001, obviamente no son iguales. Visual Basic complica el asunto porque intenta realizar conversiones según sean necesarias. Por ejemplo, Dim A as Integer = 1 Dim B as string = “1” Si (A = B) Entonces El código anterior regresa un valor de True a pesar del hecho que la representación interna es diferente. Remind students not to directly do arithmetic using the Text property of a textbox.
Unidad 06 – XY, Arkansas
Página 120 de 322
Ve estos ejemplos de código de instrucciones de asignación los cuales muestran las propiedades de diferentes tipos: TextBox1.Texto="Smile" TextBox1.Visible=True TextBox1.Width = 1000
Cuando selecciones una propiedad o método de la lista del IntelliSense, también se desplegará un “tip” de ayuda, el cuál te dirá a que tipo de propiedad debe configurarse o qué tipo de argumentos de método debe ser: Button1.Text = “Presiona aqui”
¡Aquí hay algo interesante! Debido a que C# y J# también son lenguajes de .NET, tienen los mismos tipos primitivos como Visual Basic.NET--cadenas, enteros, sencillos, Booleanos y todos los demás.
Unidad 06 – XY, Arkansas
Página 121 de 322
¿Qué son las variables? Las variables son utilizadas por tu código para almacenar información que podrá necesitar en algún momento más adelante. Las variables en el código son como las variables en las matemáticas. Se le asignan a un valor y pueden utilizarse en lugar de éste. A las variables se les puede asignar un nuevo valor en cualquier momento. En el código, tu programa utiliza a las variables para "recordar" la información. Si tu código no utilizó alguna variable, entonces tu programa tendría que detenerse constantemente y pedirle al usuario que teclee la información cada vez que la necesite. Imagínate que tu programa requiriera saber la edad del usuario en tres momentos diferentes ¿No sería molesto si el programa tuviera que detenerse y solicitarle al usuario que la tecleara una y otra vez? Teclee su edad. Teclee su edad. Teclee su edad. Con la ayuda de las variables, tu programa solicitaría sólo una vez que el usuario teclee su edad, ésta se guardaría en una variable que el código utilizaría cada vez que el programa necesitara saberla.
Unidad 06 – XY, Arkansas
Página 122 de 322
¿Por qué utilizar las variables? Como pudiste ver, las variables nos ayudan a ahorrar tiempo real, reduciendo también el volumen de información que un usuario debe teclear. También nos ayudan a reducir los errores. Si tuviste que teclear un número de varias cifras una y otra vez, existe una mayor posibilidad de que en algún momento cometieras por lo menos un error. Además de ahorrar información ingresada por usuarios, las variables se utilizan para otras cosas. Asimismo, se utilizan para llevar un control sobre los resultados calculados por el programa. Las variables se utilizan también para hacer comparaciones que determinan el orden en el que se ejecuta el código. Se emplean también para contar cosas, como, por ejemplo, cuántas veces se ha realizado un cálculo. Un componente fundamental en la programación es aprender cómo almacenar información en las variables, las cuáles se utilizan en todos los lenguajes de programación. Son absolutamente necesarias para realizar ciertos tipos de cálculos y llevara a cabo ciertas acciones en tu código.
Unidad 06 – XY, Arkansas
Página 123 de 322
Declaración de variables Antes de que tu programa pueda utilizar una variable, debes declararla. Para declarar una variable debes escribir una línea de código que establece el nombre de la variable y le asigna un tipo específico. Debes declarar todas las variables en Visual Basic.NET. De todos modos es un buen ejercicio porque te hace pensar acerca de cómo se utilizará dicha variable y acerca de su tipo. Declarar tus variables acelera el tiempo de compilación y logra que el programa se ejecute más eficazmente. También evita que escribas mal el nombre de la variable cuando se utiliza en tu código. Para declarar una variable en código de Visual Basic.NET, utilizas una instrucción "Dim".
La instrucción Dim tiene la siguiente sintaxis: Dim VariableName As VariableType Aquí hay algunos ejemplos de cómo declarar variables de diferentes tipos. Dim MyName as String Dim MyWeight as Integer Dim PanComido como Booleana Dim DVDprice As Single
La primera variable, MyName, se declara como variable de tipo Cadena. Esto significa que a la variable de MyName sólo puedes asignarle a una Cadena. La segunda variable, MyWeight, se declara como una variable de tipo Entero, es decir que sólo puede asignarse a un Entero. La variable PanComido sólo puede asignarse a al tipo Booleana y la variable de DVDprice sólo puede asignarse al tipo Sencillo.
Unidad 06 – XY, Arkansas
Página 124 de 322
Recomendación para el profesor Los nombres que elijas para tus variables son importantes. Los nombres de las variables deben ser descriptivos pero cortos. Debes abreviar solamente cuando sea necesario. Muchos programadores usan la convención de nombres estándar llamada “camel case”, de esta forma, cada palabra de la variable empieza con mayúscula, por ejemplo: CamelCase, MyName, MaximaVelocidadWinnwbago, LimiteVelocidadLocal. Visual Basic pone con mayúscula la primera letra. Mientras que J# y C# no lo hacen.
Los alumnos tienden a escoger nombres de variables que son ya sea lindos o no tienen sentido, o letras solas para ahorrarse la tecleada. Más tarde se les olvida lo que significan las variables, originando errores causados por haber utilizado un nombre equivocado. Además, cuando el alumno pide ayuda, la persona que le asiste no tiene ni idea de para qué se utilizan las variables. Usted podrá considerar negarse a ayudar a un alumno que no asigne nombres con sentido para las variables.
Button1.Text=”Click Here”
En C# y J# declaras las variables de una manera un poco diferente. Primero, escribes el tipo de variable, después el nombre de la misma. De igual forma, los nombres de los tipos son ligeramente distintos. Por ejemplo, int se utiliza en lugar de Entero y decimal se utiliza en lugar de Sencillo. int val4; string MyName; decimal miPromediodeAciertos;
Unidad 06 – XY, Arkansas
Página 125 de 322
¿En dónde se declaran las variables? Puedes declarar las variables que quieras en tu código de Visual Basic.NET. Se pueden declarar como cualquiera de los tipos permitidos por el entorno de .NET. Nikki y yo aplicamos una práctica de codificación estándar al escribir un código. Declaramos todas nuestras variables al inicio de nuestro código. De esta manera sabemos en dónde buscarlas y fácilmente podemos ver de qué tipo son. También permite que nuestro código se quede limpio y organizado. Si necesitamos crear otra variable al escribir nuestro código, regresamos al inicio del mismo y la declaramos junto con el resto de las variables. No declaramos variables nuevas a la mitad de nuestro código. Puedes declarar las variables de modo que sean variables globales o variables locales. Hasta ahora, todo el código que hemos escrito han estado en los manejadores de eventos de controles de forma --como el código de manejador de eventos para el botón de clic. Todas las variables que declaramos en el código del manejador de eventos han sido variables locales. A las variables locales sólo puedes leerlas o cambiarlas por medio del código del manejador de eventos en el que las declaraste. Ningún otro manejador de eventos u otro código del formato puede tener acceso a ellas. Los valores de las variables locales sólo se guardan cuando se están ejecutando en el código del manejador de eventos, después de que este se haya ejecutado, se pierden los valores de las variables locales. Un ejemplo de variable local es una variable que se declara en un evento de botón de clic. Para declarar variables locales, configura la instrucción Dim en tu código del manejador de eventos esta variable debe declararse primero, antes de que escribas cualquier otro código. Aquí hay un ejemplo:
Private Sub Button1_Click(ByVal sender ByVal e As System.EventArgs) Handles Button1.Clickk Dim MyName as String MyName = "Bill" TextBox1.Text = MyName End Sub
As System.Object, Recomendación para el profesor MyName se declara dentro de un Sub (subprograma). En cuanto se ejecuta la instrucción End Sub (finalizar subprograma), se borra MyName.
Hasta ahora, no hemos utilizado ninguna de las variables globales. Las variables globales se pueden leer o configurar por todo el resto de personas que manejen el código del formato. Las variables globales se pueden acceder por todos los manejadores de eventos y todo el resto del código del formato. Los valores en las variables globales se guardan mientras que el formato esté abierto. Un ejemplo de variable global es un contador que lleva un registro del número total de veces el que se ha hecho clic en cada uno de los botones. Para declarar las variables globales que se pueden utilizar por todos los códigos del formato, debes poner la instrucción Dim en el cuerpo del mismo. El mejor lugar para declarar variables globales en el código de una forma es justo después de la instrucción que dice:
Windows Form Designer generated code Esta línea de código está encerrada en un cuadro y tiene un signo de más a su izquierda. Declara sus variables justo después de esta línea. Ve este ejemplo:
Windows Form Designer generated Unidad 06 – XY, Arkansas
Página 126 de 322
code Dim TotalButtonClicks As Single La variable TotalButtonClicks es una variable global. TotalButtonClicks se puede leer o configurar por otro código del formato como, por ejemplo, el código en los manejadores de eventos. Si declaras todas tus variables aquí en el cuerpo del formato, todas serán globales. Sus valores se puedes leer o configurar por todos los códigos del formato y los manejadores de eventos.
Unidad 06 – XY, Arkansas
Página 127 de 322
06 Ejercicio 01
Pedazo de Pi
Mi postre favorito en un restaurante es el pastel de manzana. Esto me hizo pensar en cómo el número Pi podrá aparecer en diferentes formatos. Pinte una forma como esta:
Pedazo de Pi
En este ejercicio verás el valor de Pi en los formatos de variable El 06_proveit01_files contiene instrucciones para este ejercicio y todos los archivos de soporte que puedas necesitar.
En el evento de botón de clic , define variables del tipo: Entero Sencillo Doble Cadena Coloca el valor de Pi en cada variable utilizando la calculadora de Pi integrada de Visual Basic: Math.PI Sólo asigna Math.PI a cada una de las variables. Asigna cada una de las variables al cuadro de texto apropiado. Cuando tu programa funcione correctamente, muéstraselo a su instructor.
Unidad 06 – XY, Arkansas
Página 128 de 322
Iniciar las variables Una vez que una variable se haya declarado, puedes utilizarla en tu código. Una de las primeras cosas que deberá hacer tu código es asignar la variable a un valor inicial. Puedes asignar la variable a cualquier valor que desees mientras que sea el tipo correcto. Sólo puedes asignar la variable a un valor que tenga el mismo tipo que la variable misma. Cuando asignas una variable a un valor, estás utilizando una instrucción de asignación. Vamos a ver algunos ejemplos.
Dim MyName as String MyName = "Paul Bunion" Dim MyWeight as Integer MyWeight = 128 Dim DrivingDistance As Single DrivingDistance = 12.8 La variable MyName se declara como tipo Cadena y se asigna a la cadena "Paul Bunion". La variable MyWeight se declara como tipo Entero y se asigna a 128, un valor entero. La variable de DrivingDistance se declara como tipo Sencillo y se asigna a 12.8, un valor decimal. Aquí hay un buen método abreviado que puedes utilizar para declarar tu variable y asignar su valor inicial mediante una sola línea de código. Esto asegura que la variable comience con un valor apropiado. El uso de una variable a la que no se ha asignado un valor inicial puede provocar una falla del programa.
Dim MyAge as Integer = 100 Inicializar una variable o asignar una variable a un valor se realiza de la siguiente manera en C# y J#: int myOrbit; myOrbit=123000;
Utilizar variables Ahora que has declarado tu variable y asignado su valor inicial, la puedes utilizar en tu código en dónde quieras emplear el valor que guardaste en ella. Ve estos ejemplos.
Dim MiNombre as String MiNombre = "Joe Cooker" MessageBox.Show(MiNombre)
Unidad 06 – XY, Arkansas
Página 129 de 322
¿Qué te imaginas que se desplegará en el MessageBox? Se desplegará Joe Cooker.
Dim MiNombre as String MiNombre = "Peter, Paul and Mary" TextBox1.Text = MiNombre Puedes cambiar el valor de una variable utilizando instrucciones de asignación adicionales. ¿Qué se desplegará en TextBox1?
Dim MiNombre as String MiNombre = "Bill" MiNombre = "Bob" MiNombre = "Ben" TextBox1.Texto = MiNombre ¿Qué nombre se desplegará en TextBox1? Si dijiste "Ben", estás en lo correcto, la variable MyName se asigna a Bill, después Bob y al final Ben. Debido a que lo último a lo que se asignó MiNombre fue Ben, esto es lo que se desplegará en TextBox1. Incluso puedes asignar el valor de una variable a otra variable.
Dim MiNombre as String Dim TuNombre as String MiNombre = "Allen Ginsberg" TuNombre = MyName MessageBox.Show(TuNombre) Allen Ginsberg se desplegará en el Cuadro de Mensaje. Aqui está el mismo código en J# o C#. Puedes ver algunas similitudes y también ciertas diferencias. Ve cómo declaramos las variables; es un poco diferente que en Visual Basic. NET.
string MiNombre; string TuNombre; MiNombre = "Allen Ginsberg"; TuNombre = MiNombre; MessageBox.Show(TuNombre); Aquí hay un ejemplo que produce un error porque intentamos asignar una variable que fue declarada como un tipo a una variable de un tipo diferente. Este código no se compilará.
Dim MiNombre as String Dim DVDPrice As Single
Unidad 06 – XY, Arkansas
Página 130 de 322
MiNombre = "Paul Bunion" DVDprice = MiNombre Recuerda, tus variables se declaran como un tipo específico. Sólo se les puedes asignar valores del mismo tipo.
Unidad 06 – XY, Arkansas
Página 131 de 322
Aumentar de velocidad con las variables Te platiqué acerca de los tipos de variables, porqué se utilizan las variables y cómo declarar y asignarlas. ¿Qué más hay acerca de ellas? ¡Escribiremos un programa con las variables! Inicia una nueva Aplicación de Windows en Visual Studio.NET. Asigna el nombre XACTLY a la aplicación. Abre la Ventana de Herramientas y agrega un botón y dos cuadros de texto a Format1. Despeja la propiedad de Texto de TextBox1 y TextBox2. Configura el Texto de Button1 a "Show XY". Asigna True a la Propiedad de ReadOnly del TextBox1 y TextBox2. Haz doble clic en el Button1 para editar el código de evento de clic en botón. Ingresa las siguientes líneas de código:
Dim XName as String Dim YName as String XName = "X es mi nombre" YName = "Y es mi nombre " TextBox1.Text = XName TextBox2.Text = YName Crea e inicia tu aplicación. Haz clic en el botón "Show XY". Tu código declara dos variables de tipo cadena, XName e YName. Las variables X e Y se asignan a cadenas de texto (entre comillas) la Propiedad de Texto de TextBox1 se asigna al valor almacenado en XName. La Propiedad de Texto del TextBox2 se asigna al valor almacenado en YName. Intenta
Recomendación para el profesor Esta unidad se pueden comprender más fácilmente si el alumno le sigue creando el mismo código en su propia aplicación de Visual Studio, según se solicite.
cambiar los valores de XName e YName en tu código y ejecuta tu programa nuevamente. Ahora vamos a modificar este programa. Agrega un tercer cuadro de texto. Despeja la Propiedad de Texto del TextBox3. Asegúrate que la Propiedad de ReadOnly de TextBox3 esté asignada a False.
Unidad 06 – XY, Arkansas
Página 132 de 322
Haz doble clic en Button1 para editar el código de evento de clic. Modifica tu código para que aparezca así:
Dim XName as String Dim YName as String Dim ZNombre as String ZNombre = TextBox3.Text XName = ZName YName = XName TextBox1.Texto = XName TextBox2.Texto = YName Crea e inicia tu aplicación. teclea algún texto en el TextBox3. Haz clic en el botón de "Show XY". ¿Qué es lo que pasa? Tu código declara tres variables de tipo cadena. La variable ZName se asigna a propiedad de Texto del TextBox3. La variable XName se asigna a Zname (que anteriormente se había asignado a la propiedad de Texto del TextBox3). La variable YName se asigna a XName (que apenas se asignó al valor almacenado en XName) Después, el código asigna la propiedad de Texto del TextBox1 a XName a la propiedad de Texto del TextBox2 a YName. Este código muestra cómo asignar el valor almacenado en una variable a aquel de una variable diferente. Aquí hay un último ejemplo para Show cómo se utilizan las variables globales. Inicia una nueva Aplicación de Windows denominada TotalButtonClicks. Agrega tres Botones al formato1. En la ventana de Código encontrarás el código:
Windows Form Designer generated code Justo después de esta línea de código, agrega el siguiente código:
Dim TotalButtonClicks as Integer
Unidad 06 – XY, Arkansas
Página 133 de 322
Haz doble clic en el Button1 y agrega el siguiente código al manejador de eventos de clic.
TotalButtonClicks = TotalButtonClicks + 1 MessageBox.Show(TotalButtonClicks) Agrega el mismo código a los manejadores de eventos de clic para el Button2 y Button3. Crea e inicia tu aplicación. Haz clic en todos los botones en cualquier orden. Cada vez el número total de clics en botones se despliega en un cuadro de mensaje. Este código funciona porque declaramos una variable global denominada TotalButtonClicks en el código de forma. La variable global se utiliza para guardar el número total de clics en botones. Cada vez que el usuario haga clic en un botón, el valor almacenado en TotalButtonClicks aumenta en uno. El valor global no se pierde hasta que se cierra el formato.
Otros tipos de variables En Visual Basic.NET, puedes declarar variables de muchos tipos diferentes además de los tipos primitivos (cadena, entero, Booleano, sencillo, etc.) Estos otros tipos se integran en el entorno de .NET y puedes utilizarlos en todos los Lenguajes .NET. Muchos de estos tipos son propiedades de "Clases de Sistema". Las clases del Sistema contienen códigos que proporcionan una funcionalidad básica de los lenguajes .NET. La parte más difícil de aprender a programar mediante un lenguaje .NET es comprender las clases del Sistema y su funcionalidad. No tienes que aprender acerca de las clases del Sistema ahora. De vez en cuanto, Nikki o yo te demos algún código que emplee una propiedad o un método de las clases del sistema, así que conviene que seas capaz de reconocerlas. Ahora te daré un ejemplo del uso de las clases del sistema para configurar el color de fondo de un formato.
Abre tu aplicación de ShowXY y agrega un segundo botón al formato1. Cambia la propiedad de Texto del Button2 a "Color". Haz doble clic en el Button2 para editar el código de eventos de clic en botones. Agrega el siguiente código:
Dim MiColor as System.Drawing.Color MiColor = System.Drawing.Color.Blue Format1.ActiveForm.BackColor = MiColor Crea e inicia tu aplicación. Haz clic en el Button2. Tu código declaró una variable denominada MiColor del tipo System.Drawing.Color. La variable MiColor fue asignada a System.Drawing.Color.Blue, un System.Drawing.Color válido. Finalmente, la propiedad de ColorFondo del formato1 se asignó a MyColor. Nota que la propiedad ColorFondo debe asignarse a un valor del tipo System.Drawing.Color.
Unidad 06 – XY, Arkansas
Página 134 de 322
Puedes explorar las clases del Sistema por tu cuenta. La mejor manera es teclear System. (punto) en la Ventana de Código. IntelliSense despliega una lista de todas las propiedades y métodos disponibles para la clase del Sistema. Selecciona una propiedad o un método y teclea otro punto para ver si tiene sus propias propiedades y métodos. Hay mucho que explorar.
Unidad 06 – XY, Arkansas
Página 135 de 322
Llegada a XY ¡Llegamos--por fin a XY! Yo realmente disfruté el viaje. Dejaré que encuentres el PDA y puedas resolver los ejercicios. Después de eso, haz la prueba e iremos a que nos perforen la tarjeta del rally. Ahora que has aprendido acerca de las variables, serás realmente capaz de ayudarnos con el Reto del Rally.
06 Ejercicio 02 Rana saltarina Inspirado por el estanque de ranas que vimos en la mañana, creo que deberíamos escribir un programa de rana saltarina.
Rana saltarina Escribe un programa para simular el juego de rana saltarina. El archivo 06_proveit02_files contiene las instrucciones para este ejercicio y todos los archivos de soporte que puedas necesitar.
Crea una forma como ésta o utiliza 06_proveit02_template, que ya lo hizo para ti:
Coloca “Frog1” en el TextBox1.Texto. Coloca “Frog2” en el TextBox2.Texto. Cuando el usuario hace clic en un botón Leap, el contenido del cuadro de texto arriba del botón se asigna al cuadro que se encuentra dos cuadros a la derecha. No olvides vaciar el cuadro actual. Cuando tu programa funcione correctamente, muéstraselo a tu instructor.
Unidad 06 – XY, Arkansas
Página 136 de 322
06 Reto
Bicho
Splat, Otro bicho aplastado en el parabrisas. Me recuerda algo. Necesitamos practicar la búsqueda de bichos en un programa. La mayoría de ustedes saben que un error en un programa se llama bicho. El programa en 06_challenge_template está, deliberadamente, lleno de bichos. Diez de ellos. Cada línea de código excepto una tiene un defecto. Tu tarea es la de corregir cada error de modo que el programa pueda Crear y ejecutar. Puedes elegir el código correcto cuando la línea con error tiene una elección completamente inapropiada.
Bicho Encontrarás errores en un programa existente que los contiene. El archivo 06_challenge_files contiene instrucciones para este examen y los archivos de soporte que necesites.
Abre el archivo denominado splat.sln. Aplástalo. Cuando tu programa trabaje correctamente, muéstraselo a tu instructor. Recomendación para el profesor La plantilla contiene muchos errores intencionales. Se espera que el alumno corrija el código. No se requiere una corrección particular. Por ejemplo, si X = 123.4 es incorrecto, X = 123 es una corrección inaceptable pero también lo es X = 1234
Extensión / Desviación ¿Quién es Commodore Grace Hopper? ¿Por qué preguntaríamos eso en este Reto? Recomendación para el profesor Commodore Hopper descubrió el primer bicho de la Tecnología de Información – un auténtico bicho en los tubos de vacío de una de las primeras computadoras.
Unidad 06 – XY, Arkansas
Página 137 de 322
En una instrucción de evaluación, cuántos elementos se pueden asignar al lado izquierdo del signo de igual?
Las variables se usan para:
Cambiar propiedades Recordad valores de datos Cualquier número
La propiedad de una caja de texto siempre contiene qué tipo de datos?
Sencillos
Finalizar un programa
Antes de que uses una variable en un programa debes:
Declarar (Dim) la variable
Enteros
De cadena
Calcular la variable
Delinear la variable
Unidad 06 – XY, Arkansas
Página 138 de 322
Temas en el camino a Switchboard Switchboard, OK Operadores Operadores aritméticos Operadores de cadena El operador NOT en asignación Instrucciones Operadores en acción Código de depuración Llegada a Switchboard
Unidad 07 – Switchboard, Oklahoma
Página 139 de 322
Switchboard, OK Estamos listos para seguir avanzando. Siguiente parada, ¡Switchboard, Oklahoma! Cliff ya te ha enseñado cómo utilizar los instrucciones de asignación y las variables, de modo que ahora cuentas ya con algunas herramientas de programación básicas que puedes emplear. Ahora te enseñaré sobre los operadores en nuestro trayecto a Switchboard. El uso de los operadores es otra de esas herramientas básicas de programación que debes tener en su caja de herramientas. Una vez que aprendas cómo utilizar los operadores en Visual Basic.NET, podrás utilizarlos en cualquier lenguaje de programación. El uso de los operadores es fácil, cuando nos acerquemos a Switchboard, te mostraré cómo utilizar algunas de las herramientas de depuración que forman parte de Visual Studio.NET. Éstas te ayudarán a que tu código esté libre de errores, de modo que se pueda compilar en todo momento.
Unidad 07 – Switchboard, Oklahoma
Página 140 de 322
Operadores Así que, si los operadores son tan sencillos, ¿Haz escuchado hablar de ellos? Bueno, seguro que si, algunos ejemplos de operadores son la suma, resta, multiplicación y la división. Has estado empleando los operadores desde el primer grado. Es simplemente que no los llamabas de este modo. En programación, existen otros operadores también, para realizar cálculos matemáticos complejos y unir cadenas de texto. Los operadores generalmente actúan sobre dos valores, aunque algunos actúan exclusivamente sobre un valor único. Los valores se denominan operandos. La siguiente es la sintaxis básica para el uso de los operadores: operando 1, operador, operando 2: Por ejemplo, 3+4 En la expresión 3 + 4 hay dos operandos (3 y 4) unidos por un operador (+) El operador realiza una operación (es este caso, suma) sobre los dos operandos (3 y 4) Usar los operadores es fácil y también divertido, puedes crear ecuaciones muy complejas empleando los operadores. Comencemos revisando los operadores aritméticos—suma, resta, multiplicación y división. Después te mostraré cómo unir cadenas de texto y echaremos un vistazo a un operador especial denominado NOT.
Unidad 07 – Switchboard, Oklahoma
Página 141 de 322
Operadores aritméticos Reglas matemáticas, me agradan las matemáticas. Me encantaría hacer problemas matemáticos todo el día, pero en ocasiones me canso y comienzo a cometer errores. Los programas de computadora son excelentes para hacer problemas matemáticos. No cometen errores al sumar y nunca se cansan de hacer el mismo problema una y otra vez. ¿Suena esto demasiado bueno para ser verdad? Bueno, hay un pequeño problema. Aunque los programas hacen un gran trabajo al calcular las respuestas, éstos no pueden plantear los problemas. Ése es el trabajo que debes realizar como programador. Por eso es importante que comprendas cómo utilizar los operadores aritméticos en tu código. De esta forma puedes decirle a tu programa qué problema matemático deseas que resuelva. Dado que las computadoras son tan buenas para las matemáticas, todos los lenguajes de programación tienen un conjunto estándar de operadores aritméticos. Como estas operaciones son tan comunes, los símbolos utilizados para representar estos operadores en el código son básicamente los mismos en todos los lenguajes de programación. Esto lo facilita aún más.
Unidad 07 – Switchboard, Oklahoma
Página 142 de 322
La siguiente es una lista de los operadores aritméticos más comunes y los símbolos que se utilizan cotidianamente en comparación con los símbolos utilizados en el código. Nota que el único que es diferente es el de la multiplicación. En el código, usas * en lugar de una x para representar el operador de multiplicación. Operador Suma Resta Multiplicación División
Símbolo Cotidiano + x /
Símbolo de Código + * /
Veamos un par de ejemplos de operadores aritméticos en código.
3+4 18 - 2 33 * 3 66 / 6
Tanto C# como J# utilizan los mismos operadores como Visual Basic.NET. Utilizan +, -, * y / para la suma, resta, multiplicación y división.
Unidad 07 – Switchboard, Oklahoma
Página 143 de 322
Operadores de Cadena Sí, reglas matemáticas, pero no todos los programas que vayas a crear se relacionan con cálculos. En ocasiones tu programa solo requiere trabajar con cadenas de texto. ¿Sabías que en Visual Basic.NET y otros lenguajes de programación pueden “sumar” texto? En realidad, no es como la suma regular de números. La “suma” de texto se denomina “concatenación”, que es simplemente un nombre atractivo para llamarle a la unión de dos cadenas de texto juntas. En Visual Basic.NET, el operador de concatenación es un signo de conjunción (&) Lo usas justo como el operador de suma, pero con cadenas en vez de números. Los siguientes son un par de ejemplos: ”Bill” & “Mike ”1” & “2”
Recomendación para el profesor Dado que Visual Basic intentó ser flexible, en ocasiones aceptará un signo de más (+) en lugar de uno de conjunción (&) cuando ambos operandos se definen como cadenas. Ésta es una mala técnica de codificación. Estimule a los alumnos a utilizar siempre el signo de conjunción. En C# y J# no utilizamos un signo de conjunción (&) para unir cadenas de texto. Utilizamos un signo de más (+). Observa esta línea de código nombre completo = “Bill “ + “Bob”;
Cuando unes dos cadenas de textos utilizando el operador de concatenación, Visual Basic no puede agregar automáticamente ningún espacio, tendrás que decirle al código cuando agregarlos, puedes usar cualquiera de los siguientes métodos: “Bill” & “ “ & “Mike” o “Bill “ & “Mike”
Unidad 07 – Switchboard, Oklahoma
Página 144 de 322
El Operador NOT El operador NOT es un operador especial que sólo opera sobre un único
Cuando ?
operando. Además, el operando debe evaluarse según un valor Booleano (True o False). El operador NOT cambia un valor False a True y un valor True a False. Observe estos ejemplos.
NOT (True) NOT (NOT (True)) No sé por qué deseas utilizar el último enunciado, pero bueno.
Atención, en C# utilizamos un signo de exclamación (!) en lugar de NOT. Revisa este código C# TextBox3.Visibl e = !(TextBox1.Visible);
.
Unidad 07 – Switchboard, Oklahoma
Página 145 de 322
Instrucciones de asignación ¿Así que cómo utilizas los operadores en el código? La mayor parte del tiempo utilizas un enunciado de asignación. Recuerda, un enunciado de asignación tiene el aspecto de una ecuación con un signo de igual en él. Los operadores y operandos se colocan del lado derecho del signo de igual. La expresión al lado derecho del signo de igual se evalúa, después el lado izquierdo de la ecuación se determina en este valor. Aquello que se encuentra del lado derecho de la ecuación debe evaluarse según el mismo tipo que el lado izquierdo para que el código realice la compilación. A continuación se proporcionan un par de ejemplos de uso de los operadores aritméticos y el operador de concatenación en instrucciones de asignación.
Dim FormWidth as Integer FormWidth = 200 + 300 Dim FormHeight as Integer FormHeight = 1000 / 2 Dim Winnebagoname as String Winnebagoname = “Códe” & “Bus”
Unidad 07 – Switchboard, Oklahoma
Página 146 de 322
Los operadores en acción Los ejemplos que acabo de proporcionarte eran bastante simples, con sólo dos operandos y un único operador en cada enunciado de asignación. Sin embargo, en el mundo real de la codificación, frecuentemente deberás traducir fórmulas o hacer cálculos que implican muchos operadores y operandos. Afortunadamente, con la mayoría de los lenguajes de programación, puede añadir tantos operandos y operadores como requieras para concatenar texto o convertir fórmulas a código. Además, puedes utilizar variables como operandos. ¡Exacto! Los operadores funcionan sobre las variables también— siempre y cuando sean del tipo correcto. Aún más, puedes incluso determinar una variable en una expresión que contenga a la variable misma. Así que veamos unos cuantos ejemplos que son un poco más complejos. El primer ejemplo calcula la circunferencia de las llantas de la camper.
Población
Dim TireCircum As Single Dim TireDiam As Integer Dim PiValue As Single PiValue = 3.14159 TireDiam = 18 TireCircum = TireDiam * PiValue Este ejemplo calcula el costo promedio de gasolina en marzo y abril. Nota que empleé paréntesis para asegurarme que los costos se sumaran y que los galones se sumaran también antes de dividirlos.
Dim MarchCost As Single = 123.66 Dim AprilCost As Single = 231.45 Dim MarchGallons As Single = 87.4 Dim AprilGallons As Single = 157.2 Dim CostPerGallon As Single CostPerGallon = (MarchCost + AprilCost) / (MarchGallons+ AprilGallons)
Unidad 07 – Switchboard, Oklahoma
Página 147 de 322
Recomendación para el profesor
Puedes usar el paréntesis en tu código tal y como lo haces en problemas normales de asociación. Cuando pones algo entre paréntesis, se evalúa primero, por ejemplo:
Revise el orden de las operaciones. Cuando no hay paréntesis, la división y multiplicación se realizan antes que la suma y resta. Promueva el uso de paréntesis para asegurar que los cálculos se realicen como pretende el programador. NOT hay problema en utilizar demasiados paréntesis.
(5+7)/(1+5)=2 En esta operación, (5+7) se evalúa primero, (1+5) después, y al último se ejecuta la operación de división. La respuesta en 2. Sin los paréntesis, obtenemos una respuesta diferente: 5+7/1+5=17 Usa el paréntesis en tu código cuando quieras decirle al programa el orden el cuál deseas que se ejecuten las operaciones.
Unidad 07 – Switchboard, Oklahoma
Página 148 de 322
Operadores de comparación Recuerda, ¿mencioné que puedes especificar una variable para una expresión que contiene a la variable misma? ¿Cómo es eso, preguntarías? Observa el siguiente ejemplo y ve si puedes descubrir lo que se desplegará en el cuadro de mensajes.
Dim MileCounter as Integer MileCounter = 100 MileCounter = MileCounter + 200 MileCounter = MileCounter + 400 MsgBox.Mostrar (MileCounter) El cuadro de mensajes desplegará 700, que es el valor del MileCounter cuando se requiere el cuadro de mensajes. Así es como funciona. Las primeras dos líneas del código enuncian la
Recomendación para el profesor Revise la diferencia entre asignar un valor y agregar un valor. TextBox1.text = “Hello” en comparación con TextBox1.Text= TextBox1.Text & “Joe”
variable del MileCounter y establecen su valor inicial en 100. La tercera línea del código toma el valor actual del MileCounter (100) y le suma 200 para obtener 300. Recuerda, el lado derecho de la ecuación siempre se evalúa primero. Después el lado izquierdo de la ecuación (MileCounter) se especifica en el valor del lado derecho de la ecuación (300). La cuarta línea del código toma el valor actual del MileCounter (ahora 300) y le suma 400 para obtener 700. El MileCounter se especifica en este valor, mismo que despliega el cuadro de mensajes. Para el lado izquierdo de la ecuación es irrelevante cómo se calcula el resultado del lado derecho de la ecuación, siempre y cuando los tipos coincidan. En lo concerniente al lado izquierdo de la ecuación, la variable del MileCounter del lado derecho es sólo una variable más, no ella misma. Determinar una variable para una expresión, la cual contiene a la variable misma, es una práctica de codificación común con soporte en todos los Lenguajes .NET. Esto evita el problema de tener que crear otra variable para almacenar temporalmente un valor intermedio. Como lo muestra mi ejemplo, esta técnica es perfecta para contar o añadir una serie de valores. ¿Sabías que la línea de código más común es probablemente variable = variable + 1, que se utiliza para contar algo? Frecuentemente se utiliza para contar el número de veces que se completa un ciclo. Te diré más sobre los circuitos a medida que avancemos en nuestro trayecto.
Los operadores NOT y de concatenación en acción Demasiadas matemáticas ahí. Ahora voy a mostrarte un ejemplo rápido del operador de concatenación en acción y después uno del operador NOT. A continuación aparece un ejemplo que concatena variables de texto y despliega el resultado en un cuadro de texto.
Dim FirstName As String Dim LastName As String Name = “Bob” LastName = “Marley” TextBox1.Text = Name & “ “ & Last Name ¿Notaste que tuve que decirle a Visual Basic.NET que agregara un espacio entre el nombre y el Apellido? El operador de concatenación no agrega espacio automáticamente.
Mi último ejemplo te muestra cómo utilizar el operador NOT para ocultar un cuadro de texto siempre que se muestre otro cuadro de texto. Recuerda que el operador NOT se utiliza en tipos Booleanos. Unidad 07 – Switchboard, Oklahoma
Página 149 de 322
TextBox1.Visible = True TextBox2.Visible = NOT (TextBox1.Visible) No sé por qué querría utilizar esa última línea de código.
Unidad 07 – Switchboard, Oklahoma
Página 150 de 322
07 Ejercicio 01
Costo de la gasolina
¿Puedes calcular el costo de la gasolina para el siguiente tramo de nuestro viaje? Inténtalo. 1. Crea un formato que tu mismo(a) diseñes. Incluye los siguientes elementos:
Costo de la gasolina
nombre de forma apropiado; En este ejercicio usarás lo que cuatro cuadros de texto para mostrar haz aprendido acerca de los operadores para diseñar un estos puntos: programa que calcula los costos o Millas hasta el siguiente destino de la gasolina. El archivo file07_proveit01_files o Millas por galón (MPG) para el contiene instrucciones para este ejercicio y todos los archivos de soporte que vehículo puedas necesitar o Precio por galón de gasolina o Costo total de la gasolina requerida cuatro rótulos para identificar cada cuadro de texto. un botón de comando marcado para iniciar el cálculo.
2. Después de que el usuario del programa Recomendación para el teclea la distancia, MPG y precio, calcula el profesor costo total para llegar a la siguiente ciudad Costo = (distancia / MPG) * precio destino. 3. Una vez que hayas creado tu formato, crea la solución. Si no hay errores en ella, elige Depurar / Inicio para ejecutar tu programa. Si tu programa funciona correctamente, muéstraselo a tu instructor. Extensión / Desviación Dale un formato al costo total que tenga la apariencia de dinero. Estudia el siguiente código. X = 123.45 X = FormatCurrency(X)
Unidad 07 – Switchboard, Oklahoma
Página 151 de 322
Recomendación para el profesor Adentrarse en un programa línea por línea al mismo tiempo que se visualiza el contenido de las variables, resulta extremadamente valioso. Hay demasiados alumnos que ignoran esta lección. Cuando después tienen problemas con su código, le piden ayuda a un vecino o al instructor, en lugar de intentar encontrar el problema ellos mismos. Cuando le ayuda a un alumno a depurar su programa, insista en que se adentre con usted en el código.
Código de depuración Estás haciendo un gran trabajo! Hasta ahora has creado bastantes códigos, también has creado y operado muchos proyectos. Tal vez no todos tus proyectos hayan realizado la compilación a la primera, pero seguramente estás mejorando al descubrir cuál es el problema con tu código y resolverlo. De modo que ahora te daré algunos consejos que te ayudarán a resolver tus problemas aún más rápido. Resolver los problemas de un código se denomina depuración. La depuración es un paso necesario para hacer que un programa se ejecute sin errores y produzca los resultados correctos. Antes que nada te mostraré cómo Visual Studio te ayuda a depurar tu código a medida que lo estás creando. 1. Primero crea una nueva Aplicación de Windows denominada Depurar Vista. Agrega un botón y un cuadro de texto a format1. Haz doble clic en el Botón 1 y agrega el siguiente código. MyName = “Bill” TextBox1.Text = MyName 2. Nota que incluso antes de que Crearas tu proyecto, Visual Studio.NET puso una línea azul en zig zag bajo MyName en la primera y segunda líneas del código. ¿De qué se trata? Bueno, Visual Studio.NET es lo suficientemente inteligente para darse cuenta (incluso antes de que creemos algo) que no enunciaste la variable MyName. Esto es una advertencia de que hay algún problema con el código antes de que realices la compilación. 3. Crea y ejecuta tu proyecto. La Ventana de Resultados muestra que hubo un error. La Lista de Tareas te muestra
Unidad 07 – Switchboard, Oklahoma
Página 152 de 322
por qué falló. Ves dos líneas en la lista de tareas que te notifican que no se has enunciado el nombre en ‘MyName’.
Unidad 07 – Switchboard, Oklahoma
Página 153 de 322
4. Haz doble clic en “Nombrar” si ‘MyName’ no se enuncia en la Lista de Tareas. Te llevará al lugar del código en dónde se encuentra el error.
5. Notas que la variable MyName se encuentra resaltada—éste es el problema que debes resolver. Agrega la siguiente línea de código al evento de clic del Botón 1 para resolver el problema. Dim MyName as String La línea azul en zig zag desaparecerá. 6. Crea ejecuta tu proyecto. Se compilará sin errores. has depurado tu programa con éxito.
Unidad 07 – Switchboard, Oklahoma
Página 154 de 322
Entrar al código En ocasiones los errores en tu código no serán errores que Visual Studio.NET pueda detectar y advertirte sobre ello. Tu programa se compila sin errores, pero los resultados o efectos no están muy bien. En este caso, sus errores pueden ser errores de lógica o flujo del programa, en lugar de errores de sintaxis. Éstos son errores que has incorporado en el diseño del programa, pero que no son considerados por Visual Studio.NET como errores en el código, dado que la sintaxis es correcta. En casos como éste, resulta útil poder “adentrarse” en tu código, línea por línea, para ver cómo se está ejecutando y qué camino está tomando. Por lo general estableces un “punto de quiebre” en el código, después “te adentras” en el código para ver cómo ejecuta línea por línea. El punto de quiebre actúa como un signo de alto—la ejecución se detiene en la línea del código que has marcado con un punto de quiebre. Después oprime la tecla F11 para ejecutar cada línea del código a su vez. Ahora te mostraré cómo funciona. 1. Encuentra la siguiente línea de código en el evento de clic del Botón 1: MyName = “Bill” Ubica el cursor en algún lugar sobre esta línea de código. Haz clic con el botón derecho del ratón y seleccione Insertar Punto de Quiebre del menú desplegable. 2. Nota que la línea de código se resalta en color café y que aparece un círculo color café en el margen izquierdo de esta línea de código. Crea y ejecuta tu programa. Cuando aparezca el formato haz clic en el Botón.
Unidad 07 – Switchboard, Oklahoma
Página 155 de 322
3. El código ejecuta y hace correr la línea de código que marcaste con el punto de quiebre (MyName = “Bill”) Esta línea de código no se ha ejecutado aún. La línea de código se resalta en amarillo y el círculo café que se encuentra junto tiene ahora una flecha amarilla dentro. 4. En la Ventana de código desplaza el cursor sobre la variable MyName. Aparecerá un consejo mostrándote el valor de la variable MyName. Actualmente MyName = Nada, pues aunque la variable se ha enunciado, ésta no se ha determinado. 5. En la Ventana de código desplaza el cursor sobre la propiedad de Texto del Cuadro de Texto 1. Aparece un consejo que te muestra el valor de la propiedad de Texto. Actualmente Texto = Cuadro de Texto1. Oprime la tecla F11. Esto realiza la Introducción en el código, ejecutando la línea actual (MyName = “Bill”) y resaltando la siguiente línea en amarillo. 6. En la Ventana de Código, desplaza el cursor sobre la variable MyName. El consejo muestra MyName = Bill porque acabamos de fijar el valor de esta variable.
Unidad 07 – Switchboard, Oklahoma
Página 156 de 322
7. En la Ventana de código desplaza el cursor sobre la propiedad de Texto del Cuadro de Texto 1. El consejo muestra Texto = Cuadro de Texto 1. Este valor no ha cambiado. Oprime la tecla F11 de nuevo. Esto realizará la Introducción en el código, ejecutando la línea actual (Cuadro de Texto 1.Texto = MyName) y resaltando la siguiente línea en amarillo. 8. En la Ventana de Código, desplaza el cursor sobre la variable MyName. El consejo muestra MyName = “Bill” porque el valor de esta variable no ha cambiado. 9. En la Ventana de código desplaza el cursor sobre la propiedad de Texto del Cuadro de Texto 1. El consejo muestra Texto = “Bill” porque acabamos de fijar esta propiedad en la variable MyName. Oprime la tecla F11 una vez más. El formato aparece de Nuevo porque el programa ha terminado de ejecutar el código en el evento de clic del botón. Haz clic en la X que se encuentra en el extremo del formato para cerrarlo. 10. En la Ventana de Código, haz clic en el inicio de la línea de código con el punto de quiebre. Haz clic con el botón derecho del ratón y selecciona Eliminar Punto de Quiebre del menú desplegable.
Unidad 07 – Switchboard, Oklahoma
Página 157 de 322
Ya has finalizado la sesión de depuración. Resulta bastante práctico adentrarse en tu código línea por línea. Puedes seguir la ruta que tu programa emplea a medida que ejecutas tu código. En ocasiones tal vez descubras que le has dicho accidentalmente a su programa que ejecute tu código en el orden incorrecto, o que ha utilizado una variable errónea en un enunciado de asignación. Adentrarse en tu código te muestra en dónde se ha desviado erróneamente tu programa. A medida que te introduces en el código, puedes monitorear los valores de las propiedades y variables moviendo tu cursor sobre ellos en la Ventana de Código. Los valores se actualizan después que se ejecuta cada línea del código. Estas técnicas de depuración se vuelven más importantes a medida que tu código se hace más complejo. Un código complejo es más difícil de depurar. Pronto aprenderás cómo controlar el orden en que se ejecuta tu código utilizando instrucciones “If” y “bucles”. Las herramientas de depuración son extremadamente valiosas para rastrear cómo ejecuta tu programa estos tipos de instrucciones.
Llegada a Switchboard Ése fue un gran viaje, Hablamos sobre muchas cosas en el trayecto. Ahora te debes sentir ya bastante cómodo utilizando los operadores para decirle a tu código cómo hacer problemas matemáticos y unir cadenas. Puedes incluso utilizar las herramientas de depuración de Visual Studio.NET como ayuda para diagnosticar problemas. Creo que encontrarás que las Pruebas son más divertidas y desafiantes a medida que avancemos. Intenta realizar aquellas que se encuentran en el PDA. Mantente actualizado resolviendo la prueba y después Cliff nos llevará a nuestro siguiente destino.
Recomendación para el profesor Para reforzar esta habilidad, haga que cada uno de los alumnos demuestre individualmente su dominio en la técnica utilizando un programa previamente creado.
Unidad 07 – Switchboard, Oklahoma
Página 158 de 322
07 Ejercicio 02
Depurar un programa
Practiquemos ahora las habilidades de depuración que acabas de aprender. He creado un programa que se encuentra al descargar 07_proveit02_template. Éste es un programa completo. No tienes que crear ningún código en lo absoluto. Sólo debes encontrar el archivo denominado DebugMe.sln y después hacer doble clic en él. Tu tarea, si eliges aceptarla, es escribir en un archivo de texto, un documento de Word o en una vieja hoja de tareas de matemáticas, las respuestas a tres preguntas. 1. ¿Qué valor introdujiste en el cuadro de texto del formato?
Depurar un programa Utiliza tus habilidades de depuración que acabas de aprender para encontrar los valores de dos variables de tu programa
El archivo file_07proveit_files contiene las instrucciones para este ejercicio y los archivos de soporte que necesites.
2. ¿Cuál es el valor final de la variable denominada Respuesta Uno? 3. ¿Cuál es el valor final de la variable denominada Respuesta Dos? El código de este programa se ha hecho deliberadamente confuso y complicado para que no tengas la tentación de intentar descubrir cómo es que llega el programa a sus respuestas. Todo lo que tienes que hacer es colocar e círculo de depuración de punto de quiebre de color café en el margen vertical izquierdo, adentrarte en el código, después colocar el cursor sobre la variable en donde deseas ver el valor DESPUÉS que se haya ejecutado esa línea de código. Ésta es una de las herramientas más valiosas que debes utilizar en todos tus programas futuros. Cuando tengas las respuestas, muéstreselas a su instructor.
Unidad 07 – Switchboard, Oklahoma
Página 159 de 322
07 Reto
Calculadora de volumen
¿Recuerda los pisapapeles de cristal que vimos ayer en la tienda de regalos? Uno era un cubo y el otro una esfera. Aún me pregunto cuál era el más pesado. Dado que están hechos del mismo material, aquel con mayor volumen es el más pesado. Creemos un programa para calcular el volumen de un cubo y el volumen de una esfera. Dibuja una forma que se vea como ésta:
Lado del cubo
Calculadora de volumen Determina el volumen de un cubo y una esfera. El archivo 07_challenge_files contiene las instrucciones para este reto y los archivos de soporte que puedas necesitar. Haz clic en el botón de descarga para bajar este archivo.
Radio Esfera
Calcular Volumen cubo
Volumen esfera
La longitud de un lado del cubo va en el primer cuadro y el radio de la esfera va en el segundo cuadro. En caso de que no hayas prestado atención a la clase de geometría, a continuación se encuentran algunas fórmulas. El volumen de un cubo es el lado al cubo (multiplicado por sí mismo 3 veces) El volumen de una esfera es cuatro tercios Pi veces el radio al cubo. Podrías utilizar 3.14 como el valor de Pi, o bien utilizar Math.PI. Una vez que tu programa funcione correctamente, muéstraselo a tu instructor.
Unidad 07 – Switchboard, Oklahoma
Página 160 de 322
Extension / Desviación Sólo por diversión, ¿puedes encontrar dos valores que produzcan los mismos volúmenes, por lo menos de 4 puntos decimales? Si eres especialmente bueno para las matemáticas, ¿puedes agregar una segunda parte al formato que inicie con el volumen y calcular el lado y el radio que producen ese volumen?
Unidad 07 – Switchboard, Oklahoma
Página 161 de 322
¿Que se usa para cambiar la secuencia en la cuál se evalúan los operadores?
¿Cuál es el resultado de esta operación? SomeVariable = “55” & “One”
Dos puntos
56
Paréntesis
55Uno
ampersands
desconocido desconocido
¿Que operador se usa para concatenar dos cadenas?
¿Cuál es el resultado de esta operación?
And = &
Unidad 07 – Switchboard, Oklahoma
Página 162 de 322
Temas en el camino a WhatIf: WhatIf, TX Lógica Booleana Operadores Booleanos Operadores de comparación Código condicional Instrucción If…Then Más de una instrucción If …Then Más de un condicional Operadores Booleanos en código Llegada a WhatIfTemas
Formatted: Spanish (Spain)
en
Unidadt 08 – WhatIf, Texas
Páginaage 163 ofde 322
WhatIf, TX En nuestro ultimo viajeOn our last trip, JenSusana lete mostró todo sobre el uso de operadoresshowed you all about using op para crear ecuaciones matemáticas en tsu códigoerators to create math equations in your code. No sé mucho de matemáticas, pero sí de lógicaI'm not so much into math, but I am into logic. La lógica es el procedimiento que usted utilizas para tomar decisionesogic is the process you use to make decisions. Tomamos decisiones todos los días de nuestra vida We make decisions everyday of our lives. Yo he tomado algunas buenas decisiones, como cuando decidí llamar a una estación de radioI've made some good decisions. Like when I y me ganédecided to call the radio station and unos boletos gratis para el concierto del grupo won those free tickets to see the band "Whatever" in concert. También he tomado algunas malas decisiones, ¡como meter mi pantalón de mezclilla en la lavadora antes dI've made some bad decisions tooe sacar de la bolsa los boletos del concierto.!. Like putting my jeans in the washing machine before I took the concert tickets out of my pocket! En finBuenoWell, "Whatever" siempre estará por aquíwill always be around --– Los veré el año que vieneI'll see them next year. Nos dirigimos aWe're heading for WhatIf, Texas. WhatIf se encuentra en medio a la mita de una granis in the middle of this big, llanura planaflat prairie. Tal vez vas a pensarpiense que no hay mucho que hacer ahí, pero sete equivocasYou'd think there wouldn't be much to do there, but you'd be wrong. Existen millones de posibilidades enThere are a million possibilities in WhatIf. En el trayectoOn our way, tle mostraré cómo los programas de computadoración toman decisiones utilizando la fórmulaI'm going to show you how computer programs make decisions using the "IfSiIf...ThenEntoncesThen" statement. Estaba pensando, ¿qué tal si nos equivocamos en el camino damos una vuelta errónea al dirigirnos aI was just thinking. What if we made a wrong turn on our way to WhatIf? ¡Tal vez nunca lleguemosWe might never get Unidadt 08 – WhatIf, Texas
Páginaage 164 ofde 322
Formatted: Justified
Unidadt 08 – WhatIf, Texas
Páginaage 165 ofde 322
Tomar dDecisionesMaking Decisions Tengo que tomar decisiones todo el tiempoI have to make decisions all the time. ¿Qué color de calcetines debo usarWhat color socks should I wear? ¿Dónde debo ponermego mi siguiente tatuajeWhere should I get my next tattoo? ¿DeboMe comermeo toda una pizza extra grande de anchoasShould I eat an entire extra large anchovy pizza?? ¡Estoy seguro de que ustedtu tomas también muchas decisiones importantes I'm sure you make a lot of important decisions too.! En realidad, la gente tiene mucha suerteActually, people are pretty lucky. Muchas veces que tenemos que tomar Cuando tomamos uuna decisión, frecuentemente tenemosdisponemos de toda una variedad de opciones posibles, como qué sabor de helado comprarWhen we make a decision, we often have a whole lot of choices. Like what flavor of ice cream to buy, qué tipo dewhat kind of múusica escuchar o to listen to, or con quién pasearwho to hang out with. Los programas de computadoraprogramas de computación no tienen tanta suerteComputer programs aren't so lucky. Éstos deben tomar decisionesThey con base en si algo es Verdadero o Falsohave to make decisions based on whether something is True or False,. eEsto es todoThat's it. ¿Estae enunciadodeclaración es vVerdaderao oIs this statement True or is it fFalsaoe? Para éstasellos esto es un gran juego de 20 preguntasFor them it's one big game of 20 questions. Por ejemplo, imagínaetese que estás en un restaurante intentando ordenar una hamburguesa, papas fritas y cerveza de raízFor example, imagine you're in a restaurant trying to order a hamburger, fries, ¡y el mesero sólo puede hacertele preguntas para responder con sí o noand root beer and the waiter can only ask you yes or no questions.! ¿Desea algo de tomarDo you want something to drink? SíYes. ¿Desea caféDo you want coffee? No. ¿Desea téDo you want tea? No. ¿Desea refrescoDo you want soda? SíYes. ¿Desea refresco deDo you want a cola? No. Unidadt 08 – WhatIf, Texas
Páginaage 166 ofde 322
Formatted: Justified, Space Before: 0 pt, After: 0 pt, Line spacing: single
¿Desea cerveza de raízDo you want root beer? ¡SíYes.! Bueno, esto llevó seis preguntas ¡y ni siquiera he ordenado la hamburguesa y las papas fritas todavíaWell, that took six questions and I haven't even ordered the hamburger and fries yet.! ¡Avanza un poco lento pero, finalmente, obtendré mi ordenKind of slow going but eventually, I'd get my order.! Así es cómo un programa de computadoración toma una decisión;That's what it's like for a computer program to make a decision --– strictestrictamente con sí oly yes or no. Este tipo deThis kind of "pensamientothinking" or lógica se denomina lógicaogic is called Booleana (VerdaderoTrue/Falseo) logic. Formatted: Heading 1,Título 1 Car Car Car Car Car Car,Heading 1 Char Car Car Car Car Car Car Car Car Car
Unidadt 08 – WhatIf, Texas
Páginaage 167 ofde 322
Formatted: Heading 1,Título 1 Car Car Car Car Car Car,Heading 1 Char Car Car Car Car Car Car Car Car Car, Left Formatted: Heading 1,Título 1 Car Car Car Car Car Car,Heading 1 Char Car Car Car Car Car Car Car Car Car
Unidadt 08 – WhatIf, Texas
Páginaage 168 ofde 322
Lógica Booleana Logic Como viste en tu camino al Tablero de DistribuciónSwitchboardAs you saw on our way to Switchboard, los programas de computadoraprogramas de computación son buenos para resolver problemas matemáticoscomputer programs are good at doing math problems. También son buenos para resolver problemas de lógicaThey are also good at doing Booleana logic problems. En un problema de lógicaIn a Booleana logic problem, la respuesta es siempre Verdadero othe answer is always either True or Falseo, --– no haythere is no "más o menoskind of", "una especie desort of" onior "casialmost". Veamos, leTe mostraré algunos ejemplosLook, I de lógica'll show you some examples of Booleana logic.
4=4 ¿Es Is 4=4? Sí, es VerdaderoYes, that's True.
3=1+3 ¿Es Is 3=1+3? No, es Falsothat's False.
3=(6+12)/(1+5) ¿Es Is 3=(6+12)/(1+5)? SíYes, ethat's VerdaderoTrue.
Puedes ver que en cada uno de los problemas lógicos anteriores la respuesta es ya sea Verdadero o FalsoYou can see that in each of the logic problems above the answer is either True or False. Las respuestas no son números, colores, ni palabras. Así es como un programa de computadoración puede Unidadt 08 – WhatIf, Texas
Páginaage 169 ofde 322
Formatted: Justified, Line spacing: single
tomar decisionesThe answers aren't numbers, colors or words. This is how a computer program can make decisions. Si la respuesta es VerdaderoIf the answer is True, thel programa hace algo does something. Si la respuesta esIf the answer is Falseo, el the programa no hace nada doesn't do anything.
Unidadt 08 – WhatIf, Texas
Páginaage 170 ofde 322
Operadores Booleanos Operators Al igual que las matemáticas convencionalesJust like regular math, la lógica Booleana tiene sus propios operadoreslogic has its own operators. Pero no trabajan con números, sino solo con operandos But they don't work on numbers, they only work on Boolean operandos --–, es decir, Verdadero y True and Falsoe, that is. Éstos le permiten “añadir” enunciados de Verdaderos o Falsos conjuntamente de maneraformas especialesThey let you "add" True and False statements . Éstos pPueden emplearse para unir enunciadostogether in special ways. They can be used to join Booleanos ystatements to crear problematse more complex Booleanos más complejosproblems.
Formatted: Font: Verdana, 12 pt Formatted: Justified, Space Before: 0 pt, After: 6 pt, Line spacing: single
Formatted: Font: Verdana, 12 pt
Existen tres operadoresThere are three Booleanos operators: ANDYAND, ORR y, and NOTT. Los operadores ANDY y ORThe AND and OR actúan sobre dos operandos operators act on two operands. El operadorThe NOT actúa en un soloT operator acts on a single operando. Los tres dan un resultado que es tambiénAll three give a result that is also Booleano. Cada Each operatdor tiene sus propias has its own "reglasules" en cuanto al resultado que produce al actuar sobre los as far as what results it produces when acting on the operandos. Veamos algunos problemas de lógicaLet's look at some Booleana que utilizan los operadoreslogic problems that use the Booleanos operators. Después explicaré los detalles de cómo funcionanThen I will explain the details of how they work. Formatted: Font: Verdana, 12 pt
3=1+2 ANDYAND 2=1+1 Formatted: Font: Verdana, 12 pt
Es VerdaderoThat's True. Formatted: Font: Verdana, 12 pt
Tenemos aquí dos problemas lógicos separadosHere we have two separate logic pro unidos con el operador ANDYblems joined together with the AND operator. Primero evaluamosFirst we evaluate 3=1+2, lo cual es Verdaderowhich is True. Después Then we evaluatemos 2=1+1, lo cual también es Verdaderowhich is also True. Después Then we evaluatemos Verdadero YAND Verdadero True AND True que, dadas las propiedades especiales del operador YAND, which by the special properties of the AND operato, da una respuesta final der gives a final answer VERDADEROof Unidadt 08 – WhatIf, Texas
Páginaage 171 ofde 322
TRUE. Si ambos lados de una ecuación YAND son VerdaderosIf both sides of an AND equation are True, la respuestathe final eanswer is VerdaderoTrue. Formatted: Font: Verdana, 12 pt
3=1+2 ANDYAND 5=2+2 Formatted: Font: Verdana, 12 pt
EEs That's Falseo.
Formatted: Font: Verdana, 12 pt Formatted: Font: Verdana, 12 pt
Tenemos de nuevo dos problemas lógicos separadosAgain we have two separate logic pr unidos con el operador ANDYoblems joined together with the AND operator. Primero evaluamosFirst we evaluate 3=1+2, lo cual es Verdaderowhich is True. Después evaluamosThen we evaluate 5=2+2, lo cual eswhich is Falseo. Después evaluamos Verdadero YAND Then we evaluate True AND Falseo que, dadas las propiedades especiales del operador YAND, da una respuesta final de, which by the special properties of the AND operator gives a final answer of Falseo. Si cualquier lado de una ecuación YAND es Falso, la respuesta final esIf either side of an AND equation is False, the final answer is Falsoe. Formatted: Font: Verdana
Formatted: Justified, Line spacing: single
Unidadt 08 – WhatIf, Texas
Páginaage 172 ofde 322
Un último ejemploOne last example,
Formatted: Font: Verdana, 12 pt
3=1+2 ORÓOR 5=2+2 EEs VerdaderoThat's True.
PrimeroFirst we evaluamoste 3=1+2, lo cual es Verdaderowhich is True. Después evaluamosThen we evaluate 5=2+2, lo cual eswhich is Falseo. Después evaluamos VerdaderoThen we evaluate True ORR Falseo que, dadas las propiedades especiales del operador, which by the special properties of the OOR, da una respuesta final de VerdaderoR operator gives a final answer of True. Si cualquiera de los lados de una ecuación OOR es VerdaderoIf either , la respuesta final esside of an OR equation is True, the final Verdaderoanswer is true.
Formatted: Font: Verdana, 12 pt
Esto tal vez requiera algo de prácticaIt may take some practice, pero, después de haber trabajado algún tiempo con los operadoresbut after you've worked with the Booleanos , sete acostumbrarás a ellosoperators for a while, you'll get used to them. Afortunadamente, podemos mostrar todas las combinaciones posibles para el operador YAND en una simple tablaFortunately, we can show all the possible combinations for the AND operator in a simple table. No tienes que memorizarlas, puedes simplemente hacer referencia a esta tabla cuando lo necesitasrequieraYou don't have to memorize them; you can just refer back to this table when you need to. Lado iIzquierdo YLeft Side AND LLado dDerecho Right Side (rRespuesta fFinal Answer) VerdaderoTrue TrueVerdadero TrueVerdadero TrueVerdadero Falsoe Falsoe Falsoe TrueVerdadero Falsoe Falseo Falsoe Falsoe Lado iIzquierdoLeft Side
Right SideLado dDerecho
Del mismo modo, podemos mostrar todas las combinaciones posibles para el operadorIn the same way, we can show all the possible combinations for the ORR operator.
Unidadt 08 – WhatIf, Texas
Páginaage 173 ofde 322
Formatted: Justified, Line spacing: single
Left SideLado iIzquierdo
Right SideLado dDerecho
Lado iIzquierdoLeft Side ORR Lado dDerecho Right Side (rRespuesta fFinal) Answer) TrueVerdadero TrueVerdadero TrueVerdadero TrueVerdadero Falsoe TrueVerdadero Falsoe TrueVerdadero TrueVerdadero Falsoe Falsoe Falsoe
Formatted: Justified
Unidadt 08 – WhatIf, Texas
Páginaage 174 ofde 322
El operadorThe NOTot no une dos cosasoperator does not join two things together. Simplemente convierteIt si Falso en Verdadero y Verdadero en mply turns False to True and True to Falsoe. Right SideLado dDerecho TrueVerdadero Falsoe
No lLado dDerechot Right Side (rRespuesta fFinal Answer) Falsoe TrueVerdadero
Aquí hay algunos ejemplos del operadorHere are some examples of the NOTot operator. NOTot(3=1+2) Es That's Falseo. 3=1+2 es Verdaderois True. NOTo Verdadero est True is Falseo. NOTot(5=2+2) Es VerdaderoThat's True. 5=2+2 ies Falseo. NOTot Falso es Verdaderoe is True.
Unidadt 08 – WhatIf, Texas
Páginaage 175 ofde 322
Operadores de cComparaciónComparison Operators ¿Recuerdase que, Remember, NikkiNikki ttele ha dicho que los programas son excelentes para resolver problemas matemáticosold you that programs are great at solving math problems,, ¿pero no buenos para plantearlos but no good at setting them up? Bueno, lo mismo ocurre para los problemas de lógicaWell, the same thing is true about Booleana logic problems. Los programas de computadoraprogramas de computación son excelentes para resolverComputer programs are great at solv problemas de lógica ing very complex Booleana muy complejoslogic, pero no pueden plantearlos problems, but they can't set them up. De nuevoAgain, ése es tsu trabajo como programador,that's your job as a programmer --– plantear los problemas de lógicato set up the Booleana para que tsu programa los resuelvalogic problems for your program to solve. Cuando se ejecuta el códigoWhen the code is executed, ethel program a resuelve el problemasolves the problem. La respuesta será Verdadero o The answer will be True or Falsoe. El programaThe pro tomagram makes "una decisióon" dependiendo de si la respuesta al problema esg on whether the answer to Verdadero o Falsothe problem is True or False. TuUsted sabes que el signo de igual puede utilizarse con un operador de asignación, pero también puede utilizarse como unYou know that the equal sign can be used as an assignment operator, but it can also be used as a "operador de comparaciónison operator". En los ejemplos anterioresIn the examples above, el signo de igual está preguntandothe equal sign is asking the question,: "¿el lado izquierdo es igual al lado derechoIs the left side equal to the right side? ¿VerdaderoTrue or Falseo?" Existen otros operadores de comparación para comparar si el lado izquierdo es mayor al lado derechoThere are other comparison operators for comparing whether the left side is greater than the right side (>) o si el lado izquierdo es menoror whether the left side al is less than ( < >= < >= < >=