Beyond 2.8 - namespaces
John Ralls
jralls at ceridwen.us
Mon Dec 25 18:26:06 EST 2017
> On Dec 25, 2017, at 1:01 PM, Lincoln A Baxter <lab at lincolnbaxter.com> wrote:
>
> On Mon, 2017-12-25 at 17:34 +0100, Geert Janssens wrote:
>> Agreed indeed. For example in my work on the importers I have
>> introduced a
>> strict separation of import functionality and gui. So the non-gui
>> parts of the
>> importer should move to libgnucash eventually as I want them to
>> bepart of the
>> api. That way they can be used by other applications (mobile apps,
>> web
>> app,...) and would be available to the bindings as well.
>
> First, let me say, I have been using GC since at least 2005, and I've
> only recently begun following the dev list. That said, I have a lot
> of experience in application/solution and n-tier client/server
> architectures at the corporate level... so please take this as just
> something to consider...
>
> As I was reading this thread, and thinking about this C++ refactoring,
> a question occurred to me, which a little bit relates to Geert's above
> quoted paragraph.
>
> Has anyone thought about separating the UI functionality from
> application functionality using a (restful) services interface between
> the GUI and the "library" (application logic)?
>
> The interface to the library would not have to be implemented as
> services (initially), but if it were thought of this way, one might be
> able to separate out UI functionality from application functionality
> pretty completely... eventually anyway.
>
> Might this be a way to eventually move to a multiuser environment,
> which comes up not infrequently on the user list? With this approach,
> the "server side" could still keep the entire model in memory. If so,
> I would think this might influence what goes into libgnucash?
>
> I suspect this approach could eventually help facilitating multiple
> front-side UI's but common logic on the back-side I think this would
> allow one to eventually move to a browser based UI.
>
> One would not have to go "all the way" initially, but if this were a
> paradigm for choosing what goes where, GC would be able to migrate to
> such an architecture over time.
>
> Just a thought, FWIW.
Except for the RESTful part, yes. MVC separation has been one of the development goals for years. We're severely constrained in developer hours so unfortunately it's likely to be a goal for many years to come.
Regards,
John Ralls
More information about the gnucash-devel
mailing list