ObectSquare

[技術講座]


Powered by SmartDoc

まとめ

やりのこしたこと

今回の記事では、まずは入門編というところを目指したために、以下のトピックは記載されていない。

GUIスクリプティング
PnutsではGUI画面をスクリプトで簡単に記述するために専用のLayoutマネージャなどを備えている。画面部分はスクリプトを使い、ロジック部分をJavaで書くことが非常に楽チン
Pnutsをサーブレットとして使う
Pnutsをつかってサーブレットを記述できる。コンパイルやインストールをすることなくWebアプリの挙動を変更することができる。
モジュールetc.
上に述べた機能以外にも、Pnutsでは正規表現の利用やWinodowsのCOMオブジェクトの取り扱いなどさまざまな拡張機能が用意されている。これらの機能はmoduleという単位になっていて、スクリプトのなかでuse(モジュール名)宣言することによって使用できるようになっている。

これらの機能を調べたくなった場合は、本家サイトを参考にして欲しい。

もしくはこの記事が連載化されれば紹介する予定である。

スクリプト言語を使った開発サイクル

下の模式図は、スクリプト言語と通常のコンパイラ言語を両方使いながら行うハイブリット開発を示している。

模式図

Python入門の巻末に記述されているものからアイディアを頂いている。この図は、開発の時間が経つにともなってスライダーが右から左へ、もしくは左から右へスライドしていくイメージで描かれている。

この図によると開発のタイプは2種類である。

左から右へスライダーをずらしていく
開発の初期段階ではPnutsでプロトタイプを記述し開発を高速にすすめる。ある程度開発が進むにしたがってコンポーネント化による再利用性が必要な部分や、パフォーマンスの要求が厳しい部分をJavaに書き換えていく
右へ左へスライダーをずらしていく
最初Javaアプリケーションとして記述されたものから、プラグインのように動的に振る舞いを変更したい部分や、頻繁に変更要求がでる部分をPnutsで置き換えていく

このようなスクリプト言語とコンパイラ言語によるハイブリットなアプリの例としては、(Pnutsの例ではないが)最近ではMozillaが有名である。最初は単なるアプリケーションだったものが、最終的にはGUI画面の大部分をXMLベースのスクリプト言語で置き換えてしまった。それにより開発サイクルが早くなったかどうかは定かではないが、少なくとも多言語化や見栄えの変更などは、はるかに楽になっているはずである。(新規の貢献者は参入しやすくなった)

このハイブリットな開発スタイルが実際の開発にどこまで応用できるかどうかは分からないが、少なくてもエンジニアの個人的なツールを開発したりする際には非常に役立つ考え方ではないだろうか。

まとめ

スクリプト言語は仕事で直接使わなくても、日常的なユーティリティを作成する際などに便利な代物である。また近年はスクリプト言語に対する評価が高まっており、RubyPythonのような言語も登場してきている。Rubyと同じように日本発のスクリプト言語であるPnutsだが、イマイチRubyほどメジャーな言語ではないようだ。やはりJavaを前提をしている点で敷居が高いからだろうか。(Java環境の導入が必須であるため)

しかし特にJava関係の開発者なら、とりあえずダウンロードしておくことをお勧めする。Pnutsの利点は言語単体の機能にあるのではなく、Javaで作成された豊富なクラスライブラリを手軽に使える点である。

Java開発者としては、単に仕事としてJavaを使うだけではなく日常的な作業を自動化する際に(Pnuts越しに)Javaのパワーを生かせたら、非常に素敵ではないだろうか。


© 2001 OGIS-RI Co., Ltd.
Prev. Index Next
Prev. Index Next