Sie sind auf Seite 1von 18

C#

Captulo

C# .NET
Este libro est dirigido a todas aquellas personas que desean aprender el lenguaje de programacin C# y tienen conocimientos bsicos de programacin o no tienen ninguna experiencia previa en la programacin de computadoras. El enfoque del libro es guiar paso a paso en el aprendizaje del lenguaje. Aunque C# es un lenguaje orientado a objetos, en los primeros captulos adoptaremos una filosofa estructurada con el fin de hacer todava ms fcil el aprendizaje para todos nosotros.
Breve historia de la programacin para Windows 14 Comprender .NET 15 Cmo crear una aplicacin .NET 17 Conseguir un compilador de C# 18 El ambiente de desarrollo 18 Crear nuestra primera aplicacin 19 Resumen 29 Actividades 30

SERVICIO DE ATENCIN AL LECTOR: lectores@mpediciones.com

1. C# .NET

BREVE HISTORIA DE LA PROGRAMACIN PARA WINDOWS


Hace algunos aos, la nica forma de programar para Windows era hacer uso de un compilador de C o C++, realizando llamados al API de Windows. El API es una gran coleccin de funciones que se relacionan, que nos permiten comunicarnos con el sistema operativo. Por medio del API de Win32 se programaban las ventanas, los botones y dems elementos que componen una aplicacin Windows. El problema de este tipo de programacin era lo enorme y complejo que un programador encontraba el API Win32, que contena miles de funciones en su interior. Esto haca que realmente muy pocos programadores lo conocieran en su totalidad. Pero la complejidad no solamente se encontraba en la cantidad de funciones, sino tambin en la sintaxis y en la forma en que se programaba. Era necesario tener un conocimiento muy profundo. Para facilitar la programacin de las aplicaciones para Windows surgieron diferentes opciones, cuya finalidad era poder hacer las aplicaciones sin tener que pasar por la complejidad de Win32. Uno de estos intentos fue conocido como OWL. Sin embargo, tiempo despus Microsoft cre MFC para C++. MFC es un conjunto de clases que envuelve a Win32 y facilita su programacin. Con MFC los procesos ms comunes se agrupan en funciones de forma tal que con una simple llamada a una funcin de MFC se puede hacer lo que mismo para lo que antes se necesitaban 10 llamadas en Win32 y muchos parmetros. Sin embargo, Win32 est debajo de MFC. La programacin MFC simplifica las cosas, pero muchos programadores que venan del paradigma de programacin estructurada no se sentan a gusto con l. Otra de las opciones que surgieron fue Visual Basic, un lenguaje que logr gran popularidad, especialmente en Latinoamrica. Visual Basic tambin trabajaba por arriba de Win32, pero basaba su sintaxis en el antiguo lenguaje Basic. Es muy sencillo de programar y aprender, y una de las caractersticas que le dio gran popularidad fue la facilidad con la que se podan crear interfaces de usuario. Para esto slo haba que arrastrar componentes pre-armados, como botones, cajas de texto, etiquetas de texto, contenedores de imgenes, etctera. Tambin lo beneficiaba su fcil conectividad con bases de datos. Sin embargo, hasta antes de la versin .NET este lenguaje tena ciertas limitaciones, ya que no se poda llevar a cabo programacin orientada a objetos. Otro lenguaje que surgi con su propio framework es JAVA, cuya ventaja es ser multiplataforma. Una de sus caractersticas es el uso de un runtime, lo que indica que la aplicacin desarrollada, en lugar de correr directamente en el microprocesador se ejecuta en un programa llamado runtime y ste se encarga de
14

Breve historia de la programacin para Windows

ejecutar el cdigo en el microprocesador correspondiente. Si se tiene el runtime para Windows, el programa de JAVA se ejecuta sin problemas. Cuando nosotros desebamos tener un programa que se pudiera ejecutar, era necesario compilarlo. Cada uno de los lenguajes tena su propio compilador. No era sencillo poder compartir cdigo de C++ con cdigo de Visual Basic, haba que buscar un punto de comunicacin entre stos, por lo que la traduccin entre los lenguajes era difcil. Para poder compartir cdigo entre los lenguajes surge un modelo conocido como COM. COM nos permite crear componentes binarios. Esto quiere decir que yo puedo programar un componente en Visual Basic, y un programador de C++ puede tomarlo y hacer uso de l, ya que de por s el componente ya es cdigo compilado y no cdigo fuente en el lenguaje de origen. La programacin de COM tambin tena sus complejidades y surgi ATL para ayudar en su desarrollo. Con todo esto, llega el momento en el que es necesario ordenar, facilitar y organizar el desarrollo de las aplicaciones para Windows. Con esta filosofa surge .NET.

