Please enable JavaScript.
Coggle requires JavaScript to display documents.
Identificando clases en una aplicación en C# (¿Qué ejemplos puede mostrar…
Identificando clases en una aplicación en C#
¿Qué son las clases y cual es la relación con la herencia?
Una clase es básicamente un plano para un tipo de
datos personalizado.
Cuando se define una clase, se utiliza cargándola
en la memoria.
Cuándo una clase que se ha cargado en la memoria se denomina objeto o instancia.
Se crea una instancia de una clase utilizando la
palabra clave de C#
new
Declaración de una clase
:
class nombre_de_la_clase
{
… contenido de la clase …
}
Dentro de una clase se puede:
Si no se especifica ningún modificador de acceso,
se asume que se trata de un elemento “private
Cada elemento puede tener un modificador de
acceso.
Los más conocidos son public y private.
declarar variables, propiedades,
métodos, delegados, eventos, etc.
Herencia:
La herencia, junto con la encapsulación y el polimorfismo, es una de las tres características principales de la programación orientada a objetos. La herencia permite crear clases nuevas que reutilizan, extienden y modifican el comportamiento que se define en otras clases. La clase cuyos miembros se heredan se denomina clase base y la clase que hereda esos miembros se denomina clase derivada. Una clase derivada solo puede tener una clase base directa, pero la herencia es transitiva. Si ClaseC se deriva de ClaseB y ClaseB se deriva de ClaseA, ClaseC hereda los miembros declarados en ClaseB y ClaseA.
En un pequeño resumen la herencia consiste en crear una nueva clase y heredarle a esta las características que se han creado en la clase principal (Clase Madre y Clase Hijo)
¿Qué ejemplos puede mostrar sobre clases en C#?
Clase con Propiedades
Clase con referencia this
Codificación de la clase
Clases con Set y Get
Declaración de objetos globales en una clase
Ejemplo de constructor
Constructor
Ejemplo Clase con Herencia:
Nota:
Las imágenes las podrá encontrar en mi portafolio para una mayor comprensión:
¿Qué son los métodos de una clase?
Contienen instrucciones para ejecutar al momento
de ser invocados.
Un método contiene:
Modificador de Acceso (Determina su visibilidad)
Tipo de dato (Devuelto al finalizar su ejecución)
Identificador (Nombre con el cual se invoca)
Parámetros (Cero o mas variables que recibe el método)
Los métodos son todos aquellos bloques de código que se ocupan de manejar los datos de la clase.
Es decir, serán las acciones qué se le darán a determinado objeto,
Son acciones que se realizan por un objeto de una clase.
¿Qué diferencia encuentra entre un método, una función y un procedimiento?
Procedimiento: Es un conjunto de instrucciones que cumplen una tarea
Función: Como un procedimiento pero retorna un valor
Método: Puede ser un procedimiento o una función, la diferencia es que le pertenece a una clase.
Ahora vamos con las diferencias entre estos::
Las funciones sólo pueden retornar un único valor, los procedimientos más de uno.
Aunque esto es lo que establece la teoría, en la práctica puede hacerse que las funciones devuelvan más de un valor mediante el paso de punteros como parámetros por valor, cada uno de los cuales puede apuntar a la dirección de memoria inicial de una estructura de datos compleja, tal como un arreglo o un registro. Puesto que en la mayoría de los lenguajes solamente se permite devolverse un único valor (el especificado en la declaración/definición de la función) este truco permite al programador mayor versatilidad sin violentar las reglas sintácticas del lenguaje mismo. Otra manera de saltarse esta limitante es empleando variables globales, aunque se aconseja documentar bien cada instrucción donde se utilicen así como mantenerlas bajo estricta supervisión para evitar efectos colaterales.
Las funciones sólo aceptan parámetros de entrada. Los procedimientos aceptan tanto parámetros de entrada como de entrada/salida.
Esta diferencia es fundamental y se relaciona con la anterior. Le confiere a los procedimientos más generalidad y versatilidad, como se menciona en la siguiente diferencia.
Los procedimientos pueden contener otras subrutinas. Las funciones no.
Un procedimiento puede incluir todas aquellas funciones que necesite para realizar su(s) tarea(s), así como otros procedimientos. En la programación orientada a objetos, esta característica facilita la encapsulación, uno de los conceptos claves de esta filosofía de programación. De este modo, un procedimiento puede convertirse en un módulo, el cual puede contener hasta sus propios almacenes de datos y funcione de manera independiente dentro de la estructura de un programa.
Los procedimientos son autónomos. Las funciones no.
Una función solo puede llamarse a ejecución al incluirse como parte de una sentencia o como argumento para otra función. Es decir, ella sola no puede constituirse como una sentencia independiente. Los procedimientos por su parte, aunque pueden comportarse de forma similar a las funciones en algunos casos, pueden constituir una sentencia independiente por sí solos.
Una función debe especificar el tipo de dato a devolver. Los procedimientos no.
Al declarar/definir una función es obligatorio incluir el tipo de dato que dicha función devolverá a su punto de llamada. Esto es muy importante, puesto que la variable, función o expresión que reciba el valor devuelto por la función llamada deberá ser capaz de manejar el tipo de datos que esta última produzca. En caso contrario se obtendrá el típico error "Type mismatch" (Tipos no concuerdan) en tiempo de compilación o ejecución.
Las funciones se destinan para realizar una única tarea. Los procedimientos para más de una.
Esta restricción está orientada más para favorecer el estilo y mantener simple el diseño de los programas. El asegurar que una función realice una única cosa favorece además la depuración y el mantenimiento. En la práctica puede hacerse que una función haga más de una cosa, pero no se recomienda por las ventajas antes mencionadas. Los procedimientos, por otro lado, puesto que son más generales y pueden devolver más de un valor a su punto de llamada a través de los parámetros de entrada/salida (parámetros por variable en Pascal) a menudo se les recarga con más de una tarea.
Las funciones deben ser cortas. Los procedimientos suelen ser largos.
Dado que las funciones se utilizan para tareas específicas y puntuales, éstas suelen ser cortas. Las buenas prácticas de programación recomiendan que una función no sobrepase las dos pantallas de texto a fin de que pueda ser manejable y se mantenga simple. Más allá de esta medida debe considerarse su fragmentación en dos o más subfunciones. Los procedimientos en cambio, puesto que podrían incorporar otras funciones y procedimientos y actuar como módulos o clases dentro de un programa, suelen extenderse varias páginas. Sin embargo, más allá de 10 suele llevar a considerar seriamente su fragmentación o refactorización a fin de mejorar el diseño y favorecer la depuración y el mantenimiento.-
Fuentes:
https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/
http://galeon.com/neoprogramadores/fxvsproc.htm
http://puntocomnoesunlenguaje.blogspot.com/2013/02/java-static.html
https://slideplayer.es/slide/3097366/