Arkによるリンク集サンプルアプリケーション(4) Scaffold(雛形作成)編

| コメント(0) | トラックバック(1)

Arkのサンプルアプリケーション開発の第4回は、いわゆるscaffold、雛形作成です。

MyApp名をSimpleLinks::Webとして、デフォルトページの表示が行えるところまで行ってみましょう。

この辺りは、私のようなぺーぺーのブログ記事なんかよりも、開発者のtypesterさん(村瀬さん)ご本人による記事、"ついに出た!最新Perlフレームワーク「Ark」徹底解剖 第2回 Ark チュートリアル:基礎編"をご覧いただいた方が遙かに良いと思いますが、MyApp::WebのようなMyApp名を指定した際の留意点や、Windows環境(Strawberry Perl)での留意点なども簡単に補記しています。

MyApp名の定石

『モダンPerl入門』にもあるように、MyApp::Webという形でアプリケーションを命名することにします。MyApp::ValidateMyApp::CLI::Validateなどという場当たり的なクラス構成を避けることが目的です。

いくら簡単なアプリケーションと言えど、どのようにそれが成長するかは開発者本人の予想を超えることがあるものです。さらに、シンプルにしなかったことによる弊害は殆ど全くありません。

ということで、その効用が今は分からない人であっても、「おまじない」のようなつもりでMyApp::Webとするのが良いと思います。

基本的な雛形

基本的な雛形の作成

さて、Arkの雛形作成機能を試しましょう。

$ ark.pl newapp SimpleLinks::Web
(中略)
Creating directory SimpleLinks-Web
Creating SimpleLinks-Web\Makefile.PL
Creating SimpleLinks-Web\lib\SimpleLinks\Web.pm
Creating SimpleLinks-Web\lib\SimpleLinks\Web\Controller\Root.pm
Creating directory SimpleLinks-Web\root
Creating SimpleLinks-Web\t\00_compile.t
Creating directory SimpleLinks-Web\tmp

このように、コマンド一発で、SimpleLinks-Webというディレクトリ内に基本的な雛形を作ってくれます。

ここで、必須ではありませんが、これをp5-ark-sample-simplelinksというディレクトリに変えます。githubで公開することを念頭に置いていることと、Arkのサンプルアプリであることを明示する意図があります。また、他言語のアプリケーションと被らないようにp5(perl 5)という接頭辞を付けています。

なお、ModelやViewについては、別途雛形を作成出来ますので、それは後述します。

また、Windowsの場合は、PATHが通っているディレクトリにark.plを変換したark.batが入っているので、ark newapp SimpleLinks::Webと実行します。

基本的な雛形の表示テスト

では、p5-ark-sample-simplelinksディレクトリに移動して開発用サーバーを動かしましょう。

$ cd p5-ark-sample-simplelinks
$ ark 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/

-dオプションによるデバッグモードは基本的にいつもONにしておくのが良いと思います。後から「あぁっ、ここの情報をもうちょっと知りたいんだ!」と思っても、稼働中のサーバーを一旦再起動するしかありませんので、転ばぬ先の杖として毎回使う癖を付けると良いと思います。

なお、Arkのバージョンによっては、SampleLinks::Webのように1階層間に挟んでいるMyApp名を、そのまま実行出来ない場合があります。その場合は、ark server -d SampleLinks::Webのように、アプリケーション名を明示的に指定することで回避可能です。GitHub上の最新のバージョンでは、アプリケーション名は明示しなくても問題なく実行出来ます。

さて、ともあれこれで組み込みWebサーバーにアクセスして表示出来ることが確認出来ます。

ark-sample-simplelinks_05.jpg

取り敢えずこの時点でリポジトリコミットしておきましょう。

次回はModel

さて、いよいよ本題のモデリングです。Data::Modelを使って平易に書きつつ、Arkと連携して行きましょう。

トラックバック(1)

FFXIVの一次情報が目下のところ少ないながらも、それらを独自の視点を交えて紹介... 続きを読む

コメントする

筆者"Gardejo"について

  • Twitter: @gardejo
  • GitHub: gardejo
  • CodeRepos: gardejo
  • CPAN: MORIYA

このサイトについて

Eorzea System Worksは、架空のシステム開発結社です。

FF14.name (FinalFantasyXIV.name)では、アヴァター(プレイヤーキャラクター)の管理システムやイベント出欠・リマインダシステムや、リンクシェル(LS)運営・管理システムやDKPシステムなどを設計・開発・公開する予定です。

関連サイト

関連サイトでは、他にもFF14に関連するサイトをいくつか紹介しています。

リンク, トラックバック歓迎

このブログへのリンク(どのページでも構いません)やトラックバックを歓迎します。

設計・開発・運用の参考にさせていただきますので、コメントもお気軽にお寄せください!

個別の記事に対するご意見などのほか、目安箱もご用意しています。

このブログ記事について

このページは、Gardejoが2009年7月26日 16:49に書いたブログ記事です。

ひとつ前のブログ記事は「Arkによるリンク集サンプルアプリケーション(3) 詳細設計編」です。

次のブログ記事は「XREA/CORESERVERに於けるlocal::libを使ったCPAN環境の構築」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

2014年2月

            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28  

やや真面目なサイト