メソッド
メソッドとは、1つ以上の動作を実行するコードのことです。 メソッドは、1つ以上のステートメントで構成されます。
ステートメントは 1つの命令を実行し、単純な場合もあれば複雑な場合もあります。 ステートメントとは通常、メソッドの 1行のことを指します (必要に応じて \
文字を使って行を分割 することができます。
メソッドは最大 2GBのテキストまたは、32000行まで記述できます。
メソッドタイプ
4D ランゲージにおいて、数種類のメソッドが存在します。 その呼び出し方によって、メソッドは区別されます:
型 | 自動呼び出しのコンテキスト | 引数の受け取り | 説明 |
---|---|---|---|
プロジェクトメソッド | 呼び出しに応じて (プロジェクトメソッドの呼び出し 参照) | ◯ | 任意のアクションを実行するためのコードです。 作成されたプロジェクトメソッドは、そのプロジェクトのランゲージの一部となります。 |
オブジェクト (ウィジェット) メソッド | メソッドが設定されたフォームオブジェクトに関連したイベント発生時に | × | フォームオブジェクト (ウィジェットとも呼びます) のプロパティです。 |
フォームメソッド | メソッドが設定されたフォームに関連したイベント発生時に | × | フォームのプロパティです。 フォームメソッドを使用してデータとオブジェクトを管理することができます。ただし、これら目的には、オブジェクトメソッドを使用する方が通常は簡単であり、より効果的です。 |
トリガー (別名 テーブルメソッド) | テーブルのレコード操作 (追加・削除・修正) の度に | × | テーブルのプロパティです。 トリガーは、データベースのレコードに対して「不正な」操作がおこなわれることを防ぎます。 |
データベースメソッド | 作業セッションのイベント発生時に | ○ (既定) | 4D には 16のデータベースメソッドがあります。 |
クラス | クラス関数 は、オブジェクトインスタンスのコンテキストにおいて呼び出されます。 | ◯ | クラス関数にはビルトインのものと (例: collection.orderBy() や entity.save() )、開発者によって作成されるものがあります。 クラス 参照。 |