scitmina | by microsoft

22

Upload: jock

Post on 18-Jan-2016

29 views

Category:

Documents


1 download

DESCRIPTION

SCITMina | by Microsoft. Taller de Programación Orientada a Objetos Con C#. Bienvenidos . Eduardo Daniel Tenorio Mayo Microsoft Student Partner. Edgar Edel González García Microsoft Student Partner. Principios Básicos del lenguaje C#. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: SCITMina | by Microsoft
Page 2: SCITMina | by Microsoft

SCITMina | by Microsoft

Page 3: SCITMina | by Microsoft

Bienvenidos

Eduardo Daniel Tenorio MayoMicrosoft Student Partner

Taller de Programación Orientada a Objetos Con C#

Edgar Edel González GarcíaMicrosoft Student Partner

Page 4: SCITMina | by Microsoft

Principios Básicos del lenguaje C#

• La mayoria de los lenguajes orientados a objetos son muy similares.

• La elección de cada uno de ellos sobre otro es usualmente una preferencia de cada uno.

• Microsoft anunció C# en julio del 2000, así mismo anunciaron la plataforma .NET, la cual provee una nueva manera de crear aplicaciones Windows. De alguna manera la .NET va mas alla de la programación tradicional de Windows para facilitar la creación de aplicaciones web fácil y rápido.

• C# incluye todo el soporte para estructuras, componentes bases, orientado a objetos, programando en una lenguaje basado en C++ y Java. En otras palabras es un lenguaje diseñado y apropiado para desarrollador largas y escalables aplicaciones pero al mismo tiempo fácil de aprender.

• Es considerado un lenguaje seguro, esto es type-safe, lo cual es un importante mecanismo para encontrar errores o “bugs” en el proceso de desarrollo.

Page 5: SCITMina | by Microsoft

Sentencias

• C# es un lenguaje completamente de instrucciones, llamadas sentencias, y cada s sentencia termina con un (;).• El compilador empieza al inicio del código fuente y lo lee hacia abajo, ejecutando cada línea en el orden que el compilador la encuentra.

int myVariable; // una sentenciamyVariable = 23; // otra sentenciaint anotherVariable = myVariable; // aun otra sentencia

Page 6: SCITMina | by Microsoft

Tipos

C# es un fuerte lenguaje de tipos, esto quiere decir que cada objeto creado en C# debe de tener un tipo especifico, en otras palabras debes de declarar un objeto dependiendo que quieres que sea, debes declararlo como tipo int, o un string, o especificar si es un botón.

Los tipos vienen en dos ramas: aquellos que son creados dentro del lenguaje( tipos intrínsecos) y aquellos que son creados por ti como las clases e interfaces.

Page 7: SCITMina | by Microsoft

C# type Size (in bytes) .NET type Descriptionbyte 1 Byte Unsigned (values between 0 and 255).

char 2 Char Unicode characters (a modern way of storing most characters, including international language characters).

bool 1 Boolean True or false.sbyte 1 SByte Signed (values between -128 and 127).short 2 Int16 Signed (short) (values between -32,768 and 32,767).ushort 2 UInt16 Unsigned (short) (values between 0 and 65,535).

int 4 Int32 Signed integer values between -2,147,483,648 and 2,147,483,647.

uint 4 UInt32 Unsigned integer values between 0 and 4,294,967,295.

float 4 SingleFloating-point number. Holds the values from approximately +/-1.5 x 10-45 to approximately +/-3.4 x 1038 with seven significant figures.

double 8 DoubleDouble-precision floating-point. Holds the values from approximately +/-5.0 x 10-324 to approximately +/-1.8 x 10308 with 15 to 16 significant figures.

decimal 12 DecimalFixed-precision up to 28 digits and the position of the decimal point. This type is typically used in financial calculations. Requires the suffix "m" or "M" when you declare a constant.

long 8 Int64 Signed integers ranging from -9,223,372,036,854,775,808 to 9,223,372,036,854,775,807.

ulong 8 UInt64 Unsigned integers ranging from 0 to approximately 1.85 x 1019.

Page 8: SCITMina | by Microsoft

Tipos Numéricos

La mayoria de los tipos intrínsecos son usados para trabajar con valores de tipo numérico( byte, sbyte, short, ushort, int, uint, float, double, dcimal, long, and ulong).

Se pueden dividir los tipos numéricos en dos partes: asignados y desasignados.Un valor desasignado(byte, ushort, uint, ulong) puede almacenar valores positivos, un valor asignado (sbyte,short,int, long) puede almacenar valores positivos o negativos pero en un rango diferente de valores.

