[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