Comprender .NET
El framework .NET es una solucin a toda esa problemtica y brinda grandes beneficios, no solamente para el desarrollador, sino tambin para el proceso de desarrollo. En primer lugar, .NET permite trabajar con cdigo ya existente, es posible hacer uso de los componentes COM e incluso si lo necesitamos, realizar llamados al API de Windows. Cuando el programa .NET est listo es mucho ms fcil de instalar en la computadora de los clientes que las aplicaciones tradicionales realizadas en los lenguajes anteriormente nombrados. Hay una integracin fuerte entre los lenguajes. Un programador de C# puede entender fcilmente el cdigo de un programador de Visual Basic .NET y ambos pueden programar en el lenguaje con el que se sienten ms cmodos. Esto se debe a que todos los lenguajes que hacen uso de .NET comparten las mismas libreras de .NET, por lo que no importa en qu lenguaje programemos ya que las reconocemos en todos. La nica dificultad que podremos encontrar es la sintaxis utilizada en cada uno de los lenguajes, pero esto no ser un impedimento ya que con el correr de los aos la sintaxis de determinados lenguajes se ha implementado, modernizado y mejorado en los otros para lograr mayor facilidad en su comprensin. Empecemos a conocer los diferentes componentes de .NET.

CLR
El primer componente de .NET que conoceremos es el Common Language runtime, tambin conocido como CLR. ste es un programa de ejecucin comn a todos los lenguajes. Este programa lee el cdigo generado por el compilador y empieza su ejecucin, sin importar si el programa fue creado con C# o con Visual Basic .NET o algn otro lenguaje de .NET. El CLR lo lee y lo ejecuta.
15

1. C# .NET

Assembly
Cuando tenemos un programa escrito en un lenguaje de .NET y lo compilamos se genera el assembly, que contiene el programa compilado en lo que conocemos como CIL (Common Intermediate Language), y tambin informacin sobre todos los tipos que se utilizan en el programa.

CIL
Los programas de .NET no se compilan directamente en cdigo ensamblador del compilador. En su lugar, se compilan a un lenguaje intermedio conocido como CIL. Este lenguaje es ledo y ejecutado por el runtime. El uso del CIL y el runtime es lo que le da a .NET su gran flexibilidad y tambin su capacidad de ser multiplataforma. El framework .NET tiene lo que se conoce como especificaciones comunes de lenguaje o CLS, por sus siglas en ingls. Estas especificaciones son las guas que cualquier lenguaje que desee usar .NET debe de cumplir para poder interactuar con el runtime. Una ventaja de esto es que si nuestro cdigo cumple con las CLS podemos tener interoperabilidad con otros lenguajes, por ejemplo, creando una librera en C# y que un programador de Visual Basic .NET pueda utilizarla sin problema alguno. Uno de los puntos ms importantes de ests guas es el CTS, del ingls (Common Type System), sistema de tipos comunes. En los lenguajes de programacin, cuando deseamos guardar informacin, sta se coloca en una variable. Las variables tendrn un tipo denominado, dependiendo del la informacin a guardar. Por ejemplo, el tipo puede ser para guardar un nmero entero, otro para guardar un nmero con decimales y otro para guardar una frase o una palabra. El problema es que cada lenguaje guarda la informacin de manera diferente. Algunos lenguajes guardan los enteros con 16 bits de memoria y otros con 32 bits, incluso algunos lenguajes como C y C++ no tienen un tipo para guardar cadenas o frases. Para solucionar esto, el framework de .NET define por medio del CTS cmo funcionarn los tipos en su entorno. Esto es importante ya que todo lenguaje que trabaje con .NET debe de usar los tipos tal y como se sealan en el CTS. Ahora que ya conocemos los conceptos bsicos, podemos ver cmo todo esto se une.

.NET ES MULTIPLATAFORMA

Podemos ejecutar el framework .NET en Windows y en diversos entornos operativos. Esto significa que, podemos programar en una plataforma en particular, y mientras exista el runtime de nuestra aplicacin para cualquier otro sistema operativo, el programa se ejecutar sin problema en esta otra plataforma.