Ejemplo:

Short y ushort ambos son valores de 16-bit, lo cual quiere decir que mantienen uno de 65,536 valores(216). El ushort almacena solo positivos valores sin asignar, entonces el rango seria de 0 a 65,535(no 65,536 debido a la necesidad de un espacio para cero).

Page 9: SCITMina | by Microsoft

Tipos no numéricos

Adicionalmente a los tipos numéricos C# ofrece dos otros tipos: char y booleano.

El tipo char es usado de tiempo en tiempo cuando necesitas almacenar un solo carácter. El tipo char puede representar un simple carácter (A), un carácter en Unicode (\u), o una secuencia de escape (‘\n).

El booleano es el que almacena un tipo Boolean. Un boolean es el valor que sostiene Falso o Verdadero.

Page 10: SCITMina | by Microsoft

WriteLine() y salida a Pantalla

El framework .NET provee de métodos eficientes para mandar mensajes a pantalla en aplicaciones de consola: la sentencia System.Console.WriteLine().

El uso es simple, se llama al método, y entre paréntesis pasas el valor que deseas llamar a imprimir a consola.

Si se desea mandar a imprimir a pantalla un valor cambiante, se puede colocar una substitución de parámetros, una substitución de parámetros son solo dos llaves con el valor que vas a mandar a pantalla.

System.Console.WriteLine("Age of student: {0}", myInt); System.Console.WriteLine("Age of first student: {0}, age of second student: {1}", myInt, myOtherInt);

Page 11: SCITMina | by Microsoft

Una expresión es una secuencia de uno o más operandos y cero o más operadores que se pueden evaluar como un valor, objeto, método o espacio de nombres único. Las expresiones pueden constar de un valor literal, una invocación de método, un operador y sus operandos o un nombre simple. Los nombres simples pueden ser el nombre de una variable, miembro de tipo, parámetro de método, espacio de nombres o tipo.Las expresiones pueden utilizar operadores que, a su vez, utilizan otras expresiones como parámetros o llamadas a métodos cuyos parámetros son, a su vez, otras llamadas a métodos, de modo que pueden variar de simples a muy complejas. A continuación se muestran dos ejemplos de expresiones:

((x < 10) && ( x > 5)) || ((x > 20) && (x < 25)) System.Convert.ToInt32("35")

Expresiones

Page 12: SCITMina | by Microsoft

Espacios en Blanco

En C# los espacios, tabulaciones, y líneas nuevas dentro del código son considerados espacios en blanco, llamados así ya que solo observas el espacio en blanco que en la página.Cualquier espacio en blanco extra es ignorado por el compilador de C#.

myVariable = 5 ;

myVariable = 5;

Page 13: SCITMina | by Microsoft

Instrucciones:

Las acciones que realiza un programa se expresan en instrucciones. Las acciones comunes incluyen la declaración de variables, la asignación de valores, la llamada a métodos, el recorrido en bucle de las colecciones y la creación de bifurcaciones a uno u otro bloque de código en función de una condición determinada. El orden en que se ejecutan las instrucciones en un programa se denomina flujo de control o flujo de ejecución. El flujo de control puede variar cada vez que se ejecuta un programa, dependiendo de cómo reacciona éste a la entrada que recibe en tiempo de ejecución.

A continuación se listan algunos tipos de instrucciones…

Page 14: SCITMina | by Microsoft

Categoría Palabras clave de C# / notas

Instrucciones de declaración

Una instrucción de declaración introduce una nueva variable o constante. Una declaración de variable puede asignar opcionalmente un valor a la variable. En una declaración de constante, se requiere la asignación.C#Copiar// Variable declaration statements. double area; double radius = 2; // Constant declaration statement. const double pi = 3.14159;

Instrucciones de expresión

Las instrucciones de expresión que calculan un valor deben almacenar el valor en una variable.C#Copiar// Expression statement (assignment). area = 3.14 * (radius * radius); // Error. Not statement because no assignment: //circ * 2; // Expression statement (method invocation). System.Console.WriteLine(); // Expression statement (new object creation). System.Collections.Generic.List<string> strings = new System.Collections.Generic.List<string>();

Instrucciones de selección

Las instrucciones de selección permiten crear bifurcaciones a diferentes secciones de código, en función de una o varias condiciones especificadas.Para obtener más información, vea los temas siguientes:if, else, switch, case

Instrucciones de iteración

