- 03/12/2004 : Avalon Adopts Single Platform Strategy
- 03/01/2004 : New Fortress and Excalibur Component Release
- 02/24/2004 : Wiki Revisions
- 02/12/2004 : Avalon Adopts JIRA
- 01/18/2004 : MerlinDeveloper graduates from Apache Incubator
- 12/06/2003 : New Wiki Site
Apache Avalon provides a complete platform for component programming including a core framework, utilities, tools, components and containers. By using key design patterns such as Inversion of Control (IoC) and Seperation of Concerns (SoC), Avalon achieves a number of advantages over traditional object oriented programming frameworks:
- No implementation lock
- Low coupling between components
- Component lifecycle management
- Configuration management and easy to use API
- Component meta-data framework and tools
- Service dependecy management
- Embeddable containers for standalone, J2EE and web environments
In Component Oriented Programming (COP), reusable and replaceable components can be assembled in a container to provide application blocks. Blocks in turn can be used to build anything from a client desktop application to an FTP server to a web service. Avalon provides a variety of basic components and default application blocks in order to help you quickly build your own application solution.
Given this, the Avalon team aims to:
- Provide a stable COP development platform (currently in JAVA)
- Create a rich set of client components API's and default implementations
- Develop complete container solutions
- Explore and extend COP development practices
- Containers: several complete container implementations used to host components.
- Framework: provides a specification of design patterns and rules in the form of interfaces.
- Components: contains container related utilities and simple core components.
If you're new to Avalon or COP in general, "Welcome!" You may be now wondering where to start. The following should help you find what you're looking for.
Avalon provides a number of containers such as Merlin and Fortress. For information about containers in general, see the containers section. For other Avalon-based or Avalon-related container solutions, see the related projects section. Avalon is used in several external projects, such as Cocoon, OpenIM, and others.
If you're new to Avalon, be certain to check out the Articles section, specifically, the Developing With Avalon white paper and the Getting Started Tutorial. You may also want to look at the Cornerstone documentation to examine existing utilities and components.
Whether you're a contributor or a committer, you'll should familiarize yourself with the Coding Standards document. The Community section also reviews various standards, policies, and practices within the Avalon community.
If you're interested in learning more about component oriented programming, then in addition to the Articles section, look at the Framework documentation. The Framework project contains sections of COP practices and is itself a good COP reference implementation.
Don't forget to wade through the wealth of material on our Wiki site. The mailing lists are also an excellent resource for support and more information.