16

Cmo crear una aplicacin .NET

Cmo crear una aplicacin .NET


El primer paso a dar es tener un lenguaje de programacin, que en nuestro caso ser C#. Con ste creamos el cdigo fuente del programa. Cdigo fuente son las instrucciones que le dicen al programa qu hacer. Nosotros lo escribimos, y cuando hemos finalizado nuestra codificacin, entonces utilizamos el compilador, que toma el cdigo fuente y crea un assembly para nosotros. El assembly tendr el equivalente de nuestro cdigo, pero escrito en CIL, que ser interpretado fcilmente por el framework .NET. Esto nos lleva a otra de las ventajas de .NET. Nuestro cdigo puede ser optimizado por el compilador para la plataforma hacia la cual usaremos el programa, es decir, el mismo programa puede ser optimizado para un dispositivo mvil, una PC normal o un servidor, sin tener que hacer adaptaciones en l. Cuando deseamos invocar el programa, el runtime entra en accin, ya que lee el assembly y crea todo el entorno necesario para nosotros. El runtime empieza a leer las instrucciones CIL del assembly y las compila para el microprocesador de la computadora en la que corre el programa. Esto se conoce como JIT (Just In Time), compilacin Justo a Tiempo. De esta manera, a medida que se avanza en la ejecucin del programa, ste se compila. Todo esto ocurre de manera transparente para nosotros. El framework .NET provee los servicios de administracin de memoria y recolector de basura para los programas que se estn ejecutando. En los lenguajes no administrados como C y C++, el programador es responsable de la administracin de memoria. En programas grandes esto puede ser una labor complicada que puede llevar a errores durante la ejecucin del programa. Afortunadamente, los lenguajes administrados como C# tienen un modelo en el que nosotros como programadores ya no necesitamos ser responsables por el uso de la memoria. El recolector de basura se encarga de eliminar todos los objetos que ya no son necesarios. Cuando un objeto ya no es necesario el recolector lo toma y lo elimina. De esta forma, se libera memoria y recursos. El recolector de basura trabaja de forma automtica para nosotros. ste tambin ayuda a eliminar toda la administracin de recursos y la memoria que era necesaria en Win32. En algunos casos especiales como con los archivos, las conexiones a bases de datos o de red se tratan de recursos no administrados. Para estos casos debemos de indicar explcitamente cundo deben de ser destruidos.

MONO

Dentro de la comunidad de Linux existe un esfuerzo por llevar a cabo una implementacin de .NET conocida como Mono. De esta forma, los desarrolladores de Linux pueden aprovechar este framework. Un punto a tener en cuenta es que la versin .NET que maneja Mono no siempre es la ms reciente del framework debido al tiempo que lleva poder desarrollar esto.

17

1. C# .NET

Conseguir un compilador de C#
Existen varias opciones de compiladores para C#. En este libro utilizaremos la versin de C# que viene con Visual Studio 2008, pero tambin es posible usar versiones anteriores. Al momento de publicacin de este libro, este compilador utiliza la versin 3.5 del framework. La mayora de los ejemplos debe de poder compilarse y ejecutarse sin problema con las versiones anteriores del framework, incluso para aquellos que decidan utilizar Mono como opcin. Una mejor opcin, en caso de que no podamos conseguir la versin profesional de Visual Studio 2008, es la versin Express. Esta versin es gratuita y se puede descargar de Internet. Lo nico que se necesita es llevar a cabo un pequeo registro por medio de cualquier cuenta de Hotmail o Passport. Una vez que hemos descargado el compilador, podemos proceder a llevar a cabo la instalacin. La instalacin del compilador es muy similar a la instalacin de cualquier otro programa de Windows y tambin recordemos que debemos registrarlo antes de los 30 das de instalado.

El ambiente de desarrollo
Una vez finalizada la instalacin podemos iniciarlo. Siempre debemos recordar como buena prctica que en todo entorno de desarrollo nuevo al que accedemos, la mejor manera de familiarizarse con ste es investigndolo y apuntndonos en un papel o archivo de texto cmo acceder a las opciones ms comunes. As aprenderemos a manejarnos dentro de ste ms rpidamente. Cuando el programa inicia observaremos que se ve de forma similar a la siguiente figura: Bsicamente, la interfaz est dividida en tres partes. En el centro tenemos la pgina de inicio, en la que encontramos cmo llegar a nuestros proyectos ms recientes. Tambin en ella podemos recibir comunicados y noticias sobre el desarrollo de software con C#, comunicados emitidos desde el sitio web oficial de Microsoft. En esta misma parte de la interfaz, pero como pginas diferentes tendremos zonas de edicin. Estas zonas nos permitirn editar el cdigo del programa, las interfaces de usuario, los iconos y dems recursos. Editar el cdigo del programa es una actividad muy sencilla que no debe preocuparnos. Si sabemos utilizar cualquier tipo de editor de texto como Word,

