コードを作成する前に、タスクをシンプルアクションで実行できないかどうかを確認します。フォームやビューでシンプルアクションを使用して設計できる要素もあります。シンプルアクションではプログラミングは不要です。
プログラミングインターフェースを選ぶ際には、次のガイドラインを考慮してください。
- 式は、プログラムに似た属性を持っています。例えば、変数に値を代入したり、制限付きの制御ロジックを使用することができます。式言語から Domino Designer へのインターフェースは、@関数と @コマンドを呼び出すことで行います。
一般的に、式はユーザーが現在処理中のオブジェクトで使用するのに適しています。例えば、フィールドにデフォルト値を返したり、ビューの選択条件を決定したりする場合などです。また、場合によってはスクリプトよりパフォーマンスが良かったり、簡単なアプリケーションでは便利なこともあります。@For、@While、@DoWhile などの関数を使用して、ループ処理を実行することもできます。
注: ループは Release 6 で新しく追加されました。
- JavaScript は、さまざまなプラットフォームに共通したオブジェクト指向型のスクリプト言語です。ヘッダースクリプトは、[オブジェクト] タブから [JS Header] を選んでスクリプトエリアにスクリプトを入力することにより、プログラムペインで記述できます。スクリプトは onClick などの特定のイベントやボタンなどのオブジェクトに添付できます。JavaScript はエージェントには記述できません。Domino Designer はユーザースクリプトのコンパイルとロードを監視しますが、JavaScript をコンパイルされた形式で格納することはしません。LotusScript の Web エージェントでは、Print ステートメントを使用して、スクリプトタグを含む HTML をブラウザに出力できます。例えば、Print"<script>function changeLocation(){...}</script>" のように指定します。
JavaScript は、Web アプリケーションや、Notes と Web 環境の両方で 1 つのアプリケーションが使用される場合に、最も効果的に使用されます。JavaScript の Version 1.4 をサポートしています。
- LotusScript は完全なオブジェクト指向のプログラミング言語です。Domino へのインターフェースには、定義済みのクラスを使用します。作成したコードは Domino によってコンパイル、ロードされ、Domino のクラス定義が自動的にインクルードされます。
LotusScript はプログラミングのロジックが複雑な場合に最適です。LotusScript は保存済みのデータベース (バックエンド) へのアクセスに優れ、データベースのアクセス制御リスト (ACL) を操作する機能など、式にはない機能を備えています。LotusScript はユーザーインターフェース (フロントエンド) における機能に制限があります。
- Java は完全にオブジェクト指向のプログラミング言語です。Domino へのインターフェースには、定義済みのクラスを使用します。これはエージェントにおける LotusScript と同じようなものですが、Domino UI 内のイベントに付加することはできません。Domino はエージェントのユーザーコードのコンパイルとロードを監視します。コードはネイティブに作成するかインポートするかのいずれかです。
Java はエージェント内で使用できます。Domino の外で作成されコンパイルされた Java アプリケーションとアプレットは、クラスインターフェースを介して Domino にアクセスできます。