sábado, 27 de mayo de 2017

Excepciones en Visual Basic.NET

Vamos a utilizar los eventos para cosas que esperamos que le suceda al objeto. A veces suceden cosas que no se esperan. En .NET, las situaciones excepcionales son tratadas con el uso de excepciones, una implementación para el manejo de las condiciones de error. Dicho programa consiste en "manejar la excepción" cuando se pueden producir errores. Se puede escribir código para "atrapar" la excepción, con lo que la ejecución del programa no se detiene por completo. Por otra parte, se pueden crear excepciones personalizadas para la aplicación, para facilitar información específica al  programa y el usuario acerca de qué ha ido mal.

 Generar una excepción


Esta pequeña aplicación enseña cómo se captura una excepción.

Sobre el evento Click de un botón del formulario ponemos:

Private Sub Boton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Boton.Click

        Dim numbers() As Integer = {1, 2, 3, 4, 5}
        MessageBox.Show(numbers(9))
End Sub


Al ejecutar el programa saltará una excepción, pues intenta leer el índice 9 de un array que tiene 5 elementos, y dice que el array está fuera de rango. Se puede prevenir este error capturando la excepción.

Excepciones en Visual Basic.NET

sábado, 20 de mayo de 2017

Curso de C#: métodos

Métodos


Los métodos son bloques de código manejan los datos de la clase. Cómo se define un método en C#:

acceso tipo NombreMetodo(TipoArg1 argumento1, TipoArg2 argumento2 ...)
{
    // Aquí se codifica lo que tiene que hacer el método
}

acceso es el modificador de acceso del método, que puede ser private, protected, internal o public (como las variables). Posteriormente el tipo de retorno, es decir, el tipo de dato que devolverá el método (que puede ser cualquier tipo). Luego el nombre del método (sin espacios en blanco). Después, entre paréntesis y separados unos de otros por comas, la lista de argumentos que aceptará el método: cada uno de ellos se especificará poniendo primero el tipo y después el nombre del mismo. Por fin, la llave de apertura de bloque seguida del código del método y, para terminarlo, la llave de cierre del bloque.


Curso de C#: métodos


sábado, 13 de mayo de 2017

Principios SOLID de la programación orientada a objetos

Solid es un acrónimo para establecer los cinco principios básicos de la programación orientada a objetos y diseño. El objetivo de tener un buen diseño de programación es llegar a la fase de mantenimiento de una forma más legible y sencilla así como conseguir crear nuevas funcionalidades sin tener que modificar en gran medida código antiguo. Los costes de mantenimiento pueden abarcar el 80% de un proyecto de software por lo que hay que valorar un buen diseño.
Las reglas SOLID son un conjunto de principios que, aplicados correctamente,  ayudan a escribir software de calidad en cualquier lenguaje de programación orientado a objetos. El código será más fácil de leer, testear y mantener.

Los procesos de refactorización serán mucho más sencillos si se cumplen estas reglas.

Los principios en los que se basa SOLID son los siguientes:
Principio de Responsabilidad Única
Principio Open/Closed
Principio de Sustitución de Liskov
Principio de Segregación de Interfaces
Principio de Inversión de Dependencias


Principios SOLID de la programación orientada a objetos





sábado, 6 de mayo de 2017

Curso de C#: operadores

Los operadores sirven, para efectuar operaciones con uno o más parámetros (sumar, restar, comparar...) y retornar un resultado. Aquí se muestra una tabla con los operadores de C#.

Operadores de C#
Tomado de el Guille

sábado, 29 de abril de 2017

Interfaces predefinidos en .NET

Interfaces genéricas de .NET


. NET define varias interfaces genéricas de uso común de entre las que podemos elegir para implementar nuestras clases. Estas interfaces nos permiten obtener funcionalidad adicional para nuestro objeto. Algunas interfaces se describen en la tabla siguiente:



Interfaz


Descripción

IComparable

Define el ordenamiento de instancias de la clase. Es útil si queremos utilizar la clase como un valor clave en SortedList o vamos a usar el método Sort del ArrayList.


IEnumerable e IEnumerator


Estas dos interfaces trabajan juntas dando soporte a los For…Each de nuestra clase


IFormattable


Permite definir formateos de cadena definidos por el usuario


IList


Permite a la clase servir como fuente de datos Para controles tales como ListBox y DataGrid. La implementación de la base es List.


ICloneable


Permite definir exactamente como será copiado nuestro objeto.


IComponent


Provee soporte como componente a nuestra clase en tiempo de diseño. La base de esta implementación es Component.


IDataErrorInfo


Permite añadir a la clase información sobre errores.  El soporte de esta interface nos permite usar el control Dataerror en un formulario de Windows.



A continuación, vamos a crear una clase simple que representa un punto. Vamos a usar esta clase como una base para la aplicación de los interfaces IComparable, IEnumerator IEnumerable, y de IFormattable. Estas interfaces de usuario hacen que la clase sea más fácil de usar para otros desarrolladores.

Interfaces predefinidos en .NET

sábado, 22 de abril de 2017

Curso de C#: introducción, variables y constantes

Introducción


La sintaxis de C# es muy parecida a la de C, C++ y, sobre todo, Java. Así, por ejemplo, declarar una variable o un puntero en C# se escribe igual que en C:

int a;
int* pA;

Aunque el código sea sintácticamente idéntico, semánticamente puede ser muy distinto, es decir: mientras en C la una variable de tipo int es eso y nada más, en C# una variable de tipo int es en realidad un objeto de la clase System.Int32. Las diferencias más importantes entre C y C# no suelen ser sintácticas sino sobre todo semánticas.

En C# todas las instrucciones y declaraciones deben terminar con ; (punto y coma), salvo que haya que abrir un bloque de código.  Al contrario que en Visual Basic, aquí se puede poner una instrucción que sea muy larga en varias líneas sin poner ningún tipo de signo especial al final de cada una.

CURSO DE C#: introducción, variables y constantes