COBOL2002 使用の手引 手引編


付録L 用語解説

(記号)

-Mainオプションが指定されたプログラム

アプリケーションの主プログラム(main関数を持つプログラム)となるCOBOLプログラムのこと。COBOL2002では,-Main,Systemまたは-Main,V3オプションを指定してコンパイルすると,-Mainオプションが指定されたプログラムを作成できる。

(英字)

BASEクラス(BASE class)

COBOL2002で使用できる標準クラス。BASEクラスには,オブジェクトの生成や初期化などのメソッドが定義されている。BASEクラスのサブクラスならば,どのクラスでもBASEクラスの機能が利用できる。

BOM(バイトオーダマーク)

ファイルの先頭に付加された,Unicodeの表現形式を表す情報。

COBOL2002では,テキスト編成ファイルに対してこの情報を付加する。本文中では,Unicodeシグニチャと表記する。

CGI(Common Gateway Interface)

Webサーバの機能を拡張するためのAPIのこと。CGIを使用すると,Webサーバとほかのプログラムを連携させてWebクライアントに複雑なサービスを使用できる。

CSV編成ファイル

CSV(Comma Separated Value)形式でデータが記述されたファイルのこと。表計算プログラムファイルともいう。

CSV形式とは,表計算プログラムやリレーショナルデータベースでデータを扱えるテキストデータの形式をいう。データの区切りをコンマ(,),レコードの区切りを改行で表す。レコードは可変長形式になる。コンマで区切られた個々のデータは,セルと呼ばれる。

HTML(Hyper Text Markup Language)

インターネット経由で閲覧できるWebページを作成するための言語。テキストファイル中にタグと呼ばれる制御文字を埋め込むと,文字書式の設定や画像の埋め込み,ほかのページへのリンクなどを表現できる。

IVS(Ideographic Variation Sequence/Selector)

漢字を表すUnicodeの直後にVariation Selectorと呼ばれるコードを付加し,漢字の「異体字」を表現する方法のこと。

COBOL2002では,用途がDISPLAYおよびNATIONALの項目で使用する。

SELF

メッセージの受け手のオブジェクトを参照するための名前のこと。SELFが参照するオブジェクトをSELFオブジェクトという。メソッド中で使用されるSELFは,そのメソッドの呼び起こし対象のオブジェクト自身のことを表す。

SUPER

SELFと同様に,メッセージの受け手のオブジェクトを参照するための名前のこと。SUPERは,INHERITS句が指定されたクラスのメソッド実装定義中だけで使用できる。SUPERが参照するオブジェクトは,SELFが参照するオブジェクトだが,メソッドの検索方法がSELFの場合と異なる。メソッド実装定義中にSUPERを指定すると,そのメソッド実装定義が含まれるクラスのスーパクラスを起点に,メソッドが検索される。

TDコマンド

テストデバッグで使用するコマンド。

UCS-2(Universal multi-octet Character Set 2)

符号化文字集合の一つの形式。1文字を2バイトで表現する。

COBOL2002では,用途がDISPLAYおよびNATIONALの項目でサポートする。

UCS-4(Universal multi-octet Character Set 4)

符号化文字集合の一つの形式。1文字を4バイトで表現する。

COBOL2002では,用途がDISPLAYおよびNATIONALの項目でUCS-4の範囲をサポートする。

Unicode

1バイトでは表現できない文字セットを含めあらゆる文字セットをサポートした文字コード。代表的な符号化文字集合としてUCS-2,UCS-4がある。代表的なエンコーディングスキーマとしてUTF-8,UTF-16がある。

COBOL2002では,UCS-4の範囲(UCS-2の範囲を含む)をサポートする。

本文中では,符号化文字集合,およびエンコーディングスキーマを文字コードと表記する。

Unicodeシグニチャ

Unicodeの表現形式(UTF-16LE/UTF-16BE/UTF-8),またはそれを識別するための情報。

UTF-16(16-bit UCS Transformation Format)

エンコーディングスキーマの一つの形式。一つのコード単位を2バイトとし,1文字を1コード単位(2バイト),または2コード単位(4バイト)で表現する。UTF-16では2バイトのコード単位の1バイト目を先に書くビッグエンディアン形式(UTF-16BE)と1バイト目を後に書くリトルエンディアン形式(UTF-16LE)がある。

COBOL2002では,用途がNATIONALの項目でUCS-4の範囲(UCS-2の範囲を含む)をサポートする。

UTF-8(8-bit UCS Transformation Format)

エンコーディングスキーマの一つの形式。ASCII文字を1バイト,日本語文字を3〜8バイト,半角かたかなを3バイトで表現する。

COBOL2002では,用途がDISPLAYの項目で使用する。

(ア行)

アプリケーションの主プログラム

