Perl Catalyst Design Pattern Deep Dive (Online presentation)

90 minutes



Perl Catalyst is a modern MVC (model - view - controller) development framework for building the server side of your web application. It has a reputation for being a bit heavyweight, but the classic design patterns its build upon have time and again demonstrated their worth to those who choose it. These design patterns encapsulate tried and true approaches to solve common development problems in ways that are clear, testable and maintainable.

This talk covers many of the design patterns built into Catalyst. Design patterns discussed include:

-- Command
-- Model/View/Controller
-- Chain of Command
-- Service Location
-- Inversion of Control
-- Dependency Injection
-- Middleware
-- Proxy, Decorators and Mediators

Discussions will include examples as well as conversation around deficiencies in how Catalyst employs some of these patterns and what you can do to mitigate. Discussion will include both core Catalyst functionality and functionality as extended via several components in the extended Catalyst ecosystem on CPAN. Discussion will conclude with thoughts on the future of Catalyst design patterns and where Catalyst might evolve to improves its already solid support for these classic, best practice approach to developing maintainable and secure applications.