Philosophy
Catalyst is based on a "don't repeat yourself" (DRY) principle, which means that definitions should only have to be made once.
Catalyst can be used with automatic class loading from the database through one of the many loader modules, thus requiring no code for the database layer. But, if you require the flexibility of manually doing everything, it's also an option. Another guiding principle of Catalyst is flexibility.
Catalyst promotes the re-use of existing Perl modules that already handle common web application concerns well.
- The Model part is handled through DBIx::Class, Plucene, Net::LDAP and other model classes.
- The View layer is usually handled by Template Toolkit, Mason, or HTML::Template, among others.
- The Controller layer is of course written by each application author. Large chunks of Controller functionality can usually be deferred to one of the many Catalyst plugins (e.g., Catalyst::Plugin::FormValidator, Catalyst::Plugin::Prototype, Catalyst::Plugin::Account::AutoDiscovery, etc.).
- Finally, Catalyst offers a set of helpers to simplify flow control and mapping URLs to controller methods.
Catalyst has a large selection of plugins. For example, it has JavaScript generation for Ajax and RIAs using the Catalyst::Plugin::Prototype module (prototype is an Ajax framework). Plugins cover many areas, for example authentication, session management, HTTP negotiation and REST.
Catalyst can also be used with other Ajax frameworks such as jQuery or YUI, the Yahoo! User Interface Library.
Read more about this topic: Catalyst (software)
Famous quotes containing the word philosophy:
“At the very moment when someone is beginning to take philosophy seriously, the whole world believes the opposite.”
—Friedrich Nietzsche (18441900)
“What is rational is actual and what is actual is rational. On this conviction the plain man like the philosopher takes his stand, and from it philosophy starts in its study of the universe of mind as well as the universe of nature.”
—Georg Wilhelm Friedrich Hegel (17701831)
“I am still a learner, not a teacher, feeding somewhat omnivorously, browsing both stalk and leaves; but I shall perhaps be enabled to speak with more precision and authority by and by,if philosophy and sentiment are not buried under a multitude of details.”
—Henry David Thoreau (18171862)