Las instrucciones de iteración permiten recorrer en bucle las colecciones como las matrices o bien realizar el mismo conjunto de instrucciones repetidamente hasta que se cumpla una condición especificada.Para obtener más información, vea los temas siguientes:do, for, foreach, in, while

Page 15: SCITMina | by Microsoft

Instrucciones de saltoLas instrucciones de salto transfieren el control a otra sección de código. Para obtener más información, vea los temas siguientes:break, continue, default, goto, return, yield

Instrucciones de control de excepciones

Las instrucciones de control de excepciones permiten recuperarse correctamente de condiciones excepcionales que se producen en tiempo de ejecución.Para obtener más información, vea los temas siguientes:throw, try-catch, try-finally, try-catch-finally

Checked y unchecked

Las instrucciones checked y unchecked permiten especificar si las operaciones numéricas pueden producir un desbordamiento cuando el resultado se almacena en una variable demasiado pequeña para contener el valor resultante.Para obtener más información, vea checked y unchecked.

Instrucción fixedLa instrucción fixed evita que el recolector de elementos no utilizados vuelva a ubicar una variable móvil.Para obtener más información, vea fixed.

Instrucción lockLa instrucción lock permite limitar el acceso a los bloques de código a solo un subproceso a la vez.Para obtener más información, vea lock.

Instrucciones con etiquetasPuede asignar una etiqueta a una instrucción y, a continuación, utilizar la palabra clave goto para saltar a la instrucción con la etiqueta.(Vea el ejemplo de la fila siguiente.)

Instrucción vacía

La instrucción vacía está compuesta solo por un punto y coma.No hace nada y se puede utilizar en lugares donde se requiere una instrucción pero no es necesario realizar ninguna acción.En los ejemplos siguientes se muestran dos usos de una instrucción vacía:C#Copiarvoid ProcessMessages() { while (ProcessMessage()) ; // Statement needed here. } void F() { //... if (done) goto exit; //... exit: ; // Statement needed here. }

Page 16: SCITMina | by Microsoft

Instrucciones incrustadasAlgunas instrucciones, incluidas do, while, for y foreach, siempre cuentan con instrucciones incrustadas a continuación. Esta instrucción incrustada puede ser una instrucción única o varias instrucciones encerradas entre corchetes {} en un bloque de instrucciones. Las instrucciones incrustadas de una línea también se pueden encerrar entre corchetes {}, tal como se muestra en el ejemplo siguiente:foreach (string s in System.IO.Directory.GetDirectories( System.Environment.CurrentDirectory)){ System.Console.WriteLine(s);}

// No es recomendableforeach (string s in System.IO.Directory.GetDirectories( System.Environment.CurrentDirectory)) System.Console.WriteLine(s);

Page 17: SCITMina | by Microsoft

Instrucciones incrustadas

Una instrucción incrustada que no se encierra entre corchetes {} no puede ser una instrucción de declaración ni una instrucción con etiquetas. Esto se muestra en el ejemplo siguiente:

if( pointB == true) //Error CS1023: int radius = 5;

Coloque la instrucción incrustada en un bloque para corregir el error:

Copiarif (b == true) {

System.DateTime d = System.DateTime.Now; System.Console.WriteLine(d.ToLongDateString()); }

Page 18: SCITMina | by Microsoft

Bloques de instrucciones anidados

Los bloques de instrucciones pueden estar anidados, tal como se muestra en el código siguiente:

foreach (string s in System.IO.Directory.GetDirectories( System.Environment.CurrentDirectory)) { if (s.StartsWith("CSharp"))

{ if (s.EndsWith("TempFolder")) { return s;

} }

} return "Not found.";

Page 19: SCITMina | by Microsoft

Instrucciones inalcanzables

Si el compilador determina que el flujo de control nunca puede alcanzar una instrucción determinada bajo ninguna circunstancia, generará la advertencia CS0162, tal como se muestra en el ejemplo siguiente:

// Código simple de una sentencia inalcanzableconst int val = 5; if (val < 4) {

System.Console.WriteLine("I'll never write anything."); //CS0162 }

Page 20: SCITMina | by Microsoft

Recomendaciones !!

Expansión de la esfera social!• #scitmina • Like at Microsoft Student Club ITMINA• Registrarse en MVA( Microsoft Virtual Academy) y mandar el correo con el que te registraste a [email protected]

Page 21: SCITMina | by Microsoft

Contacto:Facebook: Eduardo Tenorio MayoTwitter: @EdTMayoHotmail: [email protected]: [email protected]: http://geekforevertm.wordpress.com

Page 22: SCITMina | by Microsoft