14

Mason (Perl) はフレームワークではなく、テンプレート言語であるということで、友人と意見が一致しませんでした。Perl の Mason は、JSP が Java に対して行うことと同じだと思います (純粋な技術的比較ではなく、類推として)。私の知る限り、JSP はフレームワークではなく、Mason でもないと思います。ウィキペディアMason (Perl)を調べたところ、メイン サイトには Perl で書かれた Web アプリケーション フレームワークであると書かれていますが、ディスカッション ページではそれが争われています。

それがフレームワークではない/フレームワークではない理由についての指針はありますか?

ysth からのコメントに基づいて更新: フレームワークの場合、少なくとも db アクセスを簡単にし、セッションを管理し、webapp が必要とする基本的なセキュリティ、テンプレート化、コードの再利用 (または基本的なタスクを簡単にするライブラリ) を行う必要があると思います。

4

9 に答える 9

15

Mason は、MVC (Model-View-Controller) フレームワークの略である「M」です。広範なレンダリング (ビュー) 機能を提供するため、人々は Mason をテンプレート言語と見なしています。ただし、かなりの数のディスパッチ メカニズム (特に dhandler の形式) と制御メカニズム (自動ハンドラーに自然に適合) も提供します。

数年前、私はこれらの機能のいくつかを紹介するオンライン チュートリアル(Mason で) を書きました。全画面表示用に最適化されており、javascript を有効にする必要があります。

Mason が提供していないのはデータベースの抽象化レイヤーなので、独自のモデルを用意する必要があります。

私の知る限り、amazon.com は他の多くのサイトと同様に Mason で書かれています。

Mason と一緒に仕事をするのは好きだけど、モデル、もっとおもちゃ、ポニーが欲しいという場合は、Jiftyを Web アプリケーション フレームワークとして検討することを検討してください。

于 2008-12-08T21:58:59.777 に答える
4

HTML::Mason がフレームワークであるかどうかの質問には、それを見ずに答えることはできませんが、私は常に次の定義に満足しています....

「フレームワークはプログラムを呼び出しますが、プログラムはライブラリを呼び出します」

于 2008-12-08T11:56:13.613 に答える
4

これは、Model-View-Controllerタイプのフレームワークではありません。たとえば、Ruby on Rails よりもおそらく PHP に近いものです (そして、私が見たものと同じくらい悪いものです)。

于 2008-12-08T14:27:08.893 に答える
4

テンプレート システムは のようなものですHTML::Template。つまり、テンプレート化のみを行うモジュールです。

それはもっと多くのことをしていると思いMasonます、それはどういうわけかルーティングメカニズムを持っています、それは引数処理を提供しますが%ARGS、 を介して初期化し%INITます。

mod_perlまた、CGI...へのインターフェースも提供します。

現在、それはデータベースと対話しません。クリーンな方法が必要な場合は、 、またはオブジェクトマッピングを行う他の百の perl モジュールの 1 つClass::DBIDBIx::Perlishまたはその他のものを使用する必要があります...

于 2008-12-08T10:41:10.050 に答える
1

HTML :: Masonは、フレームワークが古くなったときになりたいものです。HTML :: Masonを使用すると、次のようになります。

  • コーディネーター
  • テンプレート
  • キャッシング
  • ロギング
  • 非常に柔軟なモジュール化

これは、デスクトッププログラミング(MVCなど)から借用したデザインパターンのファンを喜ばせるためではなく、高性能の多層Webアプリケーション用に設計されました。

于 2011-01-19T21:43:22.837 に答える
1

Mason だけはフレームワークではなく、単なるテンプレート システムですが、いくつかの非常に優れた機能を備えています。独自の構造があり、perl コードを非常に簡単に埋め込むことができ、キャッシュもサポートされています。大規模なアプリケーションを開発するために Mason を単独で使用する人を見たことがありますが、MVC フレームワークでよりうまく機能すると思います。

気をつけて!

于 2009-03-27T10:52:19.573 に答える
1

次のフレームワークの定義は、デザイン パターンに関するガンマの本から取られています。「フレームワークとは、特定のクラスのソフトウェア用に再利用可能な設計を構成する一連の協調的なクラスです。」その定義によれば、Mason はフレームワークです。MVC フレームワークは、フレームワークの 1 つのタイプにすぎません。

于 2012-08-25T23:33:56.050 に答える
1

HTMLに埋め込まれた Perl とその競争相手を Masonの視点から見ると、それはテンプレート言語であると言えます。そうでなければ、カタリストメイポールがリストに載っていたでしょう。また、Mason をCatalyst アプリケーション のView部分として使用できることをどこかで読んだと思います。

フレームワーク的に使えるところはわかるかと思いますが、テンプレート言語として見るとより完成度が高くなりそうです。

于 2008-12-08T14:13:56.393 に答える
0

フレームワークの定義に依存します。

複数のことを行う場合、名前フレームワークを任意のライブラリに適用できます。

于 2008-12-08T10:36:40.793 に答える