はじめに
Curlはクライアント開発に特化した本格的なオブジェクト指向言語です。プログラマの使い勝手がよいように、いろいろな処理を自動で補ってくれる便利な機能がたくさんあります。また、ヘルプもかなり充実しています。
ところが、残念ながらこれらのことを実感できるのは、あるハードルを越えた後になります。どの言語も習得するときはそうですが、ハードルを越える前は「何を言っているかわからない」状況になってしまいがちです。実際、筆者自身もCurlの言語仕様を聞いて素晴らしいと感じたものの、悪戦苦闘しているうちに挫折してしまった過去があります。幸い、再度Curlを挑戦する機会に恵まれ、いろいろな方の協力を得て理解することができ、なるほどよく考えられた言語だと実感できるに至りました。
ここでは、そんな自分の経験を生かし、つまづきやすいポイントや、Curlならではの考え方などを紹介していきたいと思います。
対象読者
本連載は、Curlを1度使ってみたことがあるが、いまひとつよくわからない、と感じているプログラマを対象にしています。もちろん、他のJava等のオブジェクト指向言語を使ったことがあり、Curlを勉強されている方も対象となります。
トップレベル
Curlにおいて、なかなか理解しにくいのがトップレベルという言葉です。今回、このトップレベルを説明したいと思います。
トップレベルは名前からも想像できるとおり、ソースコード内の「ある場所」を指し示す言葉です。Curlプログラムは階層的に記述していきますが、非常に大雑把に言うならHTMLで言うところのhtmlタグ、XMLで言うところのrootタグ(最上位の要素)の位置にあたるものがトップレベルになります。
もう少し具体的に説明します。Curlで作成したアプリケーションプログラムは、ブラウザの中で動作するアプレット、もしくは、独自のWindowの中で動作する独立型アプレットのどちらかから起動します。これらのアプレットは、.curlか.dcurlの拡張子を持っています。これらの起動ファイルの中の { } で囲まれていない部分がトップレベルです(図1)。
トップレベルで記述されるのは、テキストもしくはCurlの「式」になります。アプレットと独立型アプレットで動作が異なりますので、おのおのについて見ていきましょう。