Download - Introduction To Catalyst - Part 1
![Page 2: Introduction To Catalyst - Part 1](https://reader036.vdocument.in/reader036/viewer/2022082916/54bdbd214a795945338b4573/html5/thumbnails/2.jpg)
What is Catalyst?
• “the” Perl web application framework– Most actively developed (2005 – 2 wks ago)– Most widely used– Most flexible– Backward-compatible
![Page 3: Introduction To Catalyst - Part 1](https://reader036.vdocument.in/reader036/viewer/2022082916/54bdbd214a795945338b4573/html5/thumbnails/3.jpg)
![Page 4: Introduction To Catalyst - Part 1](https://reader036.vdocument.in/reader036/viewer/2022082916/54bdbd214a795945338b4573/html5/thumbnails/4.jpg)
![Page 5: Introduction To Catalyst - Part 1](https://reader036.vdocument.in/reader036/viewer/2022082916/54bdbd214a795945338b4573/html5/thumbnails/5.jpg)
![Page 6: Introduction To Catalyst - Part 1](https://reader036.vdocument.in/reader036/viewer/2022082916/54bdbd214a795945338b4573/html5/thumbnails/6.jpg)
Catalyst philosophy
• TIMTOWTDI crystallized, DRY, glue• Model-View-Controller• “Catalyst diet”: fat model, thin controller• Flexibility
– Models: DBIx::Class, KiokuDB, Net::LDAP, SVN etc.– Views: Template Toolkit, GraphViz,
HTML::Seamstress, Mason, XSLT, PHP (!) etc.– Forms: HTML::FormFu, Reaction, FormBuilder– Deployment: built-in server, FastCGI, mod_perl– 210 plugins on CPAN
![Page 7: Introduction To Catalyst - Part 1](https://reader036.vdocument.in/reader036/viewer/2022082916/54bdbd214a795945338b4573/html5/thumbnails/7.jpg)
Production ready
• Support (built-in or plugins) for:– Any database (via Perl’s DBI)– Any model (Catalyst::Model::Adaptor)– Authentication: Flickr, HTTP, OpenID etc.– Authorization: ACL, Roles– Cache: FastMmap, FileCache, BerkeleyDB, and Memcached– CAPTCHA– Compression (Bzip2, Gzip etc.)– Crypto– RIA: Dojo, Prototype– Sessions– Static file serving– Unicode– RPC: JSONRPC, XMLRPC; Catalyst::Action::REST
![Page 8: Introduction To Catalyst - Part 1](https://reader036.vdocument.in/reader036/viewer/2022082916/54bdbd214a795945338b4573/html5/thumbnails/8.jpg)
From Perl to Catalyst in 15 minutes
TinyURL app
See screencast at http://bit.ly/dandv-catalyst
eqhttp://wiki.dandascalescu.com/howtos/catalyst/introduction_to_catalyst
![Page 9: Introduction To Catalyst - Part 1](https://reader036.vdocument.in/reader036/viewer/2022082916/54bdbd214a795945338b4573/html5/thumbnails/9.jpg)
Helpers
• Built-in helpers to create:– skeleton application: catalyst.pl MyApp– models:
• script\tinyurl_create.pl model DB DBIC::Schema TinyURL::Schema create=static "dbi:SQLite:tinyurl.db"
– AutoCRUD– views:
• script\tinyurl_create.pl view HTML TT
– controllers:• script/myapp_create.pl controller Name
![Page 10: Introduction To Catalyst - Part 1](https://reader036.vdocument.in/reader036/viewer/2022082916/54bdbd214a795945338b4573/html5/thumbnails/10.jpg)
Resources
• Catalyst wiki (dogfood-powered by MojoMojo):– http://dev.catalystframework.org/wiki
• #catalyst on irc.perl.org• Catalyst mailing list
– http://snipurl.com/catalyst-mailing-list