Re: Some architecture thoughts and questions (somewhat long...)

From: Mike Kienenberger (mkienen..laska.net)
Date: Fri Jan 14 2005 - 12:00:43 EST

  • Next message: JR Ruggentaler: "RE: Cayenne newbe question"

    Alexander Lamb <Alexander.J.Lam..im.hcuge.ch> wrote:
    > 1. Cayenne and non SQL data-sources

    I think this is possible provided you create your own DBAdaptor subclass.

    > 2. Cayenne and mirroring
    >
    > I understand (I think) that in version 1.2, Cayenne will be able to
    > keep in sync the data contexts in several apps and several machines.

    I think this is already available in Cayenne 1.1, using either JMS or
    JavaGroups or your own implementation.

    http://www.objectstyle.org/cayenne/userguide/design/events.html

    > 3. GUI handling

    If you're already working at the graphics "assembly" level, you might
    consider something like jME Graphics Engine. It's a 3d rendering engine
    based on OpenGL, and seems blindly-fast for the things I've used it for so
    far. There's also some 2d support -- not sure if there's enough in there
    for you or not.

    http://www.mojomonkeycoding.com/

    Or you could skip to one of the underlying rendering systems like LWJGL if
    you're comfortable programming OpenGL directly.

    Or going the other direction:

    I'm also including a forwarded message by Martin Cooper of Struts on writing
    thick gui-rich web clients.

    I don't think "Flex" is mentioned, but since you're doing Flash stuff
    perhaps that's a good fit since it's also a Macromedia product.

    -Mike

    Begin forwarded message:

    Date: Wed, 01 Dec 2004 12:15:49 -0800
    From: Martin Cooper <mfncoope..mail.com>
    Subject: Re: Struts-BSF, Struts-Scripting [was Re: Proposal:
            Javascript-to-Java object conversions]]]
            
    We are currently using two different frameworks (together). One is
    commercial - Isomorphic SmartClient - and one is open source -
    nWidgets.

    SmartClient has a highly sophisticated widget set, and runs on just
    about every browser since Netscape 4.5. They essentially built an API
    layer on top of the browsers, and wrote everything else on top of
    that. Some of their widgets would take huge amounts of work to
    replicate, which is why we use them. ;-) We also use some server-side
    optimisation stuff that comes with SmartClient, and that helped hugely
    with our performance optimisations.

    nWidgets is a much smaller, leaner framework that works on top of /
    along side the browser DOM. As such, it doesn't support older
    browsers. The widget set is mediocre, but the underpinnings are very
    powerful, and it's those underpinnings that we use it for. For
    example, it has some really nice mechanisms for partial page refresh
    that we use extensively.

    One thing to bear in mind is that SmartClient is huge. They used to
    package it as a single 600KB .js file, which obviously has serious
    startup costs. We are now using a broken down version, where we can
    load only what we need on a give page, but I'm not sure if that made
    it into their product, or is custom for us. (We are probably their
    biggest customer.) nWidgets is much, much smaller.

    There are other frameworks out there too. The one to watch is Dojo.
    This is being put together by the brains of all of the high quality
    open source frameworks, with the goal of pooling all of their
    knowledge and coming up with the ultimate in client side frameworks.
    These are a bunch of very smart people. (I know because two of them
    work for us. ;) However, their goals are lofty, and I'm not sure when
    Dojo will be ready for prime time. Other frameworks that I'm aware of,
    but have not used, are Burst and f(m), both of which are open source,
    and FacesClient Components (nee Odyssey Browser Framework) from IBM.

    Some links:

    http://www.isomorphic.com/index.jsp
    http://nwidgets.org/
    http://www.dojotoolkit.org/
    http://www-
    106.ibm.com/developerworks/websphere/library/techarticles/0411_hasson/0411_hasson.html

    Hope this helps.

    --
    Martin Cooper
    

    On Wed, 01 Dec 2004 12:27:48 -0500, Mike Kienenberger <mkienen..laska.net> wrote: > What resources are available for doing the sort of applications that you're > talking about here? > > Are there any frameworks or books out there that deal with these kinds of > approaches? Or is all of this stuff only available in custom apps?



    This archive was generated by hypermail 2.0.0 : Fri Jan 14 2005 - 12:00:40 EST