Habanero.NET

Habanero
Developer(s) Chillisoft
Stable release 2.4.0 / May 14, 2010; 20 months ago (2010-05-14)
Operating system Microsoft Windows
Type Object-Relational Mapping
License LGPL
Website http://www.habanerolabs.com

Habanero is an Enterprise Application Framework for the .NET platform that provides tools for rapid application development using agile techniques. Habanero uses object-relational mapping (ORM) to carry out data persistence from relational databases to objects in code, and provides runtime user interface generation to create and edit the mapped data. Habanero is one of several rapid application and ORM tools available, each seeking to resolve the mismatch between object-oriented code and relational databases. Habanero is developed by Chillisoft, a software development company from Pietermaritzburg, South Africa, and is released as free, open source, under the GNU LGPL license.

Habanero uses an Xml file to determine how the data mapping should take place, giving the developer some control over data types and validation rules. User interface generation is supported through a control factory structure, using an abstract factory pattern, so that the appropriate control factory is chosen for the deployment environment. By supporting Visual WebGUI (developed by Gizmox) and Windows Forms, an application developed by Habanero can be deployed in either a desktop or web environment.

The Habanero architecture provides dependency inversion between the business object layer and database layer, which provides the ability to source data from variable data source types, including a relational database and an in-memory database that stores data for the lifetime of the application.

Habanero includes the Firestarter tool to manage the mapping definitions. Firestarter is able to generate the class definitions from an existing database schema. Apart from managing the specific settings within the class definitions, Firestarter uses code generation from custom templates to generate a working solution, including once-off form generation. Firestarter is included for free, but is not distributed under the LGPL license with the main Habanero framework.

Release history

Habanero was released on July 27, 2007, primarily as an open source tool to carry out the ORM functionality. The additional user interface support and Xml editor were released for free during the beta phase.

On November 7, 2007, Chillisoft launched the gold release of Habanero, splitting the product into two packages. Habanero Standard was released as a free, open source edition that carried out object-relational mapping and that required manual construction of the Xml mapping definitions. Habanero Professional extended the Standard edition by providing a mouse-driven interface to edit the XML mapping definitions, and by offering support for the generation of the definitions from an existing database. The Professional edition also provided generation of code and user interfaces to edit the properties defined in the definitions.

On June 9, 2008, with the version 1.4.1 release, the entire Habanero framework was moved to the free LGPL license and the Pro and Standard editions were merged. Firestarter was included as a free executable utility.

On September 15, 2008, Chillisoft released a version 2.0 beta of Habanero, rebranding it as a full Enterprise Application Framework. Version 2 included support for Visual WebGUI and the Firebird database.

On October 17, 2008, with the version 2.0.1 release, an example application was released which demonstrated the separation of the presentation layer from the user interface layer. The example application provided both Windows Forms and Visual WebGUI presentation layers sharing common user interface code.

On November 12, 2008, version 2.1 was released with support for once-off generation of standard forms built from dynamic Habanero user interface components.

On June 12, 2009, version 2.3.0 was released with a wide range of bug fixes and performance enhancements.

On September 10, 2009, version 2.3.1 was released with a wide range of bug fixes and performance enhancements.

On March 29, 2010, version 2.3.2 was released. The new version now has added Support for MSAccess2007 to Habanero and dramatically improved performance of loading collections.

-