This project has retired. For details please refer to its Attic page.
Polygene™
Introduction
Tutorials
Javadoc
Samples
Core
Libraries
Extensions
Tools
Glossary 

Polygene™

3.0.0

This is the documentation for Polygene™ 3.0.0. Use the version switcher on the left to browse other versions documentation.

What is Apache Polygene™ ?

The short answer is that Apache Polygene™ is a framework for domain centric application development, including evolved concepts from AOP, DI and DDD.

Polygene™ is an implementation of Composite Oriented Programming, using the standard Java platform, without the use of any pre-processors or new language elements. Everything you know from Java still applies and you can leverage both your experience and toolkits to become more productive with Composite Oriented Programming today.

Moreover, Polygene™ enables Composite Oriented Programming on the Java platform, including both Java and Scala as primary languages as well as many of the plethora of languages running on the JVM as bridged languages.

We strongly recommend the introduction section.

Brief History

Apache Polygene™ started its life in 2007 as Qi4j™, initially at OPS4J’s infrastructure and later on GitHub. In March 2015, Apache Polygene™ was created with the Qi4j™ codebase as the base, existing Apache Members as the bootstrap Project Management Committee (PMC).

Qi

Qi4j™ is pronounced "chee for jay". This website is out of scope to explain the many facets and history of Qi, so we refer the interested to read the lengthy article at Wikipedia. For us, Qi is the force/energy within the body, in this case the Java platform. Something that makes Java so much better, if it is found and channeled into a greater good.