連載第2回目は,
ちょうどgihyo.
聞き手:馮 富久
村瀬大輔氏。1981年2月生まれ。2004年9月株式会社カヤックに入社。カヤックでは自社サービス
Arkお勧めポイント
- Q:まず,
連載でフォーカスした 「Ark」 について伺います。開発者である村瀬さんから見て, Arkのお勧めポイントを教えてください。 A:私はPerlを使った開発をしていて約2年ほどPerlフレームワークのCatalystを使っています。Catalystに対する印象は使いやすい一方でCGI環境では使えないという不満がありました。元々Arkを作ろうと思ったのは,
その不満を解消したかったからです。 そのため,
Arkの基本的な使い方はCatalystを踏襲していて, これまでCatalystを使っていたデベロッパであれば, 新たに開発方法を身に付けることなく, すぐに開発を始められます。この点は, まずお勧めポイントの1つです。 また,
CGIにこだわったのはWebアプリケーションのリソース占有に関する問題です。常駐型のWebアプリケーションの場合, システムリソースを占有し続けるというデメリットがありますが, CGIであればリクエストごとにリソースを占有する, つまりリクエストがないときにはリソースをまったく使わないという点で小規模なアプリケーションでは有効です。もちろん, Catalyst同様FastCGIやmod_ perlなどもサポートしていますのでリクエスト数の多い実用的なWebアプリケーションを作成することもできます。 ですので,
たとえば最初はCGIでサービスを開発しはじめ, その後アクセス数が増えてきたらFastCGIにスイッチするというようなことがアプリケーションのコード変更なしに行えるというのもお勧めポイントですね。 あとは,
(オフラインの) ローカルで開発を進めることを想定している点もArkの特徴の1つです。
PerlでWebアプリを開発する方へのアドバイス
- Q:村瀬さんは豊富なPerlアプリケーション開発の実績があると伺っています。これまでのご自身の経験から,
PerlでWebアプリを開発する方へのアドバイスをいただけますか。 -
CPANに触れる
A:Perの魅力,
それは何と言ってもCPANです。CPANには本当に豊富なPerlモジュールが集まっていて, 自分が欲しいと思ったモジュールがほとんどあると言っても過言ではありません。それらを組み合わせることで, 自分が考えている機能を実現できます。Perlでアプリケーションを開発する方は, ぜひCPANを活用してください。 CPANを活用する
CPANモジュールを検索できるサイトとして
「The CPAN Search Site」 があります。最初は, ここでいろいろなモジュールを探していくことをお勧めします。 CPANを見ているだけで,
自分が何を作りたいかを見つけられることもあります。そして, 組み合わせて見てください。そのとっかかりとして, Arkを活用してもらえたら嬉しいです。ArkでもいろんなCPANのモジュールセットアップを使っています。 流行りのプロダクトを見る
ただ,
初めてPerlの開発をする人や経験が浅い人には, どうやってCPANを活用したらいいか難しいかもしれません。 そこで,
オープンソースで今, 流行っていると思ったプロダクトに触り, そのプロダクトの中で使われているCPANモジュールを見てみることでCPANを学習できます。そのようなプロダクトはPerlコミュニティを引っ張る人たちによって開発されていて, そのプロダクトの中で使われているCPANモジュールは定番なものや, 先端なものが多く, モダンなCPANモジュールを知るためには一番の近道と言えます。 そのような
(学習の意味での) 目的で個人的にお勧めするプロダクトは, Plagger, Catalyst, HTTP::Engine, DBIx::Classなどです。またそれらのプロダクトのコミッターが作っている他のプロダクトも参考になるでしょう。 ちなみにArkの中で使用しているお勧めモジュールとしては
などがあります。どちらも大変軽量で高速に動作するモジュールになります。
ただ,
トレンドを追うのはとても大変な作業でもありますし, すべてを把握するのは難しいです。そこで, 最近であればTwitterやWassrなどのマイクロブログなどを活用し, コミュニティやオンライン・ 雑誌の記事で著名な方の発言を閲覧すると良いでしょう。 私のTwitterアカウントはtypesterです。よかったらフォローしてください。
あとは,
とにかくドキュメントを読む癖を付けることをお勧めします。