<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> | |
<html> | |
<link href="../../book.css" rel="stylesheet" type="text/css" /> | |
<head> | |
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> | |
<title>Project</title> | |
</head> | |
<body> | |
<h1>Project</h1> | |
<ul> | |
<li><a href="#project_01">What is XWT?</a></li> | |
<li><a href="#project_02">Benefices of XWT for eclipse</a></li> | |
<li><a href="#project_03">Architecture</a></li> | |
</ul> | |
<h3><a name="project_01"></a>What is XWT?</h3> | |
<p>Declarative UI is a new programming paradigm, which is widely used in Web application development. In Eclipse, UI development in Java is the only proposed solution. This solution presents several drawbacks:</p> | |
<ul> | |
<li>High technology pre-requisite as UI developer</li> | |
<li>Difficult to separate UI appearance and business logic</li> | |
<li>Poor reusability</li> | |
<li>Limitation of the dynamic UI support</li> | |
<li>Very hard to integrate with development tools </li> | |
</ul> | |
<p align="center"><img src="images/XWTPosition.png" width="800" height="435"></p> | |
<p>XWT is designed specially for eclipse to resolve these problems by providing a foundation infrastructure. It is a UI framework based on an extensible markup language for application development in declarative programming paradism. | |
It adopts directly SWT/JFace UI model as XML serialization model. It uses in fact a direct mapping approach between XML grammar and UI runtime libraries.</p> | |
<p>XWT simplifies UI programming. You can create visible UI elements | |
in the declarative XML markup with a physical separation of the UI | |
definition from the run-time logic. 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, XWT directly | |
represents the instantiation of managed objects.</p> | |
<p align="center"><img src="images/XWTComponent.png" width="627" height="388"></p> | |
<p>XWT is XML UI for eclipse.</p> | |
<ul> | |
<li>XWT is a XML dialect</li> | |
<li>Designed for human-editable and tooling</li> | |
<li>Dynamic mapping with programming model</li> | |
<li>Complete declarative UI framework integrated natively with SWT/JFace</li> | |
<li>Powerful Declarative Data Binding solution on top of JFace data binding</li> | |
<li>Reusable data presentation component</li> | |
</ul> | |
<h3><a name="project_02"></a>Benefices of XWT for eclipse</h3> | |
<p>The main benefices of XWT are following:</p> | |
<ul> | |
<li>More human-readable and light-weight markup without ambiguity | |
between properties and child type</li> | |
<li>High Extensible</li> | |
<li>Well defined and complete specification</li> | |
<li>Mature and Generic Declarative UI solution</li> | |
</ul> | |
<h3><a name="project_03"></a>Architecture</h3> | |
<div align="center"><img src="images/architecture.png" /> | |
</div> | |
<ul> | |
<li>SWT Model as XWT Model<br /> | |
- This model comes from the JavaBean reflection and additional models | |
to enhance the limitations of SWT API.</li> | |
<li>This model can be changed to another</li> | |
<li>XWT provides more concepts on top of XML<br /> | |
<ul> | |
<li>Resource separation between UI and Event handling</li> | |
<li>Dynamic mapping with UI Model and programming language</li> | |
<li>Resource management</li> | |
<li>Markup extensions</li> | |
<li>Binding expression language</li> | |
</ul> | |
</li> | |
</ul> | |
</body> | |
<p><img src="../../cpy.png" /></p> | |
</html> |