オブジェクトのネーミングルールおよび注意事項

プログラミング

競馬予想プログラミングに関する記事を「投稿まとめ」で一覧にしてます。この記事は「自動投票」の一覧に含まれてます。一覧の順に読むとステップごとで分かりやすいです。

自作プロシージャで自動投票を行うかどうかに関係なく、ユーザーが独自のオブジェクトを作成する場合は、以下のルールに従って名前を決めてください。「PC-KEIBA Database」のデータベースオブジェクトと重複しない名前を付けるようご注意ください。

オブジェクトとは

オブジェクトとは、直訳すると「物」を意味します。抽象的で幅広い意味を持つ、まさに英語らしい言葉です。データベースの分野では、以下のようなデータベースを構成する要素をまとめて「データベース・オブジェクト」と呼びます。

  • テーブル
  • プロシージャ
  • ファンクション
  • インデックス

これらすべてが、データベースの基盤となる重要な「物」なのです。

プレフィックス

プログラムの世界では、名前の先頭に付けて分類や識別を行う文字列を「プレフィックス」または「接頭辞(せっとうじ)」と呼びます。「PC-KEIBA Database」では、オブジェクト名に以下のような3桁のプレフィックスを使用するルールを定めています。

プレフィックス(1~2桁目)

これはデータの種類を表します。

  • jv →JRA-VAN データラボ
  • nv →地方競馬DATA
  • ap →PC-KEIBA Database

上記のプレフィックスは「PC-KEIBA Database」で予約されています。そのため、自作のオブジェクトにこれらのプレフィックスを使用しないでください。同じプレフィックスを使用すると、将来のソフトウェアバージョンアップ時に名前の重複が発生し、アップデートが失敗する可能性があります。

自作のオブジェクトには、myをプレフィックスとして使用することをおすすめします。このプレフィックスはプログラムの世界で広く使われており、当サイトのサンプルプログラムでも採用されています。また、プレフィックスを統一することで、「これは自分が作成したオブジェクトだ」とひと目で識別できる便利さも得られます。

ユーザー予想プログラミングにおける注意事項

「PC-KEIBA Database」のシステムでは、上記のプレフィックス(jv、nv、ap)で始まる名前のオブジェクトは、システムに不可欠な重要な要素です。そのため、これらのオブジェクトを編集したり変更したりすることは絶対に避けてください。参照するだけであれば問題ありませんが、変更を加えるとシステムの動作に影響を与える可能性があります。

ただし、自作プロシージャで自動投票を行う場合に限り、例外的に操作が必要となる「ap」のオブジェクトも存在します。その詳細については、この先の【弐ノ型】【参ノ型】で説明します。

プレフィックス(3桁目)

3桁目のプレフィックスは、オブジェクトの種類を示します。

  • d →テーブル
  • p →プロシージャ
  • f →ファンクション

5桁目以降に名前をつける

オブジェクト名を読みやすくするために、4桁目にはアンダーバー(_)を区切り文字として使用し、5桁目以降に具体的な名前を付けます。例えば、自作オブジェクトの名前を付ける際の具体例として、

  • 「基準タイムを作成するプロシージャ」であれば →myp_kijun_time
  • 「スピード指数を保存するテーブル」であれば →myd_speed_shisu

このように、誰が見ても内容が一目で分かるストレートな名前にしておきましょう。時間が経つと、自分でも「これって何だったっけ?」と忘れてしまうことがありますので(笑)

ちなみに「PC-KEIBA Database」のオブジェクトの場合は、「JV-Data 仕様書」で定義されている「レコード種別ID」を基に命名しています。

また、オブジェクト名の長さには制限があります。PostgreSQLでは半角最大63文字までですが、長すぎる名前は逆に分かりづらいので、半角30文字程度を目安にすると良いでしょう。

「投稿まとめ」にもどる