--
PedroRio - 06 Dec 2010
Introduction to the XEO Framework
XEO (pronouced "Zio", which stands for e
Xtensible
Enterprise
Objects) is an agile development framework that eases the creation of web-based management applications.
XEO's approach to development is modelling real world entities (such as people, cars or invoices) as XEO Object Models, defining their behavior and using a component-based visual layer to achieve a full-fledged web application, which includes listing, editing and searching of instances of said entities. The Eclipse Plugin, XEO Studio, further automates the process of creating said Object Models, editing their properties and behaviors and also creating the visual layer for those Object Models. XEO Object Models abstract the developer from the intrinsic (relational) data model, enable customized behavior and the XEO Web Components speed up the creation
Requirements
An application built using the XEO framework requires a
J2EE Server (such as Oracle's
OC4J or
JBOSS) running Oracle's Java 6 and backed by a relational database (XEO has connectors for popular Databases such as
MySQL,
Oracle and
SQL Server), altough data-source independence is in XEO's roap map. Developing with XEO requires, also, an Eclipse installation with the XEO Studio plugin. The XEO Studio plugin is not
really required but it makes the process so much easier that there's no reason not to use it.
For Who?
This document assumes you're familiar with Object Oriented Programming concepts and with the Java language in particular. Knowledge of the relational model and the Structured Query Language (SQL) is also recommended. Familiarity with the Eclipse IDE is a plus, since developing a XEO application is done using XEO Studio which is an Eclipse Plugin created specifically to aid in the process.
Why XEO, how does it help me?
XEO was designed from scratch to build web-applications faster while abstracting from low-level details (such as creating tables in the SGDB, learning an object-relational mapping tool, learning javascript, html and css to produce a nice and usable interface). With XEO you can map a real world entity, its properties and its behavior using a simple language, which the framework will use to build the necessary database tables, java support classes and even list/edit/lookup web pages.
TODO: