FUNDAMENTOS DE PROGRAMACIÓN
Practica 1
Iniciando con C#
1.- Tipos de aplicaciones.
2.- Pasos para crear el primer proyecto.
3.- Compilación y ejecución del proyecto.
4.- Manejo y corrección de errores.
Introducción
Comencemos a conocer el entornode C#, en estos ejemplos estaré utilizando Visual C#.NET 2008 express el cual es gratuito y se puede descargar desde la web.
Por lo mismo probablemente algunas capturas de pantalla varíen a los que usan la versión profesional, pero es muy poco y no debe afectar en lo mas mínimo al hecho de poder seguir los pasos mencionados en estos ejemplos. Para comenzar estaremos utilizando aplicaciones de consola, partimos de la idea de que los estudiantes ya saben el manejo de algoritmos, tienen conocimientos de programación estructurada y saben los conceptos básicos de programación orientada a objetos.
Nuestros primeros ejemplos estará basados en aplicaciones de consola y mas adelante veremos algunos ejemplos de aplicaciones windows.
Tipos de aplicaciones
Crear un programa en C# es relativamente fácil, primeramente debemos distinguir que tipo de aplicación queremos realizar, entre otras opciones que nos brinda Visual Studio.NET podemos hacer aplicaciones de consola mediante las cuales interactuamos con la consola de MSDOS y por lo mismo no podemos exigir un diseño impresionante con colores o tipos de letras, mucho menos imágenes, sin embargo las aplicaciones de consola son el corazón de muchas otras aplicaciones importantes.
O aplicaciones windows donde utilizamos la API de windows (botones, ventanas, menus, cuadros de textos, etc.), los que manejamos windows sabemos de las bondades de este tipo de aplicación en cuanto a que son más bonitas, más fáciles de utilizar por parte de usuario, pero por otra parte son también mas pesadas y lentas al consumir mayores recursos de la computadora.
Las diferencias en cuento a diseño son notables entre uno y otro, sin embargo no importa que tipo de aplicación se vaya a programar, en ambas necesitamos conocer perfectamente las maneras adecuadas de codificar en C#.
Mi primer programa
Comencemos un programa bastante sencillo como lo es mostrar el mensaje “Hola mundo” en pantalla, como mencioné anteriomente y
Primer paso: crear el proyecto
Lo primero que vamos a hacer es crear el proyecto en 3 sencillos pasos.
1.- Primeramente abrimos C# o Visual Stududio.NET y seleccionamos la opción “Nuevo proyecto”.
2.- Elegimos el tipo de aplicación que queremos realizar, en nuestro caso utilizaremos una aplicación de consola, y le colocamos el nombre y le ubicación donde la vamos a guadar, luego pulsamos el botón“Aceptar”.
3.- Nos aparece el editor de texto con una codificación inicial, de la cual podemos eliminar algunas cosas que están de más, por ejemplo lo primero que encontramos son las librerias, que mas que librerías son clases proporcinadas
Mas abajo econtramos la función principal Main, esta función es básica ya que es la que busca el compilador para poder ejecutar el programa, sin embargo vemos que por defecto entre los paréntesis trae un nos parámetros a los que se llaman argumentos y que tampoco necesitamos y por lo mismo podemos eliminarlos.
De tal manera que lo correcto es tener un código inicial limpio, de esta forma, si por algún motivo no queremos hacerlo, no pasa nada igual correrá el programa sin ningún problema, solo es una medida para evitar tener código demás, un buen programador debe saber administrar el código que utiliza:
Con estos 3 pasos hemos creado nuestro primer proyecto, para los próximos ejemplos ya nos se explicarán tan detenidamente.
Segundo paso: Codificar
Para codificar es necesario conocer la sintaxis del lenguaje, lo cual poco a poco lo vamos a ir viendo, por ahora lo que pretendemos en dar a conocer como se crea un proyecto simple de consola.
En nuestro ejemplo la instrucción que muestra un mensaje en pantalla es Console.WriteLine seguida del texto que queremos que se muestre, antes de continuar considero importante entender que C# nos proporciona una manera bastante de agradable de codificar mediante una herramienta llamada IntelliSense la cual entre otras cosas nos muestra una ayuda de lo que estamos condificando, de tal manera que con tan solo escribir las primeras letras de la instrucción se despliega una ayuda de todas las instrucciones que tenemos a nuestra disposición que comienzan con lo que hemos tecleado, basta con seleccionar la que estmos buscando y orprimir la tecla Tab y automáticamente aparecerá la letra.
Muchos errores de codificación se derivan de que los programadores escriben mal la instrucción y este modalidad de ayuda permite no caer tanto en ese tipo de error y aún mas cuando se está comenzando en el lenguaje y por lo mismo no es tan conocido.
Tercer paso: compilar y ejecutar el programa
Ya que tenemos escrito el código del programa, seguramente queremos verlo ejecutandose, pues bien es fácil, podemo pulsar la tecla F5 o podemos presionar el botón con uan flechita verde que se encuantra en la barra de herramientas y si no tenemos ningún error podremos ver nuestro programa ejecutándo.
¿Pero porque el programa solo se muestra y se vuelve a cerrar solito? Pues bien
primeramente debo aclarar que no ha habido ningún error, simplemente que el compilador comenzó a ejecutar cada línea y al llegar a la última no hubo nada que lo detuviera y por eso termina el programa, debemos colocar una línea que haga el compilador se detenga a esperar a que el usuario pulse una tecla y de esta manera no se cierra, la instrucción que nos ayudará a lograrlo es Console.Read() la cual hace que el compilador se espere hasta que el usuario teclee cualquier tecla.
Como mencioné al principio es una aplicación que interactúa con la consola de MSDOS asi que no podemos exigir colores y demás configuraciones gráficas.
Como ya pudimos ver Console.WriteLine nos muestra una cadena de texto en la consola de MSDOS, pero tiene otra modalidad Console.Write que hace lo mismo con la diferencia de que el puntero se queda justo después de la cadena de texto, por ejemplo:
La finalidad en resumidas cuentas de cuando utilizar WriteLine o Write se encuentra en la idea de que cuando ecesitemos insertar un salto de línea o algo así como lo que sería un enter en algún editor de texto lo correcto es WriteLine, de lo contrario, si no necesitamos pasarnos a la siguiente línea lo correcto es utyilizxar Write.
Lo recomendable por ahora que estamos comenzando, es jugar con las dos modalidades y observar su comportamiento.
Errores en C#.NET
Lamentablemente no hay programas libres de errores ni programador que nunca cometa alguno, asi que vamos a entender un poco a identificar los errores que nos marque .NET, si al codificar hubieramos tenido algún error nos aparece un cuadro como el siguiente:
Del cual si pulsamos “Si” no habremos ganado gran cosa ya que lo que hace el compilador es ejecutar la última versión que estuvo correcta, asi que seguramente veremos complacidos como nuestro programa se ejecuta.
Para ubicar nuestro error y corregirlo lo indicado es pulsar el botón “No”, que a continuación nos muestra una ventana donde se detallan los errores que tenemos, por lo general los errores salen en inglés dependiendo de la versión de .NET que estemos utilizando, podemos dar doble clic a mensaje de error para que nos lleve automáticamente a la línea donde está la falla.
En este ejemplo me dice que me falta un punto y coma en la línea 9 del archivo Programa.cs, al darle doble clic me lleva a la parte donde está el error, lo que que sigue es corregirlo y volver a compilar y asunto arreglado.
Otra manera de identificar errores sin necesidad de imprimir es cuando vemos que alguna línea tiene subrayada alguna palabra, como en el ejemplo, falta cerrar las comillas y por eso.NET lo detecta y nos indica que tenenemos un error, algo similar a lo que hacen algunos editores de texto que dtetectan errores garamticales y ortográficos.
Preguntas para investigar 1.- ¿Que es C#?
2.- ¿Porque se llama C#?
3.- ¿C# es compilado o interpretado? 4.- ¿Que es una aplicación de consola.? 5.- ¿Que es una variable?
6.- ¿Que es un identificador? 7.- ¿Que es un error de sintaxis? 8.- ¿Que es un error de lógica?
9.- ¿Para que sirve la función Main en C#? 10.- ¿Para que no sirve Using en C#? 11.- ¿Que indica namespace en C#? 12.- Diferencia entre Write y WriteLine