converted to 1.6 markup
|Deletions are marked like this.||Additions are marked like this.|
|Line 21:||Line 21:|
|[Return to ["AvalonFAQ"] ]||[Return to [[AvalonFAQ]] ]|
What is Avalon?
Avalon is a component framework for Java (and effort is underway for other languages too).
Ok, so what is a component framework?
Component Oriented Programming (COP) combines nifty design patterns such as Inversion of Control and Seperation of Concerns to traditional Object Oriented Programming. Design patterns are essentially 'best practices' for solving common programming problems. COP applies these practices to components -- reusable, replacable, composable objects which when assembled together (usually inside of a container) make for a well designed, secure, and easily maintained application.
That sounds cool, but kinda abstract and generic...
In a way, yes. Avalon is somewhat abstract and generic, just like object oriented programming is abstract and generic. Avalon is a COP framework for Java (and soon other languages!). All the basic algorithms and utilities for using those design patterns are in place. There are even a couple of containers and prebuilt components available. You can then use Avalon to build just about anything, from a web application to a new web framework, from a desktop standalone app to a new application server. Most of the 'extras' of Avalon are designed to build server-like applications, but the framework itself can be used anywhere.
To learn more, visit the documentation section of the Avalon web site: http://avalon.apache.org/doc/index.html
You also should read our 'Developing With Avalon' whitepaper at: http://avalon.apache.org/developing/index.html
Try looking at our IntroductionToAvalon section of the wiki as well.
[Return to AvalonFAQ ]