EL COMPILADOR JIT

Al compilador JIT tambin se lo conoce como Jitter. Forma parte del runtime y es muy eficiente. Si el programa necesita volver a ejecutar un cdigo que ya se ha compilado, el Jitter en lugar de volver a compilar, ejecuta lo ya compilado, y de esta forma mejora el desempeo.

18

Crear nuestra promera aplicacin

Wordpad o Bloc de notas, entonces podemos editar el cdigo del programa. Los dems editores tambin son tiles, pero no los necesitaremos para los ejemplos de este libro.

Figura 1. Aqu vemos la ventana principal de C# Express 2008, cuyo entorno aparecer siempre que accedamos a ste.

Del lado derecho tenemos una ventana que se conoce como explorador de soluciones, en la que aparecern otras ventanas que nos dan informacin sobre el proyecto que estamos desarrollando. Veremos algunas de estas ventanas con detenimiento un poco ms adelante. En la parte inferior encontramos otra ventana. En esta zona generalmente aparecen las ventanas que utilizar el compilador para comunicarse con nosotros, por ejemplo estar all la ventana que nos indica los errores que tiene nuestro programa. En la parte superior encontraremos los mens y las barras de herramientas, que son tpicos de cualquier aplicacin Windows.

Crear nuestra primera aplicacin


Para familiarizarnos ms con C# Express lo mejor es crear un primer proyecto y trabajar sobre l. Comenzaremos creando un pequeo programa que nos muestre un mensaje en la consola o lnea de comandos de Windows. Luego adicionaremos otros elementos para que podamos explorar las diferentes
19

1. C# .NET

ventanas de la interfaz de usuario. Para crear un proyecto tenemos que seleccionar el men Archivo/Nuevo Proyecto. Aparecer un cuadro de dilogo como el que podemos ver en la siguiente figura.

Figura 2. ste es el cuadro de dilogo que usamos para crear un nuevo proyecto. Con l es posible crear diferentes tipos de proyectos.

En la parte superior del cuadro de dilogo aparecen listados los diferentes tipos de proyectos que podemos crear, entre ellos, debemos seleccionar el llamado Aplicacin de Consola Console Application para la versin en ingls. En la parte inferior colocaremos el nombre de nuestro proyecto. En este caso colocaremos MiProyecto (cada nuevo proyecto que crearemos tendr su propio nombre). Despus simplemente oprimimos el botn OK o Aceptar.

ENCONTRAR EL CDIGO FUENTE RPIDO

Si por algn motivo cerramos el editor del cdigo fuente o no aparece en nuestra interfaz de usuario, la forma ms sencilla de encontrarlo es por medio del explorador de soluciones. Simplemente debemos dirigirnos al documento que representa nuestro cdigo fuente y si hacemos doble clic en l, el cdigo fuente aparecer.fdgbdfghfg

20

Crear nuestra promera aplicacin

En algunos pocos segundos C# Express crea el proyecto. Visual Studio (en cualquiera de sus versiones) hace uso de soluciones y proyectos. Una solucin puede tener varios proyectos, por ejemplo, Office tiene diferentes productos como Word, Excel y PowerPoint. Office es una solucin y cada producto es un proyecto. El proyecto puede ser un programa independiente o una librera, y puede tener uno o varios documentos, que pueden ser el cdigo fuente y diversos recursos. Podemos observar que nuestra interfaz de usuario ha cambiado un poco. Las ventanas ya nos muestran informacin y en la zona de edicin tenemos el esqueleto para nuestro programa. En la imagen a continuacin veamos la ventana del Explorador de Soluciones. El explorador de soluciones nos Figura 3. Esta figura nos muestra la muestra la informacin de la solucin ventana del explorador de soluciones. de forma lgica. Si observamos, veremos que es como un pequeo rbol: en la raz encontramos a la solucin y cada proyecto que tengamos en esa solucin ser una rama. Cada proyecto a su vez tambin tendr sus divisiones. En nuestro caso vemos tres elementos: dos de sos son carpetas. En una se guardan las propiedades del proyecto y en la otra las referencias (a lo largo de este libro iremos haciendo uso de cada una de estas carpetas). El tercer elemento es un documento llamado Program.cs. Este archivo, representa el documento donde guardamos el cdigo fuente de nuestra aplicacin. En las antiguas versiones de Visual C++ la extensin de estos archivos era .cpp, derivando la misma de C plus plus, en Visual C#, la extensin de los programas es .cs.

PARA ENCONTRAR LAS VENTANAS RPIDAMENTE

Algunas veces es necesario cerrar las diferentes ventanas de la interfaz de usuario porque el entorno de desarrollo se torna molesto o pesado. Si necesitamos volver a verlas, la forma ms sencilla es ir al men de Vista o View y all seleccionar la ventana que deseamos.

21

1. C# .NET

En el rea de edicin podemos observar que tenemos un esqueleto para que a partir de ah podamos crear nuestro propio programa. Para entender lo que tenemos ah es necesario conocer un concepto: namespace. El namespace es una agrupacin lgica que hacemos, por ejemplo, todo el cdigo que podemos tener relacionado con matemtica puede quedar agrupado adentro del namespace Math. Otro uso que tiene el namespace es el de resolver conflictos con los nombres. Por ejemplo, supongamos que tenemos un proyecto muy grande y varios programadores trabajan en l, es posible que dos o ms programadores creen un mtodo que tenga el mismo nombre. Esto generara un conflicto, ya que el programa no podra saber qu versin utilizar. La forma de resolver esto es que cada programador tenga su propio namespace y hacer referencia al namespace correspondiente segn la versin que deseemos utilizar. El framework de .NET nos provee de varios namespaces donde tenemos miles de clases y mtodos ya creados para nuestro uso. Cuando deseamos utilizar los recursos que se encuentran en un namespace programado por nosotros o por otros programadores debemos de hacer uso de un comando de C# conocido como using. Como podemos ver en la parte superior del cdigo del ejemplo a continuacin, tenemos varios using que hacen referencia a los namespace que necesita nuestra aplicacin. Si necesitamos agregar ms namespaces, lo hacemos en esta seccin.
using System; using System.Collections.Generic; namespace MiProyecto { }

En el cdigo a continuacin se define el namespace propio de nuestro proyecto. Esto se hace de la siguiente manera:
namespace MiProyecto { }

El namespace que creamos se llama MiProyecto. Como podemos ver, el namespace usa llaves de apertura y cierre { } como delimitadores, que se conoce como un bloque de cdigo. Todo lo que se coloque entre { } pertenecer al namespace. Ah es donde colocaremos nuestro cdigo.
22

Crear nuestra promera aplicacin

Dentro del bloque de cdigo encontramos la declaracin de una clase. C# es un lenguaje basado en la orientacin a objetos, y por eso necesita que declaremos una clase para nuestra aplicacin. El concepto de clase se ver ms adelante, mientras tanto debemos saber que la clase para nuestra aplicacin se llama Program, y que ella tiene su propio bloque de cdigo. Todos los programas necesitan de un punto de inicio, un lugar que indique dnde empieza la ejecucin del programa. En C#, al igual que en otros lenguajes, el punto de inicio es la funcin Main(). Esta funcin tambin tiene su propio bloque de cdigo. Adentro de sta siempre colocaremos el cdigo principal de inicio de nuestra aplicacin, aunque es posible tener ms funciones o mtodos y clases. Las partes y caractersticas de las funciones se vern en un captulo posterior. Ahora es el momento de crear nuestra primera aplicacin. Modificaremos el cdigo de la funcin tal y como se muestra a continuacin, y luego, cuando agreguemos la sentencia adentro de Main(), debemos fijarnos qu sucede inmediatamente despus de colocar el punto.
using using using using System; System.Collections.Generic; System.Linq; System.Text;

namespace MiProyecto { class Program { static void Main(string[] args) { Console.WriteLine(Hola Mundo!); } } }

Si logramos observar, cuando se escribi la palabra Console y el punto apareci un recuadro que listaba diferentes elementos. Este cuadro se llama autocompletar y nos permite trabajar rpidamente y reducir al mnimo posible la cantidad de errores de sintaxis. El cuadro de autocompletar nos muestra sugerencias palabras, comandos, variables, mtodos, etctera, que se podran usar a continuacin. Si lo deseamos, seleccionamos algn elemento de esa lista, y l lo escribe por nosotros. A medida que avancemos y nos familiaricemos con la programacin de C# veremos que es de gran ayuda.
23

1. C# .NET

Hemos colocado una sentencia que escribir el mensaje Hola Mundo en la consola. Es un programa muy sencillo pero nos permitir aprender cmo llevar a cabo la compilacin de la aplicacin y cmo ver el programa en ejecucin.

Compilar la aplicacin
Una vez que hemos finalizado la escritura de nuestro programa, podemos llevar a cabo la compilacin. Como aprendimos anteriormente, esto generar el assembly que luego ser interpretado por el runtime para ejecutar las instrucciones. Para poder compilar la aplicacin debemos de seleccionar el men Construir o Build y luego seleccionar Construir Solucin o Build Solution. El compilador empezar a trabajar y en la barra de estado veremos que nuestra solucin se ha compilado exitosamente.

Figura 4. Para compilar nuestra aplicacin podemos acceder ms rpidamente con la tecla F6.

Ejecutar la aplicacin
Una vez que la compilacin ha sido exitosa entonces podemos ejecutar nuestro programa y ver cmo trabaja. Tenemos dos opciones para llevar a cabo la ejecucin. La primera es ejecutar con depuracin y la segunda es la de ejecutar sin depurador. El depurador es un programa, incoporado en nuestro entorno de desarrollo, que nos ayuda a corregir errores en tiempo de ejecucin y de
24

Crear nuestra promera aplicacin

lgica. En el ltimo captulo del libro aprenderemos cmo utilizarlo. De preferencia debemos de utilizar la ejecucin sin depurador y hacer uso de la ejecucin con depuracin nicamente cuando hagamos uso de ste. Ahora ejecutaremos nuestra aplicacin. Para realizar esto seleccionamos desde el men Debug o Depurar, la opcin Iniciar sin Depuracin Start Without Debugging, dependiendo de la versin de nuestro entorno de desarrollo.

Figura 5. Con el men Iniciar sin Depuracin nuestro programa se ejecutar y se evitar el anlisis de la correcta escritura del cdigo.

Cuando el programa se ejecuta, aparece una ventana. A esta ventana la llamamos consola, similar a la ventana de lnea de comandos de D.O.S., que se ejcuta desde Windows, y en ella se muestra la ejecucin del programa.

INTERFACES GRFICAS

ste es un libro de inicio a la programacin con C#, por eso los primeros ejemplos se ejecutarn en la consola. Una vez comprendidos los conceptos principales, es posible aprender cmo se programan las formas e interfaces grficas en C#. Este tipo de programacin no es difcil, pero requiere aprender los conocimientos bsicos de programacin orientada a objetos.

25

1. C# .NET

Figura 6. Ahora podemos ver nuestra aplicacin ejecutndose en la consola.

En la consola podemos leer el mensaje que habamos colocado al momento de escribir el cdigo de nuestra primera aplicacin.

Cmo detectar si un programa est mal


En algunas ocasiones puede ocurrir que escribimos errneamente el programa. Cuando esto sucede, ste no podr compilarse ni ejecutarse en forma correcta, provocando lo que se conoce como Bug. Si esto llegase a ocurrir debemos de cambiar lo que se encuentra mal. Coloquemos un error a propsito para que veamos qu reaccin tiene el compilador.
using using using using System; System.Collections.Generic; System.Linq; System.Text;

namespace MiProyecto { class Program {

26

Crear nuestra promera aplicacin

static void Main(string[] args) { Consola.WriteLine(Hola Mundo!); } } }

En el programa hemos cambiado Console por Consola, lo que provocar un error. Ahora podemos tratar de compilar nuevamente y en la siguiente figura vemos la reaccin que tendr el compilador ante ese error.

Figura 7. El programa tiene un error, por lo que no se podr compilar.

Como ya sabemos, la ventana que aparece en la parte inferior de nuestra interfaz de usuario es usada por el compilador para comunicarse. Vemos que aparece una ventana llamada lista de errores, en la que encontraremos listados todos los errores de programacin cometidos en el programa. En el captulo dedicado a la depuracin, aprenderemos a utilizar esa ventana con mayor detalle. Ahora simplemente debemos saber que siempre tenemos que resolver el primer problema de la lista, y que podemos ir directamente hasta donde se encuentra el error si hacemos doble clic con el mouse sobre l.
27

1. C# .NET

La vista de clases
Ahora veremos otra herramienta que nos es til. Esta herramienta se llama vista de clases, en la que podemos obtener informacin sobre la solucin que creamos, pero a diferencia del explorador de soluciones, la informacin est colocada de forma lgica. Con esta vista podemos encontrar rpidamente los namespaces de nuestra solucin y adentro de ellos las clases que contienen. Si lo deseamos, podemos ver los mtodos que se encuentran en cada una de las clases, pero esta vista no slo permite observar la informacin lgica, sino que tambin nos permite navegar rpidamente en nuestro cdigo. Para mostrar la vista de clases debemos de ir al men Vista y luego seleccionar Vista de Clases. Una ventana aparecer en nuestra interfaz de usuario.

Figura 8. Para mostrar la vista de clases debemos de usar el men de vista.

La ventana de la vista de clases est divida en dos secciones. La seccin superior nos permite ver la relacin lgica y jerrquica de los elementos, y en la parte inferior vemos los mtodos que componen alguna clase en particular. En la raz del rbol encontramos el proyecto, que contendr las referencias necesarias y el namesapace MiProyecto. Si tuviramos ms namespaces, stos apareceran ah. Al abrir dicho namespace, encontramos las clases que estn declaradas adentro de l, y en este caso solamente tenemos la clase Program. Si seleccionamos dicha clase, veremos que en la parte inferior se muestran los elementos declarados en su interior. En nuestro ejemplo tenemos dos mtodos que son Main() y MiMetodo().
28

Crear nuestra promera aplicacin

Si en este momento hacemos doble clic sobre cualquiera de los mtodos, nos dirigiremos en forma automtica al cdigo donde se define. Como nuestro programa es muy pequeo, es posible que no veamos la ventaja de esto, pero en los programas con miles de lneas de cdigo, el poder navegar rpidamente es una gran ventaja. Con esto tenemos los conceptos bsicos ms importantes de .NET. A partir del prximo captulo empezaremos con el aprendizaje de programacin y del lenguaje C#.

Figura 9. Aqu podemos observar la vista de clases. El rbol est expandido para poder ver sus elementos.

RESUMEN
Hace algunos aos la programacin para Windows era compleja y requera de un alto grado de especializacin. Varios intentos como MFC surgieron para facilitar el desarrollo de aplicaciones. La integracin entre diferentes lenguajes presentaba su propia problemtica. El framework .NET soluciona muchos de los problemas relacionados con la programacin en Windows y la interoperabilidad. Las aplicaciones de .NET se compilan a un assembly que contiene el programa escrito en CIL. ste es un lenguaje intermedio que lee el runtime cuando se ejecuta la aplicacin. El CLR compila el CIL para el microprocesador segn sea necesario. El cdigo compilado se vuelve a utilizar para mejorar el desempeo. El uso de un runtime le da a .NET la flexibilidad de ser multiplataforma. Todos los lenguajes .NET deben cumplir con los lineamientos que encontramos en el CLS, y para solucionar los problemas entre tipos el CTS indica cmo se usan los tipos adentro del framework de .NET

29

ACTIVIDADES
TEST DE AUTOEVALUACIN
1 Cul es la historia del desarrollo de las aplicaciones para Windows? 2 Qu problemas ayuda a resolver .NET? 3 Qu es un assembly? 4 Qu es el CIL? 5 Qu es el CLR? 6 Qu hace el CLR con el assembly? 4 Experimentar con el explorador 7 Qu es el Jitter? 8 Qu compiladores de C# podemos utilizar? 9 Qu es el CTS? 10 Por qu .NET puede ser multiplataforma? 11 Cul es la ltima versin de .NET? 12 Qu otro lenguaje que use .NET existe? 5 Agregarle ms mensajes a nuestra aplicacin. de soluciones para ver la informacin que ste nos provee.

EJERCICIOS PRCTICOS
1 Crear un proyecto nuevo, similar a ejemplo Hola Mundo, que imprima nuestro nombre en la ventana de la consola. 2 Generar en este proyecto un error a propsito y ver cmo se comporta e compilador. 3 Explorar el proyecto con la vista de clases.

30

Das könnte Ihnen auch gefallen