BMObjects seeks to be the first step to bring near the development environment RAD from Delphi to a cycle of software development real OOP.
To get this change, the first thing that should be made is to eliminate the shortcut to the pattern of the relational DB's. In Delphi everything is based on the access to the famous Dataset and their derivates. This allows a very quick but very not very organized, flexible and scalable development. The experience has demonstrated that in projects of half or big reach, this development type finishes being an authentic disorganized noise and with big maintenance problems and evolution.
Delphi is an excellent development language that completes all the rules of the OOP almost, but the same ones are wasted by a great part of the developers by blame from the shortcut to the database. It cannot be carried out an analysis and design of an application with objects of the business since these they "vanish" when inserting the datasets and to begin to consent directly to the DB.
The main problem is therefore transforming the world of objects of the business into a relational model, since the servants of main DB's still work with that pattern. If we are able to insert a layer that transforms us the relational world into our world of objects of the business, we will be able to work with them without to worry of in that register or in that chart stays.
BMObjects carries out that function. It is able to isolate the relational pattern of our model of the business. From the moment in that you use BMObjects, you will be able to have a diagram of classes in UML with the pattern of the business where your classes (as TInvoice, TCustomer, TOrder, etc.) they are real objects and non registrations of a chart. This will allow you to develop with OOP in all the phases of the cycle of life of your system without having to break in the moment to arrive to the reading / recording of data.