Your comments seem very much in line with Perrin's analysis in his slide
presentation: CGI::App is suited for those who want high flexibility so they
have control over their site. The syntax and methods are both flexible and
extremely simple -- making it both easy to KISS, as well as to overdevelop ;-)
My personal experience is that I develop a framework for each site I work on,
and wrap utility methods/common functionality into a CGI::App superclass. The
application framework -- cgiapp -- lets me choose what needs to be present, and
what doesn't need to be. Every site is a little different, and I don't like to
have more functionality in the application than is necessary.
As an example, I might want a class that simply loads template content into a
sitewide template. I have one run mode, and setup a default page if none is
passed. Done.
Another site might consist of several applications. The body content needs to go
into the sitewide template, and I need breadcrumbs to the application. These
items go into the superclass, and the individual application classes provide
hinting so the superclass can do its job at the end.
I appreciate larger frameworks -- they're great for prototyping more complex
applications -- but in the end I've found that a lighter-weight framework like
CGI::App suits my personal needs as a developer, because it allows me to build
frameworks tailored for the sites I'm developing.
It sounds like Catalyst more closely suits *your* needs, however, and that's
what you need to think about. If you're worried about the longevity of the
project, you can always step up as a developer... ;-)
|