2024/05/12

クラス化に挑戦: #1)クラスって何?

LotusScript でのノーツアプリケーション開発では、NotesSession クラスなど Notes Object Class と呼ばれる定義済みのクラスを使用して開発します。ですので、日ごろから必ずと言っていいほどクラスを利用していることになります。

このシリーズでは、定義済みのクラスではなく、開発者自身が定義する方法をまとめます。クラスには、開発効率を高める効果がありますので、習得しておくと おトク だと思います。

なお、この記事は私自身の経験をもとに記載しています。真似事から始めて、少しずつ経験を積んできた結果をまとめたものになります。オブジェクト指向を本気で勉強し、正確な知識に裏打ちされた記事ではないので、誤解や偏りがあるかもしれません。あらかじめご了承ください。


クラスとは?

プログラミングの世界で ”オブジェクト指向” と呼ばれ、モノ(=オブジェクト)に着目した考え方があります。このオブジェクトの設計書(定義)をクラスといいます。プログラム言語的に表現すると、クラスは属性(プロパティ)と操作(メソッド)を持つデータ型といえます。

例えば、社員情報を管理するクラスを考えます。

社員情報としては、社員番号 / 名前 / 誕生日 などが考えますが、これら項目がプロパティとなります。そして『年齢を取得する』などの何らかの処理を行って結果を返すような操作がメソッドとなります。


インスタンス

クラス定義をもとに作成した実態をインスタンスといいます。クラスは設計書(定義)でしたが、インスタンスは実態ですのでデータを保持しています。

プログラム上では、インスタンスはオブジェクト変数に格納されます。例えば、先の ”社員情報” クラスで 2 名分のインスタンスを作成すると次のようになります。

◇ 山田 太郎 のインスタンス


◇ 佐藤 花子 のインスタンス


なお、インスタンスは ”オブジェクト” と呼ばれることが多いです。どちらも ”実態” で同じ意味となります。


LotusScript とクラス

LotusScript では、クラスを定義するステートメント Class が用意されています。開発者自身が自由にクラスを定義し、プログラム内で利用できます。

このステートメントを使用してクラスを定義する方法については次回にまとめます。


クラス化に挑戦 次回


0 件のコメント:

コメントを投稿