It's worth noting that the useful features of Catalyst are  
increasingly available "a la carte" via independent CPAN modules  
(which is as it should be, IMO). For example:

* Path::Dispatcher - the controller piece (based on Jifty, but I'm  
guessing it is comparable)
* HTTP::Engine - the Request/Response API

Auto restart is still only in Catalyst AFAIK, but I'm planning to make  
it available (and improve on it) in my upcoming Server::Control.

Once Catalyst starts outsourcing its dispatching to an external module  
(which seems inevitable, if it hasn't already happened), it will no  
longer be, at its "core", any more about Controllers than it is about  
Models or Views. It just puts all these pieces together for you in a  
coherent way. Obviously there are some advantages to this, e.g.  
consistency of API, something for a community to rally around.

Jon

On Jul 1, 2009, at 7:57 AM, Dave Rolsky wrote:

> On Wed, 1 Jul 2009, Raymond Wan wrote:
>
>> Just looking at the link that Dave sent, I'm skimming over the MVC  
>> part and
>> as my system doesn't use an SQL database, I'm wondering if Catalyst  
>> is
>> overkill??  Anyway, I'll look at the on-line documentation some  
>> more and if
>> thinks look better, maybe I can then look into the upcoming  
>> Catalyst book.
>
> This is a serious failing of the Catalyst documentation, in that it  
> makes
> you think it has something to do with a model, when it really doesn't.
> Maybe some day I'll take a crack at the docs and try to rectify  
> this, but
> for now, here's me executive summary.
>
> All Catalyst is, at its core, is a tool to help you map URIs to some  
> bit
> of code to execute. This is the Controller part of MVC.
>
> Catalyst also does a number of other things for you which are very  
> helpful
> when developing web apps.
>
> * Provides a unified Request/Response API which works identically in  
> any
> web environment, including vanilla CGI, FastCGI, SpeedyCGI,  
> mod_perl, and
> several standalone Perl-based web servers.
>
> * Provides a great development environment that allows you to start a
> single-process/thread dev server by running ./script/ 
> myapp_server.pl. This
> server is also capable of restarting itself any time relevant files in
> your app are changed (like Apache(2)::Reload).
>
> * Has a whole bunch of plugins for simplifying common webapp tasks  
> such as
> ...
> ** sessions
> ** an authorization/authentication API usable in any controller method
> ** RESTful URIs
> ** redirects
> ** debugging & tracing
> ** logging
> ** much more
>
> It also has some hooks to make working with Model classes potentially
> easier, but it's important to realize that you can ignore this part of
> Catalyst entirely (I do), and still get a lot of use out it.
>
> Similarly, while the Catalyst docs are show TT examples, the choice of
> templating view (or even a view that _isn't_ template-based) is  
> entirely
> up to you, and using Mason with Catalyst is trivially easy.
>
>
> -dave
>
> /*============================================================
> http://VegGuide.org               http://blog.urth.org
> Your guide to all that's veg      House Absolute(ly Pointless)
> ============================================================*/
>
> ------------------------------------------------------------------------------
> _______________________________________________
> Mason-users mailing list
> Mason-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/mason-users


------------------------------------------------------------------------------
_______________________________________________
Mason-users mailing list
Mason-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mason-users

Reply via email to