grfica Conocer algunos de los principales controles de la biblioteca de clases .Net Framework que son utilizados para crear interfaces grficas de usuario en Visual C#. Conocer el paradigma de programacin conducida por eventos. La clase, es un molde que define las caractersticas y el comportamiento del objeto que puede ser generado a partir de ella. Las caractersticas se denominan propiedades, y definen las particularidades del objeto, por ejemplo, el color de automvil, el nmero de puertas, el nmero de pasajeros, etc. El comportamiento, son las acciones que el objeto puede realizar, y son implementados por los mtodos, por ejemplo, acelerar, frenar o girar el automvil. Para utilizar las clases es necesarios crear una instancia de ellas, y esta instancia es conocida como objeto. Al final, lo que el usuario utiliza son los objetos generados a partir de las clases. Conceptos de clase, objeto y propiedad Cuando se dice que un objeto recibe un mensaje, se puede interpretar como una solicitud para que el objeto ejecute el mtodo asociado a esa solicitud. Un mtodo es un bloque de cdigo que contiene una serie de instrucciones. Estos mtodos son ejecutados por las aplicaciones al hacer una llamada al mtodo. Conducidos por eventos Ejecutan el cdigo como respuesta a una accin del usuario Por ejemplo, el mtodo clic de la clase Button Definen propiedades Permiten el acceso a variables privadas asociadas a las propiedades del objeto Incluyen dos mtodos internos: get() y set() Generales Bloques de cdigo con instrucciones para ejecutar una accin concreta Concepto de mtodo Concepto de modularidad Se encuentra asociado a la frase de divide y vencers. Para realizar una tarea, una opcin es dividir esa tarea en pequeas actividades ms especficas y concretas, que abonen a la solucin general. La modularidad en Visual C# se implementa por medio de la creacin y utilizacin de clases, y dentro de cada clase, por medio de la creacin y utilizacin de mtodos. Creacin de mtodos La sintaxis general para la creacin de un mtodo es: nivel_de_acceso tipo_de_dato identificador([parmetros]) { bloque_de_instrucciones; return valor; } En donde: Nivel de acceso corresponde a la palabra public (pblico) o private (privado). El tipo de dato, es el tipo de dato del valor que la funcin va a regresar (utilizando return), o en su caso void, cuando se trata de un procedimiento que no regresa valores (se elimina return). El identificador es cualquier nombre vlido para Visual C#. Los parmetros, son una lista opcional de variables que permiten recibir datos al momento de la llamada al mtodo. El bloque de instrucciones, es la serie de instrucciones que sern ejecutadas al momento en que el mtodo sea mandado llamar. Utilizacin de parmetros Los parmetros en los mtodos, son variables locales que se utilizan para recibir datos que se transfiere al mtodo al momento de su llamada. Los datos recibidos en los parmetros, es informacin adicional que el mtodo utiliza para cumplir su objetivo. Para declarar un parmetro en un mtodo, es necesario indicar, dentro de los parntesis de la declaracin, el tipo de dato que recibir el parmetro seguido del identificador del mismo. Si es ms de uno, deben estar separados por una coma. No existe lmite en el nmero de parmetros, pueden ser desde ninguno, hasta cualquier cantidad. Ejemplos de parmetros private int mSuma(int pNum1, int pNum2) { return (pNum1 + pNum2); } private int mResta(int pNum1, int pNum2) { return (pNum1 - pNum2); } Los parmetros son variables locales dentro del mdulo y pueden ser utilizadas como cualquier otra variable del mismo tipo. Al momento de llamar a un mtodo con parmetros se debe especificar los valores que sern enviados al mtodo. Parmetros por valor Son los utilizados por defecto en los mtodos. Se pasa una copia del valor original del parmetro. Cualquier modificacin realizada en el mtodo no afecta al parmetro original. private int Incremento(int pNum) { pNum++; return pNum; } Parmetros por referencia No se realiza una copia del valor original del parmetro, sino que se pasa la referencia al objeto original. Cualquier modificacin dentro del mtodo afecta al objeto original. Se requiere colocar el modificador ref antes de cada parmetro en la definicin del mtodo y al momento de la llamada. private int Incremento(ref int pNum) { pNum++; return pNum; } Parmetros de salida Es similar al parmetro por referencia, salvo que el valor inicial carece de importancia. Se utiliza para regresar valores de los mtodos adicionales al valor regresado con return. Se requiere colocar el modificador out antes de cada parmetro en la definicin del mtodo y al momento de la llamada. private float Dividir(int pNum1, int pNum2, out int pResiduo) { pResiduo = pNum1 % pNum2; return (float)pNum1/pNum2; } Arreglos de parmetros Permite pasar varios parmetros a un mtodo sin definir de origen el nmero de parmetros que sern pasados. Slo puede existir un arreglo de parmetros en la definicin de un mtodo y ste debe ser el ltimo parmetro especificado. El arreglo debe ser siempre un tipo de arreglo unidimensional. Se requiere colocar el modificador params antes del tipo de parmetro en la declaracin del mtodo. private int Sumar(params int[] Datos) { int Suma=0; foreach(int valor in Datos) Suma+=valor; return Suma; } Sobrecarga de mtodos Permite definir varios mtodos con el mismo nombre pero con distintos parmetros. El compilador decide a cul mtodo llamar dependiendo de los parmetros establecidos en la llamada. private int Cuadrado(int pNum) { return pNum*pNum; } private float Cuadrado(float pNum) { return pNum*pNum; } private double Cuadrado(double pNum) { return pNum*pNum; } La clase Math Cuenta con una gran cantidad de mtodos que te ayudan a realizar clculos matemticos comunes. Los mtodos de la clase Math son estticos (static), esto se refiere a que para ejecutarlos no es necesario crear un objeto de la clase Math, sino que pueden ser ejecutados de manera directa. Mtodo Descripcin Ejemplo Abs(x) Devuelve el valor absoluto de x Abs(10.56) es 10.56 Abs(-12.5) es 12.5 Ceiling(x) Devuelve el valor entero ms pequeo que es mayor o igual que el nmero decimal especificado Ceiling(9.2) es 10.0 Ceiling(-8.9) es -8.0 Cos(x) Devuelve el coseno trigonomtrico de x (x est en radianes) Cos(0.0) es 1.0 Exp(x) Devuelve e elevado a la potencia especificada Exp(1.0) es 2.71828 Floor(x) Devuelve el nmero entero ms grande menor o igual que el nmero decimal especificado Floor(7.03) es 7 Floor(-7.8) es -8 Log(x) Devuelve el logaritmo natural (en base e) de un nmero especificado Log(4.9) es 1.5892352051 Log(9.9) es 2.2925347571 Max(x,y) Devuelve el mayor de los dos nmeros especificados Max(5,7) es 7 Max(-1.5,-3.5) es -1.5 Min(x,y) Devuelve el menor de los dos nmeros especificados Min(5,7) es 5 Min(-1.5,-3.5) es -3.5 Pow(x,y) Devuelve un nmero especificado elevado a la potencia especificada Pow(2,3) es 8 Pow(2,18) es 262,144 Sin(x) Devuelve el seno trigonomtrico de x (x est en radianes) Sin(0.0) es 0.0