XUL vs. AJAX
How do these two relate?
They share several aspects.
- implemented in Javascript
- asynchronous client-server communication
- data might be transmitted in XML
- extensive client-side data validation
- rich user interface
- no history model (back/forward button)
Major distinctions:
- AJAX is part of the view -- and thus eye candy in most cases.
- AJAX aims at being cross-browser compatible.
- XUL can contain model, view, controller.
- XUL has full access to the user's system including local files. **
- XUL can be stand-alone. An application server is optional.
- XUL has a richer widget set compared to HTML.
- XUL can connect to databases directly.
Or in other words, you can write a full, self-contained application using XUL. In the simplest case, the appserver will only execute SQL queries. Or you could even use the SQL Mozilla extension for accessing a local SQLite database and thus create stand-alone applications.
** Note that I don't care about remote XUL. Our apps always have the XPConnect privilege.
