[RFC] A differnt options system

Derek Atkins warlord at MIT.EDU
Thu Feb 17 20:22:37 EST 2005

Chris Shoemaker <c.shoemaker at cox.net> writes:

>> Unfortunately I was really tired last night and had to leave before we
>> could finish our conversation.  I think that as a way to abstract
>> dialog creation (note that I didn't say "options" ;) this might be an
>> interesting approach.  I'd like to see this approach validated -- does
>> it really reduce code size and code complexity, or does it just
>> tradeoff one set of APIs for another set of APIs?
> Well, of course it trades one api for another api (or set thereof).
> But it replaces less abstract apis with a more abstract one.

Just to play devil's advocate, more abstraction isn't ALWAYS the best
solution..  At some point you hit diminishing returns, adding
abstractions that don't actually reduce the amount of code.  That's
sort of why I'd like to see a validation of the approach to see how
effective it is at reducing the code footprint of some existing,
rather simple dialogs.

>> As a validation of this approach I'd definitely like to see how this
>> could, for example, reduce the code footprint of existing dialogs.
>> For example, could you re-implement dialog-customer (just to take a
>> relatively simple dialog) using your API?  How much would it reduce
>> the code and/or complexity of dialog-customer?  (note, feel free to
>> use dialog-vendor or dialog-employee instead as a test-case).  Does
>> this reduce the code size by 5%?  10%?  50%?
> Well, a particularly favorable example would probably be
> gnc-plugin-page-account-tree, since it currently uses optionsDb.  But
> I'll look at some dialog-foo and try to answer the question you asked.

Let's for now leave optionsDB out of this?  That's what got us into
this horrible rathole in the first place.  Let's continue to explore
this approach as a way to improve and simplify the existing (and new)
glade dialogs...???

> -chris


       Derek Atkins, SB '93 MIT EE, SM '95 MIT Media Laboratory
       Member, MIT Student Information Processing Board  (SIPB)
       URL: http://web.mit.edu/warlord/    PP-ASEL-IA     N1NWH
       warlord at MIT.EDU                        PGP key available

More information about the gnucash-devel mailing list