I've first talked about DAO-Ext during my presentation at FITC Amsterdam, where I've shown a couple of tecniques to work with local persisten SQLite data with AIR.
The DAO design pattern was created by Sun to abstract and encapsulate all access to the data source. The DAO manages the connection with the data source to obtain and store data.
Working with SQLite databases in AIR, it's important to define and mantain a consisten and highly reusable approach with data. To be more precise it's important to abstract your View from all the data access logic. Doing that you'll ba able to reuse DAO classes for different Views of your AIR applications.
In terms of development it means to create several ActionScript classes that implement the DAO pattern and that uses ActionScript Value objects as entity. This repetitive task could make you spend a lot of annoying time.
That's why at Comtaste we've decided to create DAO-Ext, a simple AIR tool that allows us to auto-generate the necessary ActionScript code and save us a lot of time.
DAO-Ext is an Adobe AIR tool that allows developers to automatically generate ActionScript Data Access Objects (DAO) and Value Objects starting from a local SQLite database. The project is totally free and open source.
For this first release the tool allows developers to:
- Select a local SQLite database and load a SQLite schema
- Generate for each table an ActionScript VO and an ActionScript DAO
- All the DAO objects are generated as singleton classes and use the ActionScript Value Object as itemClass of the row of the table
- The ActionScript Value Objects are Bindlable object
- Export all the AS VO and DAO of the tables in a click
- Show/hide a log window Choose the folder to store the generated classes
The DAO-Ext tool has beend released by Comtaste as an open source project. You can easily download the AIR file and install on your desktop (cross platform) and start using it to auto-generate ActionScript Value objects and Data Access Object (DAO) classes.
This is a very first build of DAO-Ext and we've a lot of ideas in mind to implement and add new features. We're very curios to see how the community will use this tool and we'd love to have some supporters that contribute to the project.
So feel free to send me an email !