main関数を持つプログラムのこと。

COBOL2002では,-Main,Systemまたは-Main,V3オプションを指定してコンパイルすると,アプリケーションの主プログラムとなるCOBOLプログラムを作成できる。また,他言語で作成したアプリケーションの主プログラムから,COBOLプログラムを呼び出して利用することもできる。

入れ子のプログラム

原始プログラムが入れ子構造になっている場合の,内側のプログラムのこと。内側のプログラム,または内部プログラムともいう。

インスタンスオブジェクト(instance object)

あるクラスに属するオブジェクトのこと。「BASEクラス」のファクトリオブジェクトのメソッド「NEWクラス」の呼び起こしによって生成され,実行単位の終了か,ガーベジコレクションによって消滅させられる。

インスタンスデータ

インスタンスオブジェクトが独自に持つデータのこと。インスタンスメソッドによって操作される。

インスタンスメソッド

インスタンスデータを操作するためのメソッド。

インタフェース(interface)

メッセージの送り手から見えるオブジェクトの部分のこと。

例えば,現金支払い機を一つのオブジェクトとすると,「引き出し」「預け入れ」などのメニューがインタフェースに当たり,そのサービスを実現するための内部的な仕組みが実装に当たる。インタフェースは,メソッド原型の集合である。つまり,どのようなメソッド原型を持つかによって,オブジェクトが持つインタフェースの型が決まる。インタフェースは,クラスとは別に定義できる。

内側のプログラム

原始プログラムが入れ子構造になっている場合の,内側のプログラムのこと。入れ子のプログラム,または内部プログラムともいう。

オブジェクト(object)

データとそのデータを操作するメソッド(手続き)を一体化させたモジュール。オブジェクトは,ある特定の仕事を受け持ち,所定のメッセージに対してメソッドを動作させることで問題を処理する。オブジェクト指向のプログラムでは,オブジェクト同士がメッセージをやり取りすることによって,問題が処理される。

オブジェクト参照データ項目

オブジェクトを参照するためのデータ。オブジェクト参照は,データ項目に,USAGE IS OBJECT REFERENCE句を指定したもの。

オブジェクト指向(Object Orientation)

現実にある「もの」(オブジェクト)同士のやり取りをモデル化し,それをそのままコンピュータの世界でも実現しようとする考え方のこと。

オブジェクトの消滅(object destruction)

ファクトリオブジェクト,インスタンスオブジェクトを使用できない状態にすること。ファクトリオブジェクトは実行単位の終了によって消滅させられる。また,インスタンスオブジェクトは,実行単位の終了か,ガーベジコレクションによって自動的に消滅させられる。

オブジェクトの生成(object creation)

オブジェクトを使用できる状態にすること。オブジェクトはプログラムの実行時に生成される。COBOL2002のオブジェクト指向機能では,「BASEクラス」のファクトリオブジェクトのメソッド「NEWメソッド」を呼び起こすことでオブジェクトが生成される。

オブジェクトプロパティ(object property)

データ項目にPROPERTY句を書くか,METHOD-IDにPROPERTY指定を書くと,そのデータ項目は別のクラスやプログラムから直接参照できるようになる。このデータ項目は,オブジェクト中のほかの属性(INVOKE文による呼び起こしによってだけ参照される)に対して,特性(オブジェクトプロパティ)であると宣言される。

オプション

コンパイラやコマンドへの動作を指示するためのもの。

(カ行)

ガーベジコレクション(garbage collection)

実行単位のどこからも参照されなくなったオブジェクトを,COBOL2002のオブジェクト指向機能が検索し,自動的に消滅させる仕組みのこと。

外部スイッチ

ハードウェアまたはソフトウェアの装置であって,作成者によって定義,命名され,二者択一の状態のどちらかであることを示すために使用される。

外部プログラム

原始プログラムが入れ子構造になっている場合の,最も外側のプログラムのこと。このマニュアルでは,外部プログラムのことを最外側のプログラムと呼ぶ。

外部変数

C言語で,関数外で宣言され,どの関数からでも参照できる変数(グローバル変数)のこと。外部変数は,プログラム実行中に常に同じ場所に配置され,値を保持し続ける。

カウント情報

プログラム中の文の実行回数をカウントして数値で表したもの。

型(type)

ある集合の中の個々を,何によって識別するかを明示するもの。例えば,プログラムを構成する要素をデータごとに識別する場合は,データ型となる。

活性化されるプログラム

CALL文の対象となるプログラムで,実行時に呼び出し元プログラムと組み合わされて1個の実行単位となる。このマニュアルでは,活性化されるプログラムのことを呼び出し先のプログラムと呼ぶ。

活性化するプログラム

