Catalyst_(ソフトウェア)
[Wikipedia|▼Menu]
.mw-parser-output .hatnote{margin:0.5em 0;padding:3px 2em;background-color:transparent;border-bottom:1px solid #a2a9b1;font-size:90%}

この項目では、ウェブアプリケーションフレームワークについて説明しています。AMD製GPUのドライバソフトウェアについては「AMD Catalyst」をご覧ください。

Catalyst
作者セバスチャン・リーデル

最新版5.90124 / 2019年1月18日 (5年前) (2019-01-18)
プログラミング
言語Perl
種別Webアプリケーションフレームワーク
ライセンスPALおよびGPL
公式サイト ⇒www.catalystframework.org
テンプレートを表示

Catalyst (かたりすと)は、Perlで書かれたオープンソースウェブアプリケーションフレームワークで、Model View Controller (MVC)のアーキテクチャを持ち、実験的なウェブのパターンを数多く持っている。Ruby on Rails、 Maypole、 Springといったフレームワークに強い影響を受けている。

Catalystは、主に、Perlのライブラリやアプリケーションの公式配布元であるCPANを通じて配布される。
哲学

Catalystは、定義は一度のみ行われるべきとする"Don't Repeat Yourself" (DRY)原則に基づいている。

Catalystは、多くのモジュールのうちからひとつだけを使って、データベースからクラスを引っ張り出すことによって利用される。従って、データベース層に関するコードは必要とされない。しかし、何かに付け融通を効かせようとするなら、それもオプションで利用できる。Catalystのもうひとつの原則は、自在さである。

Catalystは、既にウェブアプリケーションを操作するために使われている既存のPerlモジュールの再利用を促す。

Model部分は、DBIx::Class、Plucene、Net::LDAP、またはほかのモデルクラスを通じて操作する。

View部分は、Template Toolkit、Mason、またはHTML::Templateによって主に操作される。

Controllerは、もちろん個々のアプリケーションの作者によって書かれる。Controller機能の大部分は、Catalystのプラグインのうちのひとつに委ねることが出来る(Catalyst::Plugin::FormValidator、 Catalyst::Plugin::Prototype、 Catalyst::Plugin::Account::AutoDiscoveryなど)。

Catalystには、多くのプラグインがある[1]。例えば、AjaxやRIAのためのJavaScriptの生成には、Catalyst::Plugin::Prototypeモジュールが使われる(prototypeはAjaxフレームワークである)。
Webサーバのサポート

開発やテストのために、Catalystは、組み込みの簡易HTTPサーバがある。製品の利用についてはApacheか、FastCGI付きのlighttpd、 mod perlサポートが推奨されるが、CGIやFastCGIをサポートしたWebサーバなら動作する。Apache上では、mod_perlでの利用が、相当のパフォーマンスの助けになるが、複数のアプリケーションでmod_perlを共有することで不安定になるため、問題もある。
データベースサポート

Catalystは、PerlのDBIがサポートするデータベースなら(つまりほぼ全て、CSVファイルでさえも)どれでも動作するが、関係データベース管理システム (RDBMS) が推奨されている。データベースアクセスは、モジュールのひとつを通し、全てのデータベースへのアクセスを自動的に操作することで、プログラマーやCatalystからは、完全に抽象化されている。もし必要なら、ダイレクトにSQLのクエリを利用することもできる。これは、異なるデータベース間でも移植性のある、データベースにおいて中立的なアプリケーションが利用でき、Catalystアプリケーション開発において、可能な限り、既存のデータベースのユーザビリティを保つことが出来ることを意味する。ただし、RDBMS間で機能が異なる場合には、フレームワーク単独では、完全に機能を保証できない。MySQLPostgreSQLSQLiteIBM DB2OracleMicrosoft SQL Serverといった複数のデータベースをサポートしている。(オブジェクト関係マッピング
Catalystを使って作られたウェブサイト

iusethis - 利用パターンを元にしたソフトウェアのサイト

MightyV - BBCのTV-program listingを受賞した

Vox - ソーシャルブログプラットフォーム

EditGrid - ウェブベースの表計算

ボケて - 写真で一言ボケることに特化したウェブサービス

Catalystを使って作られたオープンソースソフトウェア

Agave (software)
(ブログ)

Angerwhale (ブログ) Trac Site

Devel::ebug (Perlのデバッガ) CPANのサイト

Handel (software) (commerce framework) ⇒サイト

Meios

MojoMojo (ウィキ)

Sosa (software)

Perlで記述された他のフレームワーク

Sledge
- ライブドアによって開発されたフレームワーク

Mojolicious - Catalyst作者による次世代Webフレームワーク ⇒サイト

脚注^ CPANにおけるCatalystのモジュール

外部リンク

プロジェクトホームページ

Perl5とCatalystで作られている

PerlNet上の ⇒Catalystの記事

CPANのCatalyst

Planet Catalyst










Webアプリケーションフレームワーク


次ページ
記事の検索
おまかせリスト
▼オプションを表示
ブックマーク登録
mixiチェック!
Twitterに投稿
オプション/リンク一覧
話題のニュース
列車運行情報
暇つぶしWikipedia

Size:12 KB
出典: フリー百科事典『ウィキペディア(Wikipedia)
担当:undef