Looking for database program design advice from experienced programmers
I'm a recently graduated CSci student and I'm currently working on a mysql backed java program for property management and I could really use the perspective of an experienced programmer or two. Anyone interested in having an ongoing dialog about database program design?
A little about the problem:
My initial plan was to use an MVC structure extended by a database interface & model separate from the business logic that could essentially be swapped out if a different database or (heavens forbid) an XML based storage solution was chosen.
As I started the design workup I realized that this is almost a pure CRUD application. There is very little business logic involved. I did a classic pass through the software's description, separated nouns and verbs to generate classes etc. but quickly began to thing that there was very little reason to use the classes I'd defined (property, unit, tenant, etc) if I was using a SQL database.
I was going to be pulling data from the database to create objects, then for the most part simply ripping the objects apart to populate JTables for display. Such an approach would also potentially require maintaining alot of RAM based data structures.
If, on the other hand I populate Jtables directly from SQL record sets I could leverage the power of the db engine to handle searches, maintain indexes, and most of the storage would be hard drive rather than RAM. In the process I'd loose the ability to swap out the storage module for say, an XML solution (or the next best thing in data storage, what ever that will be).
My hope is to follow "good design practices" and "industry standards" as much as possible, and I would eventually like to open source the project, so I want the code to make sense to others. Unfortunately, I don't have any industry experience to base decisions on.
Any advice from the programming community?