CALL文を実行してほかのプログラムを呼ぶプログラム。このマニュアルでは,活性化するプログラムのことを呼び出し元のプログラムと呼ぶ。

カバレージ情報

テストの進捗状況を数値で表したもので,C0メジャー情報,C1メジャー情報,S1メジャー情報,およびこれらの差分情報がある。

カプセル化(encapsulation)

データとそのデータを操作するメソッドから成るオブジェクトを,外部から隠ぺいすること。カプセル化によって個々のオブジェクトの独立性が高まり,データまたはプログラム間の相互依存性が減少するので,ほかのデータやモジュールへの影響を心配しないで,処理内容の変更や修正ができるようになる。

環境変数

コンパイラ環境へのオプションを変数として設定や実行可能ファイルおよびその実行環境へのオプションを変数として設定しておくもの。

既定義オブジェクト参照

COBOL2002のオブジェクト指向機能で,言語仕様としてあらかじめ定義された一意名のことで,SELF,SUPER,NULL,およびEXCEPTION-OBJECTがある。それぞれは決まったオブジェクトを参照する。

共通例外処理

COBOL2002で新しく追加された新機能の例外処理のこと。

クラス(class)

ある共通の性質を持つオブジェクトを一つのグループにまとめて定義したもの。クラスでは,それに属するオブジェクトのデータフォーマットおよびメソッドを定義することで,そのクラスに属するオブジェクトの型を規定する。

継承(inheritance)

スーパクラスから,その性質(メソッド)をサブクラスが受け継ぐ仕組みのこと。COBOL2002のオブジェクト指向機能では,INHERITS句を指定することでスーパクラスから,その性質を継承できる。一つのクラスの性質を継承することを単純継承という。これに対して,複数のスーパクラスの性質を継承することを多重継承という。また,多重継承の結果,同じクラスを重複して継承することをダイヤモンド継承という。

コンパイル

原始プログラムを翻訳すること。

COBOLプログラムのコンパイルは,ccbl2002コマンドで実行する。

(サ行)

最外側のプログラム

原始プログラムが入れ子構造になっている場合の,最も外側のプログラムのこと。外部プログラムともいう。

サブクラス(subclass)

クラスの階層関係の中で,継承する側のクラスのこと。

サロゲート

UTF-16の拡張で,2つのコード単位(4バイト)で1文字を表す機能。この2つのコード単位の組み合わせのことをサロゲートペアと呼ぶ。

COBOL2002では,用途がNATIONALの項目で使用する。

シグナル

ハードウェア,およびソフトウェアで発生する割り込みのこと。

実行可能プログラム

呼び出し元プログラムと呼び出し先プログラムをコンパイル,リンクし,一つの実行できるプログラムにしたもの。

実行時要素

プログラム定義,メソッド定義,および関数定義の総称。このマニュアルでは,実行時要素のことをプログラムと呼ぶ。

スーパクラス(superclass)

クラスの階層関係の中で,継承される側のクラスのこと。

制御プログラム

このシステムのOS(オペレーティングシステム)のことを指す。

(タ行)

ダイヤモンド継承(repeated inheritance,diamond inheritance)

多重継承の結果,同じクラスを直接的または間接的に重複して継承すること。

多重継承(multiple inheritance)

複数のクラスをスーパクラスとして継承すること。

単純継承(simple inheritance)

一つのクラスをスーパクラスとして継承すること。

定数長拡張機能

英数字定数の定数長を拡張できるようにする機能。英数字定数の長さの限界値を160文字(バイト)から8,191文字(バイト)に拡張できる。

定数長を拡張するプログラムのコンパイル時には,-LiteralExtend,Alnumコンパイラオプションを指定する。

適合(conformance)

メッセージの送り先のオブジェクトが適切かどうかを調べるための概念。適合は,オブジェクトが持つインタフェースに基づいてチェックされる。あるインタフェースBを持つオブジェクトに対するメッセージが,別のインタフェースAを持つオブジェクトでも対応できる場合,インタフェースAはインタフェースBに適合しているという。インタフェースAがインタフェースBに適合する場合,インタフェースBに適合するインタフェース型のオブジェクトが使用できれば,インタフェースAに適合するインタフェース型のオブジェクトも使用できる。適合は,コンパイル時または実行時にチェックされる。これによって,オブジェクトの誤用が避けられるだけでなく,同じメッセージを異なるクラスのオブジェクトに送れるようになる。

動的長基本項目(dynamic-length elementary item)

実行時に長さを変更できるデータ項目(英数字項目または日本語項目)のこと。DYNAMIC LENGTH句で定義する。動的長基本項目に新しい値が格納されると,項目の長さは自動的に調整される。

動的長基本項目は格納する値によって長さが変わる。想定以上にデータ項目の長さが長くなることを防ぐため,データ項目の最大長はLIMITで指定できる。

