Paradigma de la Programación a Objetos
Elementos fundamentales de la programación orientada a objetos
Atributos Los atributos son las caracterísiticas individuales que diferencian un objeto de otro y determinan su apariencia, estado u otras cualidades
Constructores Los constructores son métodos de clase que se ejecutan automáticamente cuando se crea un objeto de un tipo determinado
Finalizadores Los finalizadores se usan para destruir instancias de clases
Propiedades y campos: Los campos y propiedades representan información que contiene un objeto. Los campos se parecen a las variables ya que se pueden leer y establecer directamente.
Eventos: consiste en una acción generada a partir de la interacción con una aplicación
Clases y Objetos: las clases describen el tipo de los objetos, mientras que los objetos son instancias de clases que se pueden usar. Con la analogía de plano, una clase es un plano y un objeto es un edificio construido a partir de ese plano
Clases anidadas: Una clase definida dentro de otra se denomina anidada
Métodos: Un método es el comportamiento que puede tener un objeto (lo que puede hacer), un método puede hacer cambios en las propiedades del objeto
Herencia La herencia permite crear una nueva clase que reutiliza, extiende y modifica el comportamiento que se define en otra clase
Interfaces: Las interfaces, como las clases, definen un conjunto de propiedades, métodos y eventos. Pero de forma contraria a las clases, las interfaces no proporcionan implementación
Delegados es un tipo que define una firma de método y que puede proporcionar una referencia a cualquier método con una firma compatible
Las Clases Una clase es una estructura de datos que combina estados (campos) y acciones (métodos y otros miembros de función) en una sola unidad. Una clase proporciona una definición para instancias creadas dinámicamente de la clase (objetos). Las clases admiten herencia y polimorfismo, mecanismos por los que las clases derivadas pueden extender y especializar clases base
Un evento es un miembro que permite que una clase u objeto proporcionen notificaciones
Un método es un bloque de código que contiene una serie de instrucciones. Un programa hace que se ejecuten las instrucciones al llamar al método y especificando los argumentos de método necesarios.
En C#, todas las instrucciones ejecutadas se realizan en el contexto de un método.
Los métodos se declaran en una clase, especificando el nivel de acceso, como public o private, modificadores opcionales como abstract o sealed, el valor de retorno, el nombre del método y cualquier parámetro de método.
Un campo es una variable que está asociada con una clase o a una instancia de una clase
Una declaración de clase puede especificar una clase base colocando después del nombre de clase y los parámetros de tipo dos puntos seguidos del nombre de la clase base
Una definición de clase puede especificar un conjunto de parámetros de tipo poniendo tras el nombre de clase una lista de nombres de parámetro de tipo entre corchetes angulares. Los parámetros de tipo pueden usarse luego en el cuerpo de las declaraciones de clase para definir a los miembros de la clase.
Cada miembro de una clase tiene asociada una accesibilidad, que controla las regiones del texto del programa que pueden tener acceso al miembro.z
Los miembros de una clase son miembros estáticos o miembros de instancia. Los miembros estáticos pertenecen a clases y los miembros de instancia pertenecen a objetos (instancias de clases)
Procedimentos y Funciones
Todas las instrucciones deben estar incluidas en un procedimiento o función, a las que llamaremos mediante su identificador. A estas funciones y procedimientos podemos pasarles parámetros. Existen cuatro tipos
Los procedimientos que ejecutan un código a petición sin devolver ningún resultado.
Las funciones que ejecutan un código y devuelven el resultado al código que las llamó.
Los procedimientos de propiedades que permiten manejar las propiedades de los objetos creados.
Los procedimientos de operador utilizados para modificar el funcionamiento de un operador cuando se aplica a una clase o una estructura.
Reglas de codificación en C#
Organización de ficheros
Mantener las clases y los ficheros cortos, con no mas de 2000 lineas de código
Crear un directorio para cada nombre de espacio
Indentación Usar Tab para indentar el código
Comentarios Evitar los comentarios de bloque, Comentar con /// para generar documentación
Declaraciones Se recomienda realizar una declaración por linea, ya que permite añadir un comentario explicativo
Inicializaciones Inicializar las variables locales lo antes posible
Espaciado Las lineas en blanco, mejoran la legibilidad del código