Material adicional c sharp
-
Upload
juan-andres-valenzuela -
Category
Software
-
view
196 -
download
1
Transcript of Material adicional c sharp
Evolución C#
C# 1.0
C# 2.0
C# 3.0
Managed Code
Generics
Language Integrated Query
C# 4.0Dynamic Programming
¿Qué es una enumeración?
•Es un tipo por valor que consiste en un conjunto devalores constantes.
•Se utiliza para denominar un Tipo de manera masestética (legible y comprensible).
•Puede ser de cualquier tipo Integral (excepto char)
•Son tipos por valor.•Puede ser cualquier Tipo Entero:- byte, sbyte, short, ushort, uint, int, long,
ulong.•No pueden contener métodos,
propiedades, eventos.•No implementan Herencia,
Implementación de Interfaces.
¿Qué es una estructura?
•Es un tipo por valor que suele representar ‘objetos’ligeros.
•La mayoría de los tipos básicos son estructuras.
•Se almacenan en la sección ‘Stack’
•Su rendimiento es mayor que las clases.
•Son tipos por valor
•Se pueden crear instancias sin el new
•Pueden declarar constructores, perodeben utilizar parámetros.
•No pueden implementar la herencia.
•Puede implementar interfaces.
(Slide de Apoyo) LINQvar pasajerosNacionales =
from p in passengers
where p.Citizenship == “ES"
select new {p.Id, p.Name};
var pasajerosNacionales =
passengers
.Where(p => p.Citizenship== “ES")
.Select(p => new { p.Id, p.Name});
MétodosExtensores
Expresiones de Consulta
Inicializadores de Objetos
Inferencia TiposVariables Locales
- Un evento es un mensaje que envía un objeto cuando ocurre una acción. La acción puede estar causada por la interacción del usuario, como un clic, o por otra lógica del programa. El objeto que provoca el evento se conoce como remitente del evento. El objeto que captura el evento y responde a él se denomina receptor del evento.
Using Collection InterfacesIEnumerable
IEnumerable<T>
IDictionary<TKey, TValue>
ICollection<T>
IList<T>
<Window x:Class="MyNamespace.MainWindow"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"Title="Order Your Coffee Here" Height="350" Width="525"><Grid><Button Content="Get Me a Coffee!" /></Grid></Window>
Paralelismo de tareas (Task Parallel Library)
La biblioteca TPL se basa en el concepto de una tarea, que representa una operación asincrónica. El término paralelismo de tareas hace referencia a la ejecución simultánea de una o varias tareas independientes. Las tareas proporcionan dos ventajas fundamentales:
• Un uso más eficaz y más escalable de los recursos del sistema.
• En segundo plano, las tareas se ponen en la cola del elemento ThreadPool, que se ha mejorado con algoritmos que determinan y ajustan el número de subprocesos y que ofrecen el equilibrio de carga para maximizar el rendimiento. Esto hace que las tareas resulten relativamente ligeras y que, por tanto, pueda crearse un gran número de ellas para habilitar un paralelismo pormenorizado.
• Un mayor control mediante programación del que se puede conseguir con un subproceso o un elemento de trabajo.
Tipos de métodos asíncronosBásicamente podríamos dividir los métodos asíncronos (por su definición) en dos grupos:
· Métodos a los que podemos esperar· Métodos a los que no podemos esperar
Los métodos a los que podemos esperar (awaitable en inglés) retornarán un objeto de tipo Task o más normalmente Task<T>.
Los métodos a los que no podemos esperar, estarán marcados como async pero no retornarán ningún valor (void).
Si invocamos un método al que podemos esperar sin una expresión await, el compilador nos indicará que podríamos esperar a la terminación del método si quisiéramos, aunque no es obligatorio. En este caso, la ejecución del resto del método continuará sin esperar a la tarea asíncrona invocada.