ついに出た!最新Perlフレームワーク「Ark」徹底解剖

第2回 Ark チュートリアル:基礎編

この記事を読むのに必要な時間:およそ 4 分

前回はArkの開発背景と機能概要を紹介しました。2回目からはもっと具体的に,Arkを使用した開発方法を紹介していきます。

今回は,Arkのインストール方法,そして簡単なHelloWorldアプリケーションの作成を通してArkを使用したアプリケーション開発の流れを紹介します。

Arkのインストール

まずは,Arkのインストールについて話をしていきます。

Perlのインストール

Arkは,Perlバージョン5.8.1以上が必要です。

お使いのコンピュータがMac OS XやLinuxで動作しているなら,おそらくすでにPerlがインストール済みのはずです。Windowsで開発する方は,Strawberry PerlActivePerlなどをインストールすると良いでしょう。

Arkのダウンロード

まず,ダウンロードページより最新版をダウンロードします。本稿執筆時点での最新バージョンは 0.001000_001(0.1rc1)ですので,それを元に説明します。

以下のようなコマンドでダウンロードし,ファイルを展開します。

$ wget http://cloud.github.com/downloads/typester/ark-perl/Ark-0.001000_001.tar.gz
$ tar zxvf Ark-0.001000_001.tar.gz

インストールする前にテストで動作確認

インストールする前にテストを走らせます。こうすることでArkがお使いのシステム上で正しく動作するかを確認することができます。

テストをするためには,Arkを展開したディレクトリ上で「cpan -t .」コマンドを実行します。

$ cd Ark-0.001000_001
$ cpan -t .

PerlやCPANの環境が整っていない場合,画面上にいくつか質問が出ると思います。その場合は画面の指示に従ってください。

その後,Arkのテストが実行され,最後に,

All tests successful.

という出力が出ていれば,Arkのインストールの準備が整ったことを意味します。

インストール

インストールするには「cpan -i .」コマンドを実行します。

$ cpan -i .

もし,CPAN の設定が不十分な場合,上記コマンドではエラーになってしまうかもしれません。

その場合は

$ sudo -H cpan -i .

を試してみてください。これで無事インストールが終われば,Arkのインストールの完了です。

おめでとうございます!

HelloWorldアプリケーション

それでは早速アプリケーションを書いてみましょう。

画面に「Hello World!」という文字を表示する簡単なアプリケーションを作りながら,Arkを使った開発の流れを見ていきましょう。

ark.plによるひな形作成

まずはアプリケーションのひな形を作成します。ひな形の作成のために,ark.plというコマンドがインストールされています。

HelloWorldという名前のアプリケーションを作成するためには以下のコマンドを実行してください。

$ ark.pl newapp HelloWorld
Creating directory HelloWorld
Creating HelloWorld/Makefile.PL
Creating HelloWorld/lib/HelloWorld.pm
Creating HelloWorld/lib/HelloWorld/Controller/Root.pm
Creating directory HelloWorld/root
Creating HelloWorld/t/00_compile.t
Creating directory HelloWorld/tmp

するとこのように HelloWorld ディレクトリが作られ,その中にアプリケーションのひな形が作成されます。

開発用組み込みウェブサーバー

このアプリケーションのひな形は,すでにArkアプリケーションとして動作します。動作の確認はArk組み込みのWebサーバにて行うことができます。

開発用Webサーバの起動にもark.plを使用します。

HelloWorld ディレクトリへ移動し以下のコマンドを実行してください。

$ ark.pl server
HTTP::Engine::Interface::ServerSimple : You can connect to your server at http://0.0.0.0:4423/

このようにアプリケーションディレクトリ以下で「ark.pl server」というコマンドで開発用Webサーバを起動することができます。デフォルトではlocalhostの4423ポートで起動します。

Webブラウザでhttp://localhost:4423/を開いてみてください。

図1 デフォルトのインデックス画面

図1 デフォルトのインデックス画面

このように「Ark Default Index」という表示がでていればひな形の生成,開発サーバの起動は正常に行われています。

デバッグモード

また,この開発サーバはデバッグモードで起動するための-d(--debug)オプションを持っています。このオプション付きで起動すると

$ ark.pl server -d
[debug] Loaded Path actions:
.-------------------------------------+--------------------------------------.
| Path                                | Private                              |
+-------------------------------------+--------------------------------------+
| /                                   | /index                               |
| /                                   | /default                             |
'-------------------------------------+--------------------------------------'

[debug] Setup finished
HTTP::Engine::Interface::ServerSimple : You can connect to your server at http://0.0.0.0:4423/

このように起動時にアクション・コントローラの一覧を表示したり,各リクエストの処理時に

[debug] "GET" request for "/" from "127.0.0.1"
[debug] Arguments are ""
[debug] Request took 0.001858s (538.213/s)
.----------------------------------------------------------------+-----------.
| Action                                                         | Time      |
+----------------------------------------------------------------+-----------+
| /index                                                         | 0.000179s |
'----------------------------------------------------------------+-----------'

というようなリクエストの詳細情報(リクエストURL・コントローラ・引数・処理時間)などを表示することができます。

また,このデバッグモードで動作中はブラウザ上でエラーの詳細な情報を確認することができます。

図2 ブラウザ上でのエラーのスタックトレース表示

図2 ブラウザ上でのエラーのスタックトレース表示

このようにリクエストの詳細情報を表示したり,エラー情報の確認ができるので開発中はつねに -d オプションを使用しデバッグモードで開発することをおすすめします。

また,ark.plはここで紹介した以外にもいろいろなコマンド,オプションを持ちます。

その詳細はドキュメントのヘルパースクリプトの項を参照ください。

著者プロフィール

村瀬大輔(むらせだいすけ,ハンドルネーム:typester)

1981年2月生まれ。2004年9月株式会社カヤックに入社。

カヤックでは自社サービス「こえ部」を担当する傍ら,ラボチームBM11に所属し「Ark」「nim」といったオープンソースプロダクトを開発。また「Shibuya.pm」や「YAPC::Asia」にスピーカーとして参加するなど,Perlプログラマとして活躍の場を広げている。

コメント

コメントの記入