Manual de wpf

Solo disponible en BuenasTareas
  • Páginas : 33 (8062 palabras )
  • Descarga(s) : 0
  • Publicado : 19 de febrero de 2012
Leer documento completo
Vista previa del texto
Desarrollo de aplicaciones con .NET y WPF
Andrés Marzal
Departamento de Lenguajes y Sistemas Informáticos Universitat Jaume I Decharlas, 24 de mayo de 2010

¿Qué es .NET? ¿Qué es C#? ¿Qué es WPF? ¿Qué es Visual

P

Studio? ¿Qué es Expression Blend?
odemos simplificar mucho y decir que .NET es la respuesta de Microsoft a Java. .NET ofrece un entorno de ejecución con máquina virtual paraun lenguaje de máquina propio: IL, por Intermediate Language. Diferentes lenguajes se traducen a ese lenguaje de máquina y un compilador de última hora genera código nativo, que es lo que realmente se ejecuta. .NET sigue un estándar ECMA: “Standard ECMA-335, Common Language Infrastructure (CLI)”. La implementación de Microsoft del CLI se conoce por CLR (Common Language Runtime). Hay unaimplementación libre de CLI desarrollada por Novell: Mono. Acompaña al entorno un conjunto de librerías gigantesco, aspecto en el que .NET va significativamente por delante de Mono. El lenguaje de preferencia para .NET es C# (se lee “C Sharp”), un lenguaje que se diseñó para superar algunos problemas de Java. En particular, la diferencia sustancial entre valores y objetos y la carencia de delegados quefacilitaran la implementación del patrón observador/observable. C# ha evolucionado mucho desde su aparición, pero mantiene una coherencia en el diseño que lo hace fácil de aprender. Aunque es un lenguaje con herencia simple, implementación de interfaces y memoria con recolección automática, como Java, se diferencia de éste en numerosos aspectos importantes. C# ha integrado eficazmente varios conceptosde la programación funcional, como las funciones anónimas y las clausuras. Cuenta además con un mini-lenguaje para efectuar consultas a fuentes de datos, LINQ, que facilita mucho la gestión de información proveniente de bases de datos, de colecciones en memoria, de ficheros XML, etcétera. Lo cierto es que LINQ facilita el trabajo con cualquier objeto que proporcione una enumeración de elementos.Las enumeraciones son muy corrientes en .NET, pues C# facilita su diseño e implementación mediante estructuras de control como “yield return”. C# evita, además, la verbosidad del patrón de consulta y asignación de valor a campos (“getters & setters”) propia de Java mediante las denominada propiedades. Finalmente cabe advertir que la implementación de tipos genéricos en C# es mucho más sólida que lade Java, pues conserva información de tipos y distingue entre valores y objetos en el parámetro de tipo, a diferencia de lo que ocurre en Java, que basa su implementación de genéricos en el borrado de tipos. C# está estandarizado y su definición se encuentra en “Standard ECMA-334 – C# Language Specification”. Va por la versión 4.0 tanto en .NET como en Mono. WPF son las siglas de WindowsPresentation Foundation. Es un conjunto de librerías para implementar aplicaciones interactivas. Arrancó con el nombre en clave “Avalon”. Presenta muchos

Desarrollo de Aplicaciones con .NET y WPF aspectos interesantes: separación de apariencia y lógica, soporte del patrón “orden” (command), fácil conexión a fuentes de datos vía ligaduras (bindings), simplificación de trabajo con objetos observablesmediante propiedades de dependencia, herencia de valores para propiedades por relación jerárquica entre componentes, acceso directo a hardware gráfico, animaciones, personalización completa de componentes mediante plantillas, etcétera. La P de WPF viene de “Presentation” y es importante. WPF soporta el patrón arquitectónico Modelo-VistaPresentador (frente al clásico Modelo-Vista-Controlador). Laversión WPF de este patrón es la que se conoce por Modelo-Vista-Modelo de la Vista, o MVVM por Model-View-ViewModel. Hay una versión ligera de WPF diseñada para correr incrustada en navegadores (aunque también puede ejecutarse fuera del navegador): Silverlight. El proyecto arrancó con el nombre en clave WPF/E, por WPF Everywhere, y muchas veces se habla de él en términos de competencia directa con...
tracking img