登録集原文

COBOLプログラム中でよく利用される標準化した手続き,ファイル記述,レコード記述,または完全な一つのプログラムなどを,コンパイルするプログラムとは別のファイルに登録したもの。

(ナ行)

内部プログラム

原始プログラムが入れ子構造になっている場合の,内側のプログラムのこと。このマニュアルでは,内部プログラムのことを内側のプログラム,または入れ子のプログラムと呼ぶ。

日本語EUC

UNIX系OSで標準的に使われる文字コードの一つ。ASCII文字を1バイト,半角かたかなを2バイト,日本語文字を2バイトや3バイトで表現する。

日本語集団項目(national group item)

用途がNATIONALで字類および項類が日本語となる集団項目。日本語集団項目となるデータ項目には,明示的にまたは暗黙的にGROUP-USAGE IS NATIONALの指定が必要。

日本語集団項目の従属項目は,日本語項目,日本語編集項目および日本語集団項目だけとなる。

(ハ行)

バイトオーダ

2バイト以上のデータの記録を行なう順序のこと。例えば,0x1234のデータを0x1234のように最上位のバイトから順番に記録する方式をビッグエンディアン,0x3412のように最下位のバイトから順番に記録する方式をリトルエンディアンという。2バイトのUTF-16は,バイトオーダを意識する。

標準クラス

COBOL2002のオブジェクト指向機能で,言語仕様としてあらかじめ定義されたクラスのこと。BASEクラスがある。

表要素

表中の繰り返す項目の組に属する1個のデータ項目。

ファクトリオブジェクト

一つのクラス中のすべてのオブジェクトが共有するデータ(ファクトリデータ)とそれを操作するためのメソッド(ファクトリメソッド)から成るオブジェクト。ファクトリオブジェクトは,実行単位の開始によって生成され,実行単位が終了すると消滅させられる。

ファクトリデータ

一つのクラス中のすべてのオブジェクトが共有するデータのこと。ファクトリメソッドによって操作される。

ファクトリメソッド

ファクトリデータを操作するためのメソッド。

プログラム

プログラム定義,メソッド定義,および関数定義の総称。実行時要素ともいう。

ポリモルフィズム(polymorphism)

一般的には,ある一つの指示に対して異なるさまざまな動作をとれる特徴を指す。オブジェクト指向では,同じメッセージでも受け取るオブジェクトのクラスが異なれば,動作が異なる特徴のことをいう。

(マ行)

マルチスレッド

プログラム内の仕事を,スレッドという単位に分けて実行する方式。複数のプログラムを並列に実行できる。

見た目幅

Unicode機能の組み込み関数で使用する,文字の見た目の幅。半角文字の幅は1,全角文字の幅は2として扱う。

Unicode機能の組み込み関数で,文字を見た目幅で数える場合に使用する。

メインフレーム

大規模な業務システムなどに用いられる汎用大型コンピュータ。

メソッド(method)

オブジェクトで使用できるインタフェース(メソッド原型という)とそのサービスの実装を定義した手続きのこと。オブジェクト間のやり取りは,すべてメソッドを通して行われる。メソッドには,ファクトリメソッドおよびインスタンスメソッドの2種類がある。

メソッド原型(method prototype)

メソッドを定義する際,メソッドで使用できるインタフェースを定義した部分。メソッド原型は,メソッド名と,パラメタおよび戻り値から成る。

メソッドの呼び起こし(method invocation)

オブジェクトに対してメソッドを呼び起こすこと。COBOL2002では,INVOKE文によってメソッドを呼び起こす。

メッセージ(message)

オブジェクトに対して送られる要求のこと。メッセージは,「受け手」「メソッド」「パラメタ」から成る。COBOL2002のオブジェクト指向機能では,INVOKE文によってメッセージをオブジェクトに送り,適切なメソッドを呼び起こす。

(ヤ行)

呼び出し先プログラム

CALL文の対象となるプログラムで,実行時に呼び出し元プログラムと組み合わされて1個の実行単位となる。活性化されるプログラムともいう。

呼び出し元プログラム

CALL文を実行してほかのプログラムを呼ぶプログラム。活性化するプログラムともいう。

(ラ行)

リポジトリ段落(repository)

構成節中に指定する。リポジトリ段落に指定したクラス名,インタフェース名,および利用者定義関数名は,そのリポジトリ段落を含んでいるプログラム定義,クラス定義,インタフェース定義,または関数定義中で有効となる。

リポジトリファイル(repository file)

クラス定義,インタフェース定義,および関数定義の定義情報を格納するファイル。コンパイル対象のソースファイルごとに生成する。

例外処理

手続き文の実行中に発生したエラーに対して処理する機能のこと。