[Catalyst] Questions about implementing a GUI-like interface with Catalyst
Christian Brink
cbrink at brinkrods.com
Thu Oct 19 05:38:28 CEST 2006
I have a project where majority of code is Catalyst, but I need a more
traditional GUI interface for one section. Specifically, a point of sale
interface for small to medium sized retailer. The lag of a traditional
HTTP interface just wouldn't be a good fit, so I'm wondering what your
opinions would be on approaching this.
Here are some things I've been kicking around. As I see it right now I
have 2 main options: A traditional GUI (most likely using Prima
http://www.prima.eu.org/, but wx, GTK+, and TK are also possibilities)
or a more Ajax-like solution.
Note: I may be (and most likely am) way off on my assumptions.
For the traditional GUI I was thinking of a couple of approaches.
1. Just access the DBIC interface. I'm assuming this means either
recreating the business logic in separate modules for GUI access (not my
idea of fun code maintenance) or moving the business logic to the model.
2. Keep my external methods for the Catalyst Views really thin.
Basically wrappers for internal methods that do real work, all they
would do is just call the view. Then have the GUI access the real work
'pseudo-internal' methods.
For the more Ajax-like approach, My question is not so much about
implementation but worrying about investing time and not getting the
performance when scaled to the real world (30,000 skus, couple K of
customer accounts, and bursts of busy times where GUI response time will
be a large concern). It does eliminate the GUI concerns stated above
(which may not be real concerns). Is this worth looking at or will I be
sorry after spending the time to implement it? I realize this request
most likely involves a crystal ball and some chicken bones. But since I
have a viable alternative (traditional GUI), I would rather take the
safe route. So I guess I'm asking if someone knows or feels strongly
that I can eliminate the Ajax option or should I explore this.
Christian
More information about the Catalyst
mailing list