0% encontró este documento útil (0 votos)
396 vistas10 páginas

Resumen de C#

Este documento ofrece una introducción a C# y .NET, incluyendo cómo instalar el kit de desarrollo, un ejemplo "Hola Mundo", los conceptos básicos de programación orientada a objetos como clases y herencia, y estructuras de control como if, switch y bucles while. También cubre tipos de datos primitivos y operadores en C#.

Cargado por

Anne Quinn
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOC, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
396 vistas10 páginas

Resumen de C#

Este documento ofrece una introducción a C# y .NET, incluyendo cómo instalar el kit de desarrollo, un ejemplo "Hola Mundo", los conceptos básicos de programación orientada a objetos como clases y herencia, y estructuras de control como if, switch y bucles while. También cubre tipos de datos primitivos y operadores en C#.

Cargado por

Anne Quinn
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOC, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 10

Resumen de c# .

net 2003

Primeros Pasos con C#


El Kit de desarrollo
Lo primero que debemos hacer es conseguir el compilador requerido, que en nuestro caso existe lo que se denomina entorno de desarrollo .NET SDK e instalarlo en nuestro ordenador. Este paquete se puede instalar solo en entornos Microsoft bajo Windows98, Windows Me, Windows 2000 y Windows NT, aunque es aconsejable que tengamos Windows 2000 (segn Microsoft). Aun no conozco si existe alguna versin para Linux o Unix, y no descarto que Microsoft saque alguna. Puedes descargarte el .NET Framework SDK Beta 1 de la pagina de Microsoft y es totalmente gratuito (ocupa 106 Mb). En nuestro caso ya tenemos instalado en Microsoft visual Studio .Net 2003. (No debemos preocuparnos)

Hola Mundo
Como es ya una practica habitual, haremos para empezar el mtico hola mundo (yo ya he perdido la cuenta de las veces que he hecho este ejemplo, pues es el primero que hacer al comenzar la empresa de aprender un nuevo lenguaje). Como vern el cdigo es muy parecido al cdigo C++ y Java. La estructura nos recuerda horriblemente a C++, y la forma de programar a Java. Copie el siguiente cdigo en un documento de texto y gurdelo con el nombre HolaMundo.cs (.cs???, si es la extensin de los ficheros c# (c-sharp ))

using System; class HolaMundo { static void Main() { Console.WriteLine("Hola Mundo!!!"); } }

Para ir entrando en materia podemos distinguir tres cosas fundamentales en este cdigo:

Declaracin de los paquetes que contienen las clases a utilizar

using System;
Definicin de la clase que estamos construyendo

class HolaMundo { // Esto es un comentario: Aqu ira el cuerpo de la clase }


Al igual que C++ toda clase de inicio o tambin llamada de arranque de la aplicacin necesita que contengan la funcin o mtodo esttico main

static void Main() { Console.WriteLine("Hola, Mundo!!"); }


Como vern todos aquellos que estn habituados a la sintaxis C++ y Java se darn cuenta de las grandes similitudes que guarda el C# con el Java.

Introduccin a la orientacin a objetos


Antes de comenzar a programar o al menos intentarlo deberemos tener una serie de conceptos claros, ya que van a ser la parte fundamental de la programacin O.O. A lo largo de mi corta vida en el Objeto he visto multitud de programadores venidos de la programacin estructurada tradicional que se les ha atragantado el aprendizaje de los lenguajes orientados a objetos, por una mala comprensin o asimilacin del concepto de objeto y de la filosofa de estos lenguajes. Lo primero que debemos preguntarnos es:

Que es un objeto?
Es una representacin simblica de un objeto de la vida real. Y esto que quiere decir????

Que es una clase?


Es la representacin formal de una clase, abstrayendo los atributos y funciones del mismo. As como se le, es muy duro de comprender que esto. Supongamos que tenemos dos sillas, una de cuatro patas, roja, de madera y sin respaldo, y tenemos otra de tres patas, verde, de madera y sin respaldo. Podemos hacer la abstraccin de la clase silla con los siguientes mtodos y atributos:

Clase Silla

Mtodos: mover: Direccin ... Atributos: color:Color material: Material npatas: entero respaldo: booleano

De esta definicin de silla tan general que no se corresponde con ninguna silla en particular, sino con el concepto de silla, podemos crear diversos sillas diferentes (objetos) solo dandoles un valor particular a los atributos de la silla. Eso es un objeto. Al proceso de paso de clase a objeto se la conoce como instanciar. Este proceso se realiza en los lenguajes O.O. mediante los constructores, que ya veremos mas adelante.

Herencia
Este es otro de los propiedades curiosas de la O.O . El ser humano desde siempre ha tenidos el afn de catalogarlo dentro de categoras, en las que elementos de la misma categora comparte una serie de propiedades. De eso trata la herencia. Un Ejemplo:

De este modo, una la vaca y el hombre son animales, como animales tendrn propiedades propias de los animales, pero adems tendrn alguna diferentes, que les hacen que sean objetos diferentes. Existen el llamado herencia mltiple, en la cual un objeto puede heredar de mas de una clase. Aun que esta herencia mltiple no la incluyen muchos de los lenguajes orientados a objetos con todos es posible implementarla de forma indirecta.

Este es un claro ejemplo de herencia mltiple. El hombre hereda propiedades tanto del carnvoro como del herbvoro.

1.- Tipos de Datos


Una de las cosas mas importantes al empezar a estudiar un lenguaje es saberque tipos de datos primitivos tenemos para nuestro uso comn, el contenido de los mismos, sus relaciones

La mayoria de los tipos basicos de C# provienen de los tipos del C++, y son los siguientes

Tipo de Datos object string sbyte short int long bool char byte ushort uint

Descripcion Es el tipo base de todos los tipos Secuencia de caracteres Unicode entero con signo de 8 bit (1 byte) entero con signo de 16 bit entero con signo de 32 bit entero con signo de 64 bit tipo booleano (cierto - falso)

Ejemplo object obj=null; string st="Sierra"; sbyte val=12; short val=12; int val=12; long val=12; long val2=34L;

ulong

float double decimal

bool opc=false; bool opc=true; tipo caracter, se corresponde con un Unicode char val='h'; byte val=12; entero sin signo de 8 bit byte val2=12U; ushort val=12; entero sin signo de 16 bit ushort val2=12U; uint val=12; entero sin signo de 32 bit uint val2=12U; ulong val=12; ulongval2=12U; entero sin signo de 64 bit ulong val3=24L ulong val4=34UL numero en punto flotante con precision float val=12.23F simple float val2=12.23 double val=12.23 numero en punto flatante con precision double doble val2=12.23D numero decima con 28 digitos significativos decimal val=1.23M

2.- Conversin de tipos de datos


C# soporta dos tipos de conversiones: Implcita y explicita

Implcita: son conversiones directas, que se realizan siempre que los tipos puedan hacerlo.

int iVal = 34; long lVal = iValue;


Explicita: con conversiones en la que debemos forzar la conversin

long lVal = 123456; int iVal = (int)lValue;

Expresiones, tipos y variables


Entendiendo como variable a todo aquello que guarda o bien el valor de tipo bsico o la referencia a un objeto. Toda variable ha de ser declarada antes de su uso y luego inicializada con algn valor.

int numero;

numero=0;
Como se puede ver para asignar un valor a un variable se utiliza el caracter = Pero no es solo esto lo que se puede hacer con las variables. Existen una serie de operadores para realizar expresiones que nos permiten operar, comparar y evaluar con dichas variables.

Categoria Primarios Unario o monarios Multiplicativos Aditivos Desplazamiento Comparacin Igualdad AND logico XOR logico OR logico AND Condicional OR condicional Condicional Asignancin

Operador Asociatividad (x) x.y f(x) a[x] x++ x-- new typeof izquierda sizeof checked unchecked + - ! ~ ++x --x (T)x izquierda */% izquierda +izquierda << >> izquierda < > <= >= is izquierda == != derecha & izquierda ^ izquierda | izquierda && izquierda || izquierda ?: derecha = *= /= %= += -= <<= >>= &= ^= | derecha =

Estructuras de Control
If / switch / while / do-while / for / foreach

La sentencia IF
Las declaraciones condicionales permiten hacer una ejecucin selectiva de las partes del programa de acuerdo con los valores de ciertas expresiones:

if (condicion expresion) sentecias else sentencias


Lo primero que har una declaracin if ser comprobar su expresin condicional. Si es cierta se ejecutara el bloque de sentencias que se encuentre a continuacin. Si por el contrario es falso, se ejecutar el bloque de cdigo que esta a continuacin del else. Si no hay else , y la condicin no se cumple, no hace nada y continua. Ejemplo:

using System;

Class EjemploIf { public static void main() { int edad=21; if (edad>18) { Console.writeln("Eres mayor de Edad"); } else { Console.writeln("No eres mayor de Edad"); } } }

Sentencia Switch
Otra sentencia condicional es la sentencia switch, que es una sentencia condicional mltiple. En aquellos en que los opciones sobre la misma variable sean mas de dos, en vez de anidar sentencias if, es recomendable utilizar la sentencia switch.

switch (dato) { case opcion1: Sentecias ha realizar si opcion1=dato; break; case opcion2: Sentencias ha realizar si opcion2=dato; ..... break;

default: sentencias ha realizar en el caso que no se cumpla ninguna de las anteriores }


Es significativo tomar nota sobre un error muy comn, el olvidarnos de poner el break, ya que dicha estructura lo que hace es que solo una de las opciones que tenemos sea la buena, sin el break puede darse el caso de que se hiciera ms de una. Un ejemplo real sobre esto seria:

using System; class EjemploSW { public static void Main() { string entrada; int miInt; inicio:

Console.Write("Por favor, escriba un numero del 1 al 3: "); entrada = Console.ReadLine(); miInt = Int32.Parse(entrada); // switch con un entero switch (miInt) { case 1: Console.WriteLine("Tu break; case 2: Console.WriteLine("Tu break; case 3: Console.WriteLine("Tu break; default: Console.WriteLine("Tu 3.", miInt); } decide: Console.Write("Escribe \"continuar\" para seguir o \"salir\" para salir: "); entrada = Console.ReadLine(); // switch con un string switch (entrada) { case "continuar": goto inicio; case "salir": Console.WriteLine("Adios."); break; default: Console.WriteLine("Tu entrada {0} no es correcta.", entrada); goto decide; } } }

numero es{0}.", miInt); numero es {0}.", miInt); numero es {0}.", myInt); numero {0} no esta entre 1 y

La sentecia While
Esta sentencia permite realizar bucles. Comprueban la condicin al principio y si se cumple se ejecuta. Una vez ejecutado vuelve a comprobar la ejecucin.

while (condicin) { sentencias a ejecutar }


Ejemplo: Contador hasta 100 con while

using System; class WhileLoop { public static void Main() {

} }

int myInt = 0; while (myInt < 100) { Console.Write("{0} ", myInt); myInt++; } Console.WriteLine();

La sentencia do-while
El formato general para las declaraciones do es el siguiente:

do { sentencias a ejecutar dentro del bucle } while (condicion de finalizacin)


La nica diferencia que muestra con la declaracin anterior es el orden de ejecucin. En este caso, el bucle se ejecuta antes que la valoracin de la condicin. Por lo tanto el cuerpo de la declaracin do se ejecutar al menos una vez. Por ejemplo, el siguiente cdigo repetir lo que escribamos por pantalla hasta que escribamos exit.

using System class ejemplo3 { static void main() { String cadena; do { cadena=console.readln(); } while (cadena!=EXIT && cadena!=exit) } }

La sentencia For
El formato general para las declaraciones for es el siguiente:

for (sentecia de iniciacin; condicin de finalizacin; sentencia de incremento) { sentencias a ejecutar }


Para ejecutar la declaracin for habr que empezar por ejecutar la declaracin de iniciacin. Luego se valorara la expresin condicional. Si es true, se ejecutar el cuerpo del bucle y la declaracin incremental. La evaluacin de la expresin condicional y de la ejecucin del bucle

se repiten hasta que el valor de la condicin sea false. Es muy utilizada a la hora de recorrer vectores y arrays. Ejemplo: Contador hasta 100 con for

using System; class WhileLoop { public static void Main() { for (int i=0;i<100;i++) { Console.Write("{0} ", i); } Console.WriteLine();

} }

La sentencia foreach
La instruccin for es muy flexible y en la mayor parte de lenguajes de programacin es la nica disponible para recorrer estructuras de datos como tablas, listas, rboles, etctera. C# est equipado con una instruccin foreach que permite recorrer una coleccin de datos de una manera bastante simple. Su formato es el siguiente:

foreach (tipo var in exp) { conjunto de instrucciones a ejecutar }


exp debe ser una expresin de algn tipo coleccin, es decir una estructura de datos que se pueda recorrer. En una entrega posterior del seminario estudiaremos con detalle qu estructuras de datos son colecciones, pero de momento nos ser suficiente con saber que todas las tablas son colecciones, por lo que podemos usar esta instruccin cada vez que tengamos que recorrerlas. var es una variable que tan slo tienen sentido en el interior del bucle foreach. Evidentemente, el tipo con el que se declara esta variable dentro de la instruccin debe ser adecuado para almacenar cada uno de los valores que se encuentran en la coleccin exp. En el siguiente trozo de cdigo, por ejemplo, hemos declarado un vector en el que introducimos cinco valores enteros y posteriormente utilizamos una instruccin foreach para imprimirlos en la consola:

int[] vector = new int[5]; for (int i=0; i <= 5; i++) vector[i] = i * i; foreach (int i in vector) Console.WriteLine("{0}^2 = {1}", i, vector[i]);
Fjese en que el bucle en que se rellena la tabla es un bucle normal ya que la instruccin foreach slo permite recorrerla consultando sus elementos, no modificndolos.

Lo visto hasta ahora Using.- Permite activar libreras necesarias para nuestro programa

Algunas son: System.- es la principal. System.Data.- si queremos trabajar con datos System.Data.SqlClient.- trabajar con el servidor de bases de datos sql Server. Int, float, double, string.- tipos de datos ms usados (pendiente de ver el char) Parse.- permite convertir un tipo de dato a otro. Ejemplo: entero=float.parse(string); Uso de los controles para formularios mas comunes: Textbox, RadioButton, checkBox, Label, ListBox, ComboBox, Picture, Button, Timer, MainMenu, etc.

También podría gustarte