XAML: descripción general
XAML son las siglas de Extensible Application Markup Language. Es un lenguaje simple y declarativo basado en XML.
En XAML, es muy fácil crear, inicializar y establecer propiedades de un objeto con relaciones jerárquicas.
Se utiliza principalmente para diseñar GUI.
También se puede utilizar para otros fines, por ejemplo, para declarar el flujo de trabajo en Workflow Foundation.
XAML se puede usar en diferentes plataformas, como WPF (Windows Presentation Foundation), Silverlight, Mobile Development y Windows Store App. Se puede utilizar en diferentes versiones de .Net framework y CLR (Common Language Runtime).
Cómo funciona XAML
XAML es un declarative lenguaje en el sentido en que define el WHAT y HOWquieres hacer. El procesador XAML es responsable delHOWparte para averiguarlo. Echemos un vistazo al siguiente esquema. Resume el lado XAML de las cosas:
La figura ilustra las siguientes acciones:
El archivo XAML es interpretado por un procesador XAML específico de la plataforma.
El procesador XAML transforma el XAML en código interno que describe el elemento de la interfaz de usuario.
El código interno y el código C # se vinculan mediante definiciones de clases parciales y luego el compilador .NET crea la aplicación.
Ventajas de XAML
Uno de los problemas de larga data que todos enfrentamos con el diseño de GUI se puede resolver mediante el uso de XAML. Se puede utilizar para diseñar elementos de interfaz de usuario en aplicaciones de Windows Forms.
En los marcos de GUI anteriores, no había una separación real entre cómo se ve una aplicación y cómo se comporta. Tanto la GUI como su comportamiento se crearon en el mismo lenguaje, por ejemplo, C # o VB.net, lo que requeriría más esfuerzo por parte del desarrollador para implementar tanto la interfaz de usuario como el comportamiento asociado a ella.
Con XAML, es muy fácil separar el comportamiento del código del diseñador. Por tanto, el programador XAML y el diseñador pueden trabajar en paralelo. Los códigos XAML son muy fáciles de leer y comprender.