Privacy Policy Cookie Policy Terms and Conditions Catalyst - Wikipedia

Catalyst

aus Wikipedia, der freien Enzyklopädie

Catalyst (engl. für Katalysator) ist ein freies, von Sebastian Riedel und vielen anderen in Perl entwickeltes MVC-Framework, das dazu dienen soll, anspruchsvolle und leicht veränderbare Webanwendungen schnell zu erstellen. Es lehnt sich an bekannte, ähnliche Frameworks wie Maypole, Ruby on Rails oder Spring an, versteht sich aber als Weiterentwicklung.

Inhaltsverzeichnis

[Bearbeiten] Aufbau

Catalyst ist ein MVC-Framework, was bedeutet, dass es 3 Schichten (Model, View und Control) in ein Programm einführt, die unabhängig voneinander verändert werden können.

  • Model-Ebene bedeutet hier Form der Datenspeicherung. Unter den bisher 8 unterstützten Wegen sind: DBIx::Class, Plucene, Net::LDAP, Tangram, Xapian.
  • View bezieht sich auf das vom mit Catalyst erstellten Programm ausgestoßene (X)HTML oder Atom/RSS. Die 6 möglichen Wege beinhalten Template::Toolkit, HTML::Mason oder HTML::Template.
  • Control meint die vom Autor zu schreibende Programmlogik die auf insgesamt 10 verschieden Arten ausgeführt werden kann, z.B. von Apache (mod_perl 1 & 2), FastCGI, standalone, POE.

Weitere wichtige Gestaltungsprinzipien und Fähigkeiten sind:

  • Catalyst ermöglicht fast alles in Plugins auszulagern, die während des Betriebes geladen oder entfernt werden können.
  • Die Software bietet Vereinfachungen üblicher Control-Abläufe durch sogenannte Pattern und flexibles URL-mapping.
  • Catalyst baut auf vielen bewährten Perl-Modulen auf. Es existieren auch viele Werkzeuge und Plugins im CPAN zur freien Verfügung.
  • Das Framework beinhaltet einen kleinen HTTP-Server, so dass bis auf eine Standard-Perl-Installation und Catalyst keine weitere Software benötigt wird um Webanwendungen mit Catalyst zu entwickeln und zu testen.
  • Die Kombination mit Ajax ist ebenfalls möglich.

[Bearbeiten] Entwicklung

Catalyst kann als Weiterentwicklung von Maypole angesehen werden das Sebastian Riedel eine Zeit lang pflegte. Sein Drang, es stärker zu überarbeiten als von einem Großteil der Benutzer gewollt war, führte zu einer Spaltung im November 2004. Am 15. April 2005 erschien mit Catalyst 5.0 die erste öffentliche Version. Seitdem kamen Christian Hansen, Marcus Ramberg (Release Manager) und Jesse Sheidlower als Hauptentwickler hinzu. Am 3. Mai 2006 gab Sebastian Riedel seinen Ausstieg bekannt, um ein neues, ähnliches Projekt zu beginnen. Die Entwicklung wird aber vom verbliebenen Team fortgesetzt, das am 8. Juli 2006 die Version 5.7 veröffentlichte.

Die API ist weitestgehend stabil. Die Hauptentwicklung findet auf Plugin-Ebene statt. Eine geplante Version 6.0 soll dann vollständig in Perl 6 implementiert sein.

[Bearbeiten] Verbreitung

Es ist einsatzbereit und wird bereits für einige Internetseiten verwendet. Auch eine Wiki-Software namens Mojo-Mojo basiert auf Catalyst.

[Bearbeiten] Lizenz

Catalyst ist, wie unter Perl üblich, wahlweise unter der GPL oder Artistic License verfügbar.

[Bearbeiten] Weblinks

Andere Sprachen

Static Wikipedia 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -