Está en la página 1de 6

C# - INTRODUCCION .

NET

Introduccin .NET
La plataforma .NET pone a su disposicin un conjunto de tecnologas y herramientas que
simplifican el desarrollo de aplicaciones y propone una solucin para casi cualquier tipo de
aplicaciones:

1. aplicaciones Windows clsicas


2. aplicaciones Web
3. servicios Windows
4. servicios Web.

Todas estas aplicaciones se pueden realizar gracias a un elemento esencial: el Framework .NET.
Este Framework se encarga, por medio de numerosas capas de software superpuestas, de la
integridad de la vida de una aplicacin, desde el desarrollo hasta la ejecucin. El sistema
operativo, con el que va a interactuar, debe albergar el framework. El primer sistema que
permite acogerlo es, por supuesto, Windows, pero hay otras versiones disponibles que permiten
la adaptacin de la plataforma .NET a sistemas tales como Linux o Unix.

El framework contiene dos elementos principales: el Common Language Runtime y la librera de


clases.

C# - INTRODUCCION .NET ING. MIGUEL ANGEL CASIMIRO BRAVO


C# - INTRODUCCION .NET

Escritura, compilacin y ejecucin de una aplicacin


Se detallara el ciclo de vida de una aplicacin desde la redaccin del cdigo hasta la ejecucin
de la aplicacin, notando los mecanismos puestos en marcha.

1.- Escritura de Cdigo:

La inmensa mayora de las aplicaciones se desarrollan gracias a un entorno integrado que agrupa
las principales herramientas necesarias, a saber:
1. un editor de texto
2. un compilador
3. un depurador

Este enfoque es, de lejos, el ms cmodo. Sin embargo necesita una pequea fase de
aprendizaje para familiarizarse con la herramienta. Para nuestra primera aplicacin, vamos a
utilizar una manera de hacer un poco diferente, ya que vamos a utilizar herramientas
individuales: el bloc de notas de Windows para la escritura del cdigo y el compilador en lnea
de comandos para Visual C#.
Nuestra primera aplicacin ser muy sencilla, ya que visualizar simplemente el mensaje Hola
en una ventana de comando. A continuacin se presenta el cdigo de nuestra primera
aplicacin, que luego explicaremos lnea por lnea. Se debe introducir usando el bloc de notas
de Windows o cualquier otro editor de texto siempre y cuando ste no aada ningn cdigo de
formato en el interior del documento, como s hacen por ejemplo programas de tratamiento de
texto.

Cdigo:
using System;
class Program
{
static String mensaje = "Hola";
static void Main(String[] args)
{
Console.WriteLine(mensaje);
}
}

Guardemos este cdigo en un archivo con la extensin .cs


using System: acceder a los elementos del namespace.
Class Program: en c# cualquier cdigo debe estar contenida en una clase.

C# - INTRODUCCION .NET ING. MIGUEL ANGEL CASIMIRO BRAVO


C# - INTRODUCCION .NET

static String mensaje = Hola; : lnea que declara la variable


static void Main (String[] args) : todas las instrucciones deben estar declaradas en un
procedimiento o una funcin.
Console.WriteLine(mensaje); : permite la visualizacin de datos en la consola
Importante:
Fin con ;
Clases con { }
Diferenciar maysculas y minsculas
2.- Compilacin de Cdigo:

El Framework .NET incluye un compilador en lnea de comando para Visual C#. Para compilar el
cdigo fuente de nuestro ejemplo, debemos abrir una ventana de comando DOS para poder
lanzar el compilador. Para ello la instalacin cre un atajo en el men Inicio. Este atajo lanza la
ejecucin de un archivo .bat que posiciona algunas variables de entorno necesarias para el
correcto funcionamiento de las herramientas Visual Studio en lnea de comando.

C# - INTRODUCCION .NET ING. MIGUEL ANGEL CASIMIRO BRAVO


C# - INTRODUCCION .NET

Smbolo del sistema de las herramientas nativas de VS2012 x86 (ejecutar como Administrador)

Desde la ventana de comandos abierta, conviene situarse en el directorio en el cual se encuentra


el archivo fuente. Se lanza la compilacin con el comando csc Hola.cs.

Despus de un breve instante, el compilador nos devuelve el control. Podemos comprobar la


presencia del archivo ejecutable y comprobar su correcto funcionamiento.

3.- Anlisis de un Archivo Compilado

Ahora que se ha creado nuestro archivo ejecutable, intentemos ver lo que contiene.

Primera solucin: abrirlo con el bloc de notas de Windows

C# - INTRODUCCION .NET ING. MIGUEL ANGEL CASIMIRO BRAVO


C# - INTRODUCCION .NET

El resultado no es muy elocuente, es lo menos que puede decirse!

Hemos dicho que el compilador genera cdigo MSIL. Por lo tanto es este cdigo lo que
visualizamos en el bloc de notas. Para visualizar el contenido de un archivo MSIL, el Framework
.NET propone una herramienta mejor adaptada.

Segunda solucin: utilizar un desensamblador

Esta herramienta se ejecuta a partir de la lnea de comando con la instruccin ildasm.

Permite visualizar un archivo generado por el compilador, ms claramente que con el bloc de
notas.

Conviene indicar el archivo que se desea examinar por el men Archivo - Abrir. El
desensamblador visualiza entonces su contenido.

C# - INTRODUCCION .NET ING. MIGUEL ANGEL CASIMIRO BRAVO


C# - INTRODUCCION .NET

La informacin presente en el archivo se puede separar en dos categoras: el manifiesto y el


cdigo MSIL. El manifiesto contiene los metadatos que permiten describir el contenido del
archivo y los recursos que necesita. Hablamos en este caso de archivo autodescriptivo. Esta
tcnica es muy interesante, ya que en cuanto el Common Language Runtime lee el archivo,
dispone de toda la informacin necesaria para su ejecucin.

4.- Ejecucin del Cdigo

Cuando un usuario ejecuta una aplicacin gestionada, el cargador de cdigo del sistema
operativo carga el Common Language Runtime que luego lanza la ejecucin del cdigo
gestionado. Como el procesador de la mquina en la cual se ejecuta la aplicacin no puede
encargarse directamente del cdigo MSIL, el Common Language Runtime debe convertirlo a
cdigo nativo.

Esta conversin no incluye la totalidad del cdigo de la aplicacin. Convierte el cdigo segn las
necesidades. Los pasos adoptados son los siguientes:

Al cargar una clase, el Common Language Runtime sustituye cada mtodo de la clase con un
trozo de cdigo que requiere al compilador JIT que lo compile en lenguaje nativo.

Luego, cuando se utiliza el mtodo en el cdigo, la porcin de cdigo generado en la carga entra
en accin y compila el mtodo en cdigo nativo.

El fragmento de cdigo que requiere la compilacin del mtodo es sustituido luego por el cdigo
nativo generado.

Las futuras llamadas de este mtodo se harn directamente en el cdigo nativo generado.

C# - INTRODUCCION .NET ING. MIGUEL ANGEL CASIMIRO BRAVO

También podría gustarte