Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

E4/DeclarativeUI/XAML Compare

Name of Technology

XAML compatible with Silverlight

Purpose

Adopt XAML technology as XML serialization and Silverlight model for e4

Contact

Yves YANG

Committers

Yves YANG, Thomas Guiu and others

Current License

XAML specification is licensed under OSP license (Open Specification Promesses)

Description

Extensible Application Markup Language (XAML) is a markup language for declarative application programming. Windows Presentation Foundation (WPF) implements a XAML loader and provides XAML language support for Windows Presentation Foundation (WPF) types such that you can create the majority of your application UI in XAML markup. Silverlight uses the same technology for Declarative UI.

Soyatec has developed a solution for Java: eFace, which is compatible with XAML/WPF. Obviously, XAML is a generic solution can be used not only in .NET environment, but also in Java.

Precisely, XAML simplifies creating a UI for the .NET Framework programming model. You can create visible UI elements in the declarative XAML markup, and then separate the UI definition from the run-time logic by using code-behind files. The ability to mix code with markup in XAML is important because XML by itself is declarative. An XML based declarative language is very intuitive for creating interfaces ranging from prototype to production, especially for people with a background in web design and technologies. Unlike most other markup languages, XAML directly represents the instantiation of managed objects. This general design principle enables simplified code and debugging access for objects that are created in XAML.

The benefices of this solution for e4 are following:

  1. Well defined specification
  2. Mature and Generic Declarative UI solution
  3. High Extensible
  4. Keep the interoperability with .NET/Silverlight
  5. Share the common tools like eclipse SLDT

Back to the top