Connecting Tech Pros Worldwide Help | Site Map

OODB or RDB for checkbook/budget program?

Member
 
Join Date: May 2007
Posts: 32
#1: Jul 11 '09
Hi,
I wrote myself an Access db several years ago to do some things for my checkbook and budgeting and I've really enjoyed it ever since. Lately I've been thinking about writing it as a stand alone program so I could let my family and friends use too (I don't want it to be Access dependent because I don't want to have to troubleshoot and support it on different versions of Access or MDAC).

Anyway, recently I took a class on OO programming logic and a C++ class, and as I was thinking of how to design it, I was thinking in terms of objects. For instance, a transaction would be an object with attributes like a date, amount, etc. But then I realized that designing it this way seems to be fundamentally different from the way I did it originally with Access. So it looks like the first big decision I have to make is to decide whether to use object oriented db design or relational db design. Is this true, and if yes, which way would be better to go for a checkbook/budgeting app?

Thanks for your help.
JosAH's Avatar
Expert
 
Join Date: Mar 2007
Posts: 10,611
#2: Jul 12 '09

re: OODB or RDB for checkbook/budget program?


OODBs never really took off; RDBMSs and OODBs are sort of orthogonal to each other; for an RDBMS there are ORMs (Object Relational Mappers), OODBs don't need them. Google for 'Cache' from Intersystems for one of the few nice OODBs; there was another one (from the top of my head) 'Objectivity' but as far as I know the company that produced it went out of business.

kind regards,

Jos
Member
 
Join Date: May 2007
Posts: 32
#3: Jul 12 '09

re: OODB or RDB for checkbook/budget program?


Thank you Jos.
I'm thinking now that I need to go with an RDB data store, especially since I have my checkbook mdb as a working model. If I used C++ or Python to program it and SQL Express as the data store, would that mean that I have C++ or Python "front-end" and a SQL Express "back-end"? Would that work?
JosAH's Avatar
Expert
 
Join Date: Mar 2007
Posts: 10,611
#4: Jul 13 '09

re: OODB or RDB for checkbook/budget program?


Quote:

Originally Posted by ringer View Post

Thank you Jos.
I'm thinking now that I need to go with an RDB data store, especially since I have my checkbook mdb as a working model. If I used C++ or Python to program it and SQL Express as the data store, would that mean that I have C++ or Python "front-end" and a SQL Express "back-end"? Would that work?

I guess so; you can also pick Java; Java has a nice framework available for all sorts of RDBMs; the advantage is that you can change back ends (as you call them) without changing a single line of Java code. For Java there are also Object-Relational mappers available to make the 'gap' between the relational world and the object oriented world smaller.

kind regards,

Jos
Member
 
Join Date: May 2007
Posts: 32
#5: Jul 13 '09

re: OODB or RDB for checkbook/budget program?


Very interesting. Thanks a lot for the info and the help.
Member
 
Join Date: May 2007
Posts: 32
#6: Jul 15 '09

re: OODB or RDB for checkbook/budget program?


Quote:

Originally Posted by JosAH View Post

For Java there are also Object-Relational mappers available to make the 'gap' between the relational world and the object oriented world smaller.

I was just rereading your post (again) and it brought a question to mind. Are the Java mappers necessary for using an RDB back-end or were you meaning they bridge the "gap" between Java and an OODB?

Thanks again.
JosAH's Avatar
Expert
 
Join Date: Mar 2007
Posts: 10,611
#7: Jul 15 '09

re: OODB or RDB for checkbook/budget program?


Quote:

Originally Posted by ringer View Post

I was just rereading your post (again) and it brought a question to mind. Are the Java mappers necessary for using an RDB back-end or were you meaning they bridge the "gap" between Java and an OODB?

Thanks again.

You don't need those mappers; you can use the JDBC framework as is; it directly manipulates tables and views; you can submit any query on the database and the framework returns you the results. You are effectively working with tables/views and rows thereof.

Those Object Relational Mappers map objects in Java to rows in tables and compose queries themself. It is a layer between Java and those tables/views in the database.

kind regards,

Jos
Member
 
Join Date: May 2007
Posts: 32
#8: Jul 16 '09

re: OODB or RDB for checkbook/budget program?


Thanks a lot for all the info and help, Jos.
Reply


Similar Software Development bytes