JPH117399A - オブジェクト指向プログラムにおけるデータ表示方式 - Google Patents
オブジェクト指向プログラムにおけるデータ表示方式Info
- Publication number
- JPH117399A JPH117399A JP9159501A JP15950197A JPH117399A JP H117399 A JPH117399 A JP H117399A JP 9159501 A JP9159501 A JP 9159501A JP 15950197 A JP15950197 A JP 15950197A JP H117399 A JPH117399 A JP H117399A
- Authority
- JP
- Japan
- Prior art keywords
- class
- attribute
- instance
- address
- list
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Debugging And Monitoring (AREA)
Abstract
(57)【要約】
【課題】オブジェクト指向プログラムにおいて、生成さ
れたインスタンスが関連付けしている複数の他インスタ
ンスの属性を一覧表示すること。さらにオブジェクト指
向データベースにおいて、出力された属性一覧の値を変
更することにより、データベースを更新すること。 【解決手段】処理101は、クラス一覧表示及び、表示
クラス、属性の選択を行う処理であり、ソースコードを
読み込み、読み込んだソースコードに存在するクラスを
一覧表示し、その中から表示するクラスの及び属性の選
択を行い、処理102で取得するアドレス関連ファイル
を作成する。処理102は選択クラスのアドレスと値の
取得と関連付けを行う処理であり、プログラム実行中
に、表示するクラスのインスタンスが記憶されているア
ドレス及び属性の値、インスタンス間の関連をアドレス
関連ファイルに取得する。処理103は選択属性一覧表
示処理であり、処理102で取得したアドレス関連ファ
イルを元に属性を一覧表示する。
れたインスタンスが関連付けしている複数の他インスタ
ンスの属性を一覧表示すること。さらにオブジェクト指
向データベースにおいて、出力された属性一覧の値を変
更することにより、データベースを更新すること。 【解決手段】処理101は、クラス一覧表示及び、表示
クラス、属性の選択を行う処理であり、ソースコードを
読み込み、読み込んだソースコードに存在するクラスを
一覧表示し、その中から表示するクラスの及び属性の選
択を行い、処理102で取得するアドレス関連ファイル
を作成する。処理102は選択クラスのアドレスと値の
取得と関連付けを行う処理であり、プログラム実行中
に、表示するクラスのインスタンスが記憶されているア
ドレス及び属性の値、インスタンス間の関連をアドレス
関連ファイルに取得する。処理103は選択属性一覧表
示処理であり、処理102で取得したアドレス関連ファ
イルを元に属性を一覧表示する。
Description
【0001】
【発明の属する技術分野】本発明は、オブジェクト指向
プログラミングを支援するコンピュータ支援ソフトウェ
アエンジニアリング(以下CASEとする)ツールにお
いて、特に、メモリ内に保持されている複数のインスタ
ンスの属性及び、オブジェクト指向データベース内に格
納された複数のインスタンスの属性を一覧表示し、デー
タの確認、及び更新を行う為に用いる。
プログラミングを支援するコンピュータ支援ソフトウェ
アエンジニアリング(以下CASEとする)ツールにお
いて、特に、メモリ内に保持されている複数のインスタ
ンスの属性及び、オブジェクト指向データベース内に格
納された複数のインスタンスの属性を一覧表示し、デー
タの確認、及び更新を行う為に用いる。
【0002】
【従来の技術】従来の技術では、オブジェクト指向プロ
グラムによって生成された、メモリ内のインスタンスの
情報を把握する手段として、CASEツールにデバッガ
及びブラウザと呼ばれるアプリケーションが用意されて
いる。このデバッガにより、メモリ内のインスタンス、
またブラウザにより、データベース内のインスタンスに
関する様々な情報を参照できる。従来のデバッガでは、
デバッグ時にソースコードを一行ずつトレースでき、そ
の際ソースコード上で表示するインスタンスを選択する
事により、選択したインスタンスの属性等の情報を取得
できる。さらに従来のデータベース管理システムで用意
されているブラウザでは、データベースへのエントリポ
イントからインスタンスの関連を一件ずつ追跡する事に
より、目的のインスタンス内の情報を取得する。さら
に、オブジェクト指向データベース内のインスタンスの
属性等の情報の更新は、ユーザが更新用アプリケーショ
ンを作成し、該アプリケーションを用いて行っている。
グラムによって生成された、メモリ内のインスタンスの
情報を把握する手段として、CASEツールにデバッガ
及びブラウザと呼ばれるアプリケーションが用意されて
いる。このデバッガにより、メモリ内のインスタンス、
またブラウザにより、データベース内のインスタンスに
関する様々な情報を参照できる。従来のデバッガでは、
デバッグ時にソースコードを一行ずつトレースでき、そ
の際ソースコード上で表示するインスタンスを選択する
事により、選択したインスタンスの属性等の情報を取得
できる。さらに従来のデータベース管理システムで用意
されているブラウザでは、データベースへのエントリポ
イントからインスタンスの関連を一件ずつ追跡する事に
より、目的のインスタンス内の情報を取得する。さら
に、オブジェクト指向データベース内のインスタンスの
属性等の情報の更新は、ユーザが更新用アプリケーショ
ンを作成し、該アプリケーションを用いて行っている。
【0003】
【発明が解決しようとする課題】従来技術によれば、一
つ一つのインスタンスの情報の確認は可能である。しか
し、オブジェクト指向プログラミングの際重要となるの
はオブジェクト間の関連である。特にあるインスタンス
が複数の他のインスタンスに関連付けされている場合、
関連するインスタンス間のデータの整合性を確認するた
めに、それぞれの関連先インスタンスの内容を同時に把
握することが必要である。また、オブジェクト指向デー
タベースの場合、データの整合性が合わない場合即座に
修正できるツールが必要である。
つ一つのインスタンスの情報の確認は可能である。しか
し、オブジェクト指向プログラミングの際重要となるの
はオブジェクト間の関連である。特にあるインスタンス
が複数の他のインスタンスに関連付けされている場合、
関連するインスタンス間のデータの整合性を確認するた
めに、それぞれの関連先インスタンスの内容を同時に把
握することが必要である。また、オブジェクト指向デー
タベースの場合、データの整合性が合わない場合即座に
修正できるツールが必要である。
【0004】本発明の第一の目的は、オブジェクト指向
プログラムにおいて、あるインスタンスが関連付けして
いる複数の他のインスタンスの属性を一覧表示すること
により、データ間の関連の確認を容易に行えるデータ表
示方式を提供することにある。
プログラムにおいて、あるインスタンスが関連付けして
いる複数の他のインスタンスの属性を一覧表示すること
により、データ間の関連の確認を容易に行えるデータ表
示方式を提供することにある。
【0005】また本発明の第二の目的は、オブジェクト
指向データベースにおいて、データの更新を容易に行え
るデータ表示方式を提供することにある。
指向データベースにおいて、データの更新を容易に行え
るデータ表示方式を提供することにある。
【0006】
【課題を解決するための手段】上記第一の目的を達成す
るために、本発明によるデータ表示方式では、メモリ内
あるいはオブジェクト指向データベース内に保持されて
いる複数のクラスの複数の属性の内、表示するクラス及
び属性を選択し、プログラムの実行中に該選択クラスの
インスタンスが生成されるメモリ上のアドレス、あるい
はデータベースに格納する際発行されるオブジェクトI
D等の位置情報を取得し、該取得した位置情報に基づ
き、メモリあるいはデータベース内の該選択クラスのイ
ンスタンスの属性を取得し、該取得インスタンスを一覧
表示する。これにより、ユーザが複数のクラス及び属性
の中から確認したい項目のみを一覧表示する事が可能と
なり、さらに表示する属性として、そのクラスのインス
タンスが属性として直接保持しているデータのみなら
ず、表示するクラスのインスタンスの属性として保持し
ている他インスタンスの属性についても、ユーザによっ
て指定する事が可能となる。その結果、効率良くインス
タンスの内容を確認する事が可能となる。
るために、本発明によるデータ表示方式では、メモリ内
あるいはオブジェクト指向データベース内に保持されて
いる複数のクラスの複数の属性の内、表示するクラス及
び属性を選択し、プログラムの実行中に該選択クラスの
インスタンスが生成されるメモリ上のアドレス、あるい
はデータベースに格納する際発行されるオブジェクトI
D等の位置情報を取得し、該取得した位置情報に基づ
き、メモリあるいはデータベース内の該選択クラスのイ
ンスタンスの属性を取得し、該取得インスタンスを一覧
表示する。これにより、ユーザが複数のクラス及び属性
の中から確認したい項目のみを一覧表示する事が可能と
なり、さらに表示する属性として、そのクラスのインス
タンスが属性として直接保持しているデータのみなら
ず、表示するクラスのインスタンスの属性として保持し
ている他インスタンスの属性についても、ユーザによっ
て指定する事が可能となる。その結果、効率良くインス
タンスの内容を確認する事が可能となる。
【0007】また、上記第二の目的を達成するために、
本発明によるデータ表示方式では、該一覧表示された該
取得インスタンスの属性をユーザが更新することによ
り、該データベース上の該取得インスタンスの属性を更
新する。これにより、オブジェクト指向データベースに
おいて、従来ユーザが作成するアプリケーション内で行
っていたインスタンスの更新を、関連データの整合性を
確認しながら容易に行うことができる。
本発明によるデータ表示方式では、該一覧表示された該
取得インスタンスの属性をユーザが更新することによ
り、該データベース上の該取得インスタンスの属性を更
新する。これにより、オブジェクト指向データベースに
おいて、従来ユーザが作成するアプリケーション内で行
っていたインスタンスの更新を、関連データの整合性を
確認しながら容易に行うことができる。
【0008】
【発明の実施の形態】以下、本発明の一実施例につい
て、図面を用いて詳細に説明する。
て、図面を用いて詳細に説明する。
【0009】まず、本発明の第一の目的である「オブジ
ェクト指向プログラムにおいて、関連するインスタンス
の属性を一覧表示することが可能なデータ表示方式」の
実現方法について、図1から図9を用いて説明する。
ェクト指向プログラムにおいて、関連するインスタンス
の属性を一覧表示することが可能なデータ表示方式」の
実現方法について、図1から図9を用いて説明する。
【0010】図2は、本発明に係わる計算機システムで
ある。
ある。
【0011】201はメモリであり、本発明によるシス
テムを利用し作成したインスタンス、を保存する。20
2は、CPUであり、該システムを制御する。203は
外部記憶装置であり、本発明を用いて作成するソースプ
ログラムや、該アドレス関連ファイル等を格納する。2
04は、入力装置であり、利用者が該システムへの応答
などに用いるキーボードやマウスである。205は、出
力装置であり、該システムの処理に従い情報を利用者に
表示する。
テムを利用し作成したインスタンス、を保存する。20
2は、CPUであり、該システムを制御する。203は
外部記憶装置であり、本発明を用いて作成するソースプ
ログラムや、該アドレス関連ファイル等を格納する。2
04は、入力装置であり、利用者が該システムへの応答
などに用いるキーボードやマウスである。205は、出
力装置であり、該システムの処理に従い情報を利用者に
表示する。
【0012】図1は、本実施例のオブジェクト指向プロ
グラミングにおけるデータ表示方式の概略の処理の流れ
を示すフローチャートである。処理101は、インスタ
ンスを表示するクラスをユーザが選択するために利用す
るクラス一覧画面の表示及び、表示クラス、表示属性の
選択を行う処理である。203上のソースコードを読み
込み、該ソースコードに存在するクラスを一覧表示し、
その中から表示するクラス及び属性の選択を行い、処理
102においてアドレスを取得するためのアドレス関連
ファイルを作成する。処理102は、選択クラスのイン
スタンスのアドレスと値の取得さらに、インスタンス間
の関連の取得を行う処理である。プログラム実行中に、
表示するクラスのインスタンスが記憶されているアドレ
ス及び属性の値、インスタンス間の関連をアドレス関連
ファイルに取得する。処理103は、選択属性一覧表示
処理である。処理102で取得したアドレス関連ファイ
ルに基づき属性を一覧表示する。
グラミングにおけるデータ表示方式の概略の処理の流れ
を示すフローチャートである。処理101は、インスタ
ンスを表示するクラスをユーザが選択するために利用す
るクラス一覧画面の表示及び、表示クラス、表示属性の
選択を行う処理である。203上のソースコードを読み
込み、該ソースコードに存在するクラスを一覧表示し、
その中から表示するクラス及び属性の選択を行い、処理
102においてアドレスを取得するためのアドレス関連
ファイルを作成する。処理102は、選択クラスのイン
スタンスのアドレスと値の取得さらに、インスタンス間
の関連の取得を行う処理である。プログラム実行中に、
表示するクラスのインスタンスが記憶されているアドレ
ス及び属性の値、インスタンス間の関連をアドレス関連
ファイルに取得する。処理103は、選択属性一覧表示
処理である。処理102で取得したアドレス関連ファイ
ルに基づき属性を一覧表示する。
【0013】図3は、実施例の説明で用いるオブジェク
トモデルの例であり、4個のクラスから成り立ってい
る。301はItemクラス、302はCodeクラ
ス、303はNameクラス、304はStringク
ラスである。 Itemクラス301は、属性としてC
odeクラスであるcdとNameクラスであるnmと
intであるIDを持ち、Codeクラス302は属性
としてintであるiを持ち、 Nameクラス303
はStringクラスであるstrを持ち、 Stri
ngクラス304はchar*であるrepを持つ。こ
の関係により、310に示すようなクラス同士の関連が
張られる。305、306は既に作成されているインス
タンスの例である。305はクラス「Name」のイン
スタンス「N1」、306はクラス「String」イ
ンスタンス「S1」である。307は後に例として作成
するインスタンスであり、図7を具体的に説明する箇所
で説明をする。
トモデルの例であり、4個のクラスから成り立ってい
る。301はItemクラス、302はCodeクラ
ス、303はNameクラス、304はStringク
ラスである。 Itemクラス301は、属性としてC
odeクラスであるcdとNameクラスであるnmと
intであるIDを持ち、Codeクラス302は属性
としてintであるiを持ち、 Nameクラス303
はStringクラスであるstrを持ち、 Stri
ngクラス304はchar*であるrepを持つ。こ
の関係により、310に示すようなクラス同士の関連が
張られる。305、306は既に作成されているインス
タンスの例である。305はクラス「Name」のイン
スタンス「N1」、306はクラス「String」イ
ンスタンス「S1」である。307は後に例として作成
するインスタンスであり、図7を具体的に説明する箇所
で説明をする。
【0014】図4、図5、図6、図7、図8、図9で
は、図1の各処理を図3で示した実例を元に説明する。
は、図1の各処理を図3で示した実例を元に説明する。
【0015】図4は、処理101の詳細である。401
はソース読み込み処理であり、本発明を用いて作成する
ソースプログラムを外部記憶装置203より読み込む。
402はクラス情報取得処理である。読み込んだソース
プログラムを解析し、クラスの一覧とクラス間の関連情
報を取得する。403はクラス、属性一覧表示処理であ
る。該クラス一覧及び属性一覧を出力装置205に表示
する。404は表示クラス、属性選択処理である。出力
装置205に出力された一覧より、インスタンスの属性
を表示するクラス及び属性を、入力装置204を用いて
選択する。405はアドレス関連ファイル作成処理であ
る。表示クラス選択処理404で選択されたクラス及び
属性を元に、アドレス及び属性の値、インスタンス間の
関連を格納するためのアドレス関連ファイルを作成す
る。406はアドレス取得呼出付加処理である。該選択
したクラスのインスタンスを生成するソースステートメ
ント(これをタイプ1とする)及び、選択した属性が属
するクラスが呼び出され、属性の更新を行うソースステ
ートメント(これをタイプ2とする)のうしろに、メモ
リ上のアドレス及び値を取得するソースステートメント
を挿入し、その後にソースプログラムをコンパイルす
る。
はソース読み込み処理であり、本発明を用いて作成する
ソースプログラムを外部記憶装置203より読み込む。
402はクラス情報取得処理である。読み込んだソース
プログラムを解析し、クラスの一覧とクラス間の関連情
報を取得する。403はクラス、属性一覧表示処理であ
る。該クラス一覧及び属性一覧を出力装置205に表示
する。404は表示クラス、属性選択処理である。出力
装置205に出力された一覧より、インスタンスの属性
を表示するクラス及び属性を、入力装置204を用いて
選択する。405はアドレス関連ファイル作成処理であ
る。表示クラス選択処理404で選択されたクラス及び
属性を元に、アドレス及び属性の値、インスタンス間の
関連を格納するためのアドレス関連ファイルを作成す
る。406はアドレス取得呼出付加処理である。該選択
したクラスのインスタンスを生成するソースステートメ
ント(これをタイプ1とする)及び、選択した属性が属
するクラスが呼び出され、属性の更新を行うソースステ
ートメント(これをタイプ2とする)のうしろに、メモ
リ上のアドレス及び値を取得するソースステートメント
を挿入し、その後にソースプログラムをコンパイルす
る。
【0016】次に図3を具体的な例をとして用い、図
5、図6を用いて、クラス情報表示処理403と表示ク
ラス、属性選択処理404を説明する。
5、図6を用いて、クラス情報表示処理403と表示ク
ラス、属性選択処理404を説明する。
【0017】図5は、クラス属性画面の例であり、クラ
ス情報表示処理403によって、出力装置205に表示
され、表示クラス属性選択処理404によって、入力装
置204を介して、表示する項目を選択する。図6は入
力装置204により選択されたクラスのインスタンスの
属性のアドレス及び値と、インスタンス間の関連を格納
するアドレス関連ファイルの例である。
ス情報表示処理403によって、出力装置205に表示
され、表示クラス属性選択処理404によって、入力装
置204を介して、表示する項目を選択する。図6は入
力装置204により選択されたクラスのインスタンスの
属性のアドレス及び値と、インスタンス間の関連を格納
するアドレス関連ファイルの例である。
【0018】表示領域501のクラス一覧よりユーザは
表示したいクラスを選択する。ここでは507のクラス
「Item」を選択している。クラスが選択されると、
選択されたクラス「Item」の属性一覧が表示領域5
02として表示された後、アドレス関連ファイル(図
6)に601のクラス「Item」用テーブル601が
作成され、クラス名「Item」が602の領域に格納
される。次にユーザーは表示領域502のクラス「It
em」の属性一覧より表示したい属性を選択する。ここ
では508の属性「Code* cd」を選択してい
る。属性が選択されると、選択された属性が属するクラ
ス「Code」の属性一覧が表示領域503として表示
された後、603の領域に属性名「cd」が格納され、
クラス「Code」用テーブル608が作成され、クラ
ス名「Code」が609の領域に格納される。表示領
域503のクラス「Code」の属性一覧では509の
「int i」を選択している。ここでは「int」は
クラスではなく、符号つき整数を表わしており、実デー
タが格納されている。610の領域に属性名「i」が格
納される。「int」はクラスではないため、クラス
「Code」への遷移元クラスであるクラス「Ite
m」の属性一覧504を表示領域204として表示す
る。表示領域504では、510の属性「Code*
cd」は選択済みなので反転表示されており、511の
クラス「Name* nm」を選択している。次に、ク
ラス「Name」の属性一覧が表示領域505として表
示された後、604の領域に属性名「nm」が格納さ
れ、クラス「Name」用テーブル605が作成され、
クラス名「Name」が606の領域に格納される。表
示領域505では512の属性「String* st
r」が選択されている。次に、クラス「String」
の属性一覧が表示領域506として表示された後、60
7の領域に属性名「str」が格納され、クラス「St
ring」用テーブル611が作成され、クラス名「S
tring」が612の領域に格納される。表示領域5
06では513の属性「char* rep」が選択さ
れている。ここでは「char*」はクラスではなく、
文字列を表わしており、実データが格納されている。6
13の領域に属性名「rep」が格納され、遷移元クラ
スのクラス「Name」へ制御が移る。図6の他の欄に
記入されているデータは処理102で実際に格納される
アドレス及び値の例であり、処理403、404の時点
では格納されていない。
表示したいクラスを選択する。ここでは507のクラス
「Item」を選択している。クラスが選択されると、
選択されたクラス「Item」の属性一覧が表示領域5
02として表示された後、アドレス関連ファイル(図
6)に601のクラス「Item」用テーブル601が
作成され、クラス名「Item」が602の領域に格納
される。次にユーザーは表示領域502のクラス「It
em」の属性一覧より表示したい属性を選択する。ここ
では508の属性「Code* cd」を選択してい
る。属性が選択されると、選択された属性が属するクラ
ス「Code」の属性一覧が表示領域503として表示
された後、603の領域に属性名「cd」が格納され、
クラス「Code」用テーブル608が作成され、クラ
ス名「Code」が609の領域に格納される。表示領
域503のクラス「Code」の属性一覧では509の
「int i」を選択している。ここでは「int」は
クラスではなく、符号つき整数を表わしており、実デー
タが格納されている。610の領域に属性名「i」が格
納される。「int」はクラスではないため、クラス
「Code」への遷移元クラスであるクラス「Ite
m」の属性一覧504を表示領域204として表示す
る。表示領域504では、510の属性「Code*
cd」は選択済みなので反転表示されており、511の
クラス「Name* nm」を選択している。次に、ク
ラス「Name」の属性一覧が表示領域505として表
示された後、604の領域に属性名「nm」が格納さ
れ、クラス「Name」用テーブル605が作成され、
クラス名「Name」が606の領域に格納される。表
示領域505では512の属性「String* st
r」が選択されている。次に、クラス「String」
の属性一覧が表示領域506として表示された後、60
7の領域に属性名「str」が格納され、クラス「St
ring」用テーブル611が作成され、クラス名「S
tring」が612の領域に格納される。表示領域5
06では513の属性「char* rep」が選択さ
れている。ここでは「char*」はクラスではなく、
文字列を表わしており、実データが格納されている。6
13の領域に属性名「rep」が格納され、遷移元クラ
スのクラス「Name」へ制御が移る。図6の他の欄に
記入されているデータは処理102で実際に格納される
アドレス及び値の例であり、処理403、404の時点
では格納されていない。
【0019】図7、図8はアドレス取得呼出付加処理4
06の際付加するステートメントの流れを示すフローチ
ャートである。プログラム中の付加するソースステート
メントがインスタンスの生成である場合(タイプ1)
は、図7のフローチャート、付加するソースステートメ
ントがインスタンスへの操作である場合(タイプ2)
は、図8のフローチャートの処理を行う。
06の際付加するステートメントの流れを示すフローチ
ャートである。プログラム中の付加するソースステート
メントがインスタンスの生成である場合(タイプ1)
は、図7のフローチャート、付加するソースステートメ
ントがインスタンスへの操作である場合(タイプ2)
は、図8のフローチャートの処理を行う。
【0020】これらの処理は処理406でソースプログ
ラムに付加したステートメントがコンパイルプログラム
の実行中に行う処理である。
ラムに付加したステートメントがコンパイルプログラム
の実行中に行う処理である。
【0021】図7はタイプ1に付加するステートメント
の処理である。生成されたインスタンスが表示クラス、
属性選択処理404によって選択されたクラスである場
合(処理701YES)アドレス関連ファイル上の該ク
ラスのテーブルのクラスの欄の下に該インスタンスのア
ドレスが格納される(処理702)。さらに処理404
で選択された属性に関連付け若しくは値が代入された場
合(処理703YES)、代入が他インスタンスへの関
連付けの場合(処理704A)、関連先インスタンスの
アドレスを取得し(処理705)、該クラスのテーブル
の属性の欄の下に該インスタンスのアドレスが格納され
る(処理706)。値への代入の場合(処理704
B)、代入した値を取得し(処理707)、該クラスの
テーブルの属性の欄の下に値が格納される(処理70
8)。
の処理である。生成されたインスタンスが表示クラス、
属性選択処理404によって選択されたクラスである場
合(処理701YES)アドレス関連ファイル上の該ク
ラスのテーブルのクラスの欄の下に該インスタンスのア
ドレスが格納される(処理702)。さらに処理404
で選択された属性に関連付け若しくは値が代入された場
合(処理703YES)、代入が他インスタンスへの関
連付けの場合(処理704A)、関連先インスタンスの
アドレスを取得し(処理705)、該クラスのテーブル
の属性の欄の下に該インスタンスのアドレスが格納され
る(処理706)。値への代入の場合(処理704
B)、代入した値を取得し(処理707)、該クラスの
テーブルの属性の欄の下に値が格納される(処理70
8)。
【0022】図8はタイプ2に付加するステートメント
の処理である。属性選択処理404によって選択された
クラスのインスタンスが操作を受ける場合、(処理80
1YES)操作を受けるインスタンスのアドレスを取得
し(処理802)、アドレス関連ファイルの該クラスの
テーブルに格納されているアドレスから、該インスタン
スのアドレスに一致する行を探す(処理803)。さら
に処理404で選択された属性に関連付け若しくは値が
代入された場合(処理804YES)、で代入が他イン
スタンスへの関連付けの場合(処理805A)、関連先
インスタンスのアドレスを取得し(処理806)、処理
803によって探索した行の該属性の欄に該アドレスを
格納する(処理807)。値への代入の場合(処理80
5B)、代入した値を取得し(処理808)、該欄に値
が格納される(処理809)。
の処理である。属性選択処理404によって選択された
クラスのインスタンスが操作を受ける場合、(処理80
1YES)操作を受けるインスタンスのアドレスを取得
し(処理802)、アドレス関連ファイルの該クラスの
テーブルに格納されているアドレスから、該インスタン
スのアドレスに一致する行を探す(処理803)。さら
に処理404で選択された属性に関連付け若しくは値が
代入された場合(処理804YES)、で代入が他イン
スタンスへの関連付けの場合(処理805A)、関連先
インスタンスのアドレスを取得し(処理806)、処理
803によって探索した行の該属性の欄に該アドレスを
格納する(処理807)。値への代入の場合(処理80
5B)、代入した値を取得し(処理808)、該欄に値
が格納される(処理809)。
【0023】図3、図6の具体例を用い、タイプ1に付
加するステートメント、タイプ2に付加するステートメ
ントを具体的に説明する。
加するステートメント、タイプ2に付加するステートメ
ントを具体的に説明する。
【0024】まずタイプ1付加するステートメントの説
明をする。
明をする。
【0025】307の「S2」という「String」
クラスのインスタンスを新たに生成する場合、選択クラ
スのインスタンスの生成であるので(処理701YE
S)、インスタンスが生成されたメモリ上のアドレスを
領域612の列の下の、空欄614に格納し(処理70
2)、選択された属性に値が代入されたため、(処理7
04B)、値“山田”を取得し、(処理707)領域6
13の列の下の該アドレスが格納された欄の右横の空欄
615に値“山田”を格納する(処理708)。
クラスのインスタンスを新たに生成する場合、選択クラ
スのインスタンスの生成であるので(処理701YE
S)、インスタンスが生成されたメモリ上のアドレスを
領域612の列の下の、空欄614に格納し(処理70
2)、選択された属性に値が代入されたため、(処理7
04B)、値“山田”を取得し、(処理707)領域6
13の列の下の該アドレスが格納された欄の右横の空欄
615に値“山田”を格納する(処理708)。
【0026】次にタイプ2付加するステートメントの説
明をする。
明をする。
【0027】305の「N1」という「Name」クラ
スのインスタンスが既に生成されており、該インスタン
スの属性である「str」を、「S1」から「S2」に
変更する、という操作が行われた場合、(処理801Y
ES)、該インスタンスのアドレスを取得し(処理80
2)、テーブル605に格納されている「Name」ク
ラスのインスタンスのアドレスより「N1」のアドレス
に一致する行を探す(処理803)。領域650のある
行がこれに一致する。次に、strが選択された属性で
あり(処理804YES)、その属性は、他インスタン
スへの関連である為(処理805A)、関連先インスタ
ンスの「S2」のアドレスを取得し(処理806)、処
理803で検索した領域650の右横の欄651に「S
2」のアドレスを格納する(処理807)。
スのインスタンスが既に生成されており、該インスタン
スの属性である「str」を、「S1」から「S2」に
変更する、という操作が行われた場合、(処理801Y
ES)、該インスタンスのアドレスを取得し(処理80
2)、テーブル605に格納されている「Name」ク
ラスのインスタンスのアドレスより「N1」のアドレス
に一致する行を探す(処理803)。領域650のある
行がこれに一致する。次に、strが選択された属性で
あり(処理804YES)、その属性は、他インスタン
スへの関連である為(処理805A)、関連先インスタ
ンスの「S2」のアドレスを取得し(処理806)、処
理803で検索した領域650の右横の欄651に「S
2」のアドレスを格納する(処理807)。
【0028】図9は103の選択属性一覧表示処理の結
果出力される、選択クラス毎のインスタンスの属性を一
覧にして出力したものの例である。
果出力される、選択クラス毎のインスタンスの属性を一
覧にして出力したものの例である。
【0029】これは、501で最初に選択したクラスの
インスタンスの記憶領域アドレスが格納された602の
列のアドレスを選択属性毎に追跡する事によって表示さ
れる。
インスタンスの記憶領域アドレスが格納された602の
列のアドレスを選択属性毎に追跡する事によって表示さ
れる。
【0030】図9の表示法を図6の具体例で説明する。
【0031】先ず501における選択クラスである「I
tem」テーブル601のインスタンスのアドレスが格
納された602の列の1列である領域661にある「I
1」のアドレスを読み込む。次に、該クラスの中の選択
属性である「cd」のアドレスの格納された列603の
1列目である領域662の「C1」のアドレスを読み込
む。次に「cd」が属するクラス「Code」のテーブ
ル608のインスタンスのアドレスが格納された609
の列から、「C1」のアドレスと一致する欄を検索す
る。これは1列目の領域664が一致する。さらに「C
ode」クラスの中の選択属性である「i」の値が格納
された列610の1列目である領域665の値「10
0」読み込む。この値を、領域901に表示する。
tem」テーブル601のインスタンスのアドレスが格
納された602の列の1列である領域661にある「I
1」のアドレスを読み込む。次に、該クラスの中の選択
属性である「cd」のアドレスの格納された列603の
1列目である領域662の「C1」のアドレスを読み込
む。次に「cd」が属するクラス「Code」のテーブ
ル608のインスタンスのアドレスが格納された609
の列から、「C1」のアドレスと一致する欄を検索す
る。これは1列目の領域664が一致する。さらに「C
ode」クラスの中の選択属性である「i」の値が格納
された列610の1列目である領域665の値「10
0」読み込む。この値を、領域901に表示する。
【0032】以上で示した方法により、オブジェクト指
向プログラミングを行う際、メモリ上のインスタンスの
内容をユーザの指定の基、一覧表示することが可能とな
るため、関連のあるインスタンス間のデータの整合性の
確認、把握が容易となる。
向プログラミングを行う際、メモリ上のインスタンスの
内容をユーザの指定の基、一覧表示することが可能とな
るため、関連のあるインスタンス間のデータの整合性の
確認、把握が容易となる。
【0033】次に、本発明をオブジェクト指向データベ
ースに対して適用した場合について説明する。
ースに対して適用した場合について説明する。
【0034】この場合には、前記実施例の、「メモリ」
を「データベース」に、「アドレス」を「オブジェクト
ID」に変更する事によって実現する。オブジェクトI
Dとは、データベースにインスタンスが生成される際、
データベース管理システムがデータベース上のインスタ
ンスの位置を特定するため発行するIDである。
を「データベース」に、「アドレス」を「オブジェクト
ID」に変更する事によって実現する。オブジェクトI
Dとは、データベースにインスタンスが生成される際、
データベース管理システムがデータベース上のインスタ
ンスの位置を特定するため発行するIDである。
【0035】以上で示した方法により、オブジェクト指
向プログラミングを行う際、またオブジェクト指向デー
タベースに記憶されたデータを確認する際、データベー
ス内のインスタンスの内容をユーザの指定の基、一覧表
示することが可能となるため、関連のあるインスタンス
間のデータの整合性の確認、把握が容易となる。
向プログラミングを行う際、またオブジェクト指向デー
タベースに記憶されたデータを確認する際、データベー
ス内のインスタンスの内容をユーザの指定の基、一覧表
示することが可能となるため、関連のあるインスタンス
間のデータの整合性の確認、把握が容易となる。
【0036】さらに、本発明の第二の目的である「オブ
ジェクト指向データベースにおいてデータの更新を容易
に行えるデータ表示方式」の実現について図10、及び
図9、図6を用いて説明する。
ジェクト指向データベースにおいてデータの更新を容易
に行えるデータ表示方式」の実現について図10、及び
図9、図6を用いて説明する。
【0037】図10は、オブジェクト指向データベース
においてデータの更新を容易に行えるデータ表示方式の
概略の処理の流れを示すフローチャートである。処理1
001、処理1002、処理1003は、それぞれ処理
101、処理102、処理103と同じ処理を行う。処
理1004は、一覧表示した属性の値をユーザが書換え
る事によって、データベース内に記憶されている変更さ
れた属性の値の更新を可能にする。
においてデータの更新を容易に行えるデータ表示方式の
概略の処理の流れを示すフローチャートである。処理1
001、処理1002、処理1003は、それぞれ処理
101、処理102、処理103と同じ処理を行う。処
理1004は、一覧表示した属性の値をユーザが書換え
る事によって、データベース内に記憶されている変更さ
れた属性の値の更新を可能にする。
【0038】処理1004を、図9、図6を用いて具体
的に説明する。
的に説明する。
【0039】例えば、図9中の領域901の値が「10
0」から「101」に変更されたとする。領域901
は、図6中の領域665に基づいて出力されたものであ
るので、変更された領域901の値を読み込み、領域6
65の値を「101」に更新する。さらに、領域664
に格納された「C1」のオブジェクトIDに対応するデ
ータベース内部の属性の「i」値を「101」に更新す
る。
0」から「101」に変更されたとする。領域901
は、図6中の領域665に基づいて出力されたものであ
るので、変更された領域901の値を読み込み、領域6
65の値を「101」に更新する。さらに、領域664
に格納された「C1」のオブジェクトIDに対応するデ
ータベース内部の属性の「i」値を「101」に更新す
る。
【0040】以上で示した方法により、オブジェクト指
向データベース内のデータの更新を容易に行えるデータ
表示方式を実現できる。
向データベース内のデータの更新を容易に行えるデータ
表示方式を実現できる。
【0041】
【発明の効果】本発明によれば、オブジェクト指向プロ
グラミングを行う際、メモリ上及び、オブジェクト指向
データベース内のインスタンスの内容をユーザの指定の
基、一覧表示することが可能となるため、関連のあるイ
ンスタンス間のデータの整合性の確認、把握が容易とな
る。さらにオブジェクト指向データベースに本発明を用
いた場合、一覧表示された属性を直接書き換えることが
可能となるため、データベース内の情報の更新が容易と
なる。
グラミングを行う際、メモリ上及び、オブジェクト指向
データベース内のインスタンスの内容をユーザの指定の
基、一覧表示することが可能となるため、関連のあるイ
ンスタンス間のデータの整合性の確認、把握が容易とな
る。さらにオブジェクト指向データベースに本発明を用
いた場合、一覧表示された属性を直接書き換えることが
可能となるため、データベース内の情報の更新が容易と
なる。
【図1】本発明の実施例の概略の処理の流れを示すフロ
ーチャートである。
ーチャートである。
【図2】本発明の実施例の計算機システムである。
【図3】本発明の実施例として用いるオブジェクトモデ
ルである。
ルである。
【図4】本発明の実施例のクラス一覧表示及び表示クラ
ス、属性選択処理の詳細の流れを示すフローチャートで
ある。
ス、属性選択処理の詳細の流れを示すフローチャートで
ある。
【図5】本発明の実施例の、クラス属性画面である。
【図6】本発明の実施例のアドレス関連ファイルであ
る。
る。
【図7】本発明の実施例のプログラム(タイプ1)に付
加するステートメントの流れを示すフローチャートであ
る。
加するステートメントの流れを示すフローチャートであ
る。
【図8】本発明の実施例のプログラム(タイプ2)に付
加するステートメントの流れを示すフローチャートであ
る。
加するステートメントの流れを示すフローチャートであ
る。
【図9】本発明の実施例の選択クラス属性一覧画面であ
る。
る。
【図10】本発明の実施例の概略の処理の流れを示すフ
ローチャートである。
ローチャートである。
201 メモリ 202 CPU 204 入力装置
205 出力装置
205 出力装置
Claims (6)
- 【請求項1】オブジェクト指向プログラミング言語で記
述されたプログラムにおいて、表示するクラス、あるい
は表示するクラス及び属性を選択し、プログラムの実行
中に、該選択クラス、あるいは該選択クラス及び該選択
属性のインスタンスの属性を取得し、該取得インスタン
スの属性を一覧表示することを特徴とするデータ表示方
式。 - 【請求項2】請求項1に記載のオブジェクト指向プログ
ラムにおけるデータ表示方式において、前記プログラム
実行中に、前記選択クラス、あるいは前記選択クラス及
び前記選択属性のインスタンスが生成されるメモリ上の
アドレスを取得し、該所得アドレスに基づき、前記イン
スタンスの属性を取得する事を特徴とするデータ表示方
式。 - 【請求項3】請求項2に記載のオブジェクト指向プログ
ラムにおけるデータ表示方式において、前記取得アドレ
スを格納するアドレスファイルを備えることを特徴とす
るデータ表示方式。 - 【請求項4】データベースに登録するデータ項目の情報
を保持するクラスデータと、該クラスデータごとに値が
設定されるインスタンスデータを備えたオブジェクト指
向データベースにおいて、表示するクラス、あるいは表
示するクラス及び属性を選択し、プログラムの実行中
に、該選択クラスのインスタンスが生成される際データ
ベース管理システムが発行するオブジェクトIDを取得
し、該取得オブジェクトIDに基づき、データベースよ
り該選択クラス、あるいは該選択クラス及び該選択属性
のインスタンスの属性を取得し、該取得インスタンスを
一覧表示することを特徴とするデータ表示方式。 - 【請求項5】請求項4に記載のオブジェクト指向データ
ベースにおけるデータ表示方式において、前記一覧表示
された前記取得インスタンスの属性の更新により、前記
データベース上の該取得インスタンスの属性を更新する
ことを特徴とするデータ表示方式。 - 【請求項6】請求項1及び請求項4に記載のオブジェク
ト指向プログラムにおけるデータ表示方式において、前
記取得インスタンスの属性をテーブル形式により一覧表
示する事を特徴とするデータ表示方式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP9159501A JPH117399A (ja) | 1997-06-17 | 1997-06-17 | オブジェクト指向プログラムにおけるデータ表示方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP9159501A JPH117399A (ja) | 1997-06-17 | 1997-06-17 | オブジェクト指向プログラムにおけるデータ表示方式 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH117399A true JPH117399A (ja) | 1999-01-12 |
Family
ID=15695156
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP9159501A Pending JPH117399A (ja) | 1997-06-17 | 1997-06-17 | オブジェクト指向プログラムにおけるデータ表示方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH117399A (ja) |
-
1997
- 1997-06-17 JP JP9159501A patent/JPH117399A/ja active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5325533A (en) | Engineering system for modeling computer programs | |
| US5519866A (en) | Method and apparatus of incrementally linking components of a modeled computer program | |
| US6651240B1 (en) | Object-oriented software development support apparatus and development support method | |
| US5438661A (en) | Version management method and apparatus in multi-window environment | |
| AU4098700A (en) | Circuit arrangement for measuring the resistances of a pressure-sensitive resistance mat | |
| US5394546A (en) | Database management system and method of extending system functions | |
| EP3113016A1 (en) | Tracing dependencies between development artifacts in a development project | |
| US5781905A (en) | Program generating method combining data item part with database manipulation part | |
| JP2000235444A (ja) | 大型ビルドソフトウェアシステムの管理及び表示方法及びその装置 | |
| AU760395B2 (en) | Program reproducing method and device, and medium on which program for program reproduction recording | |
| JPH0934698A (ja) | ソフトウェア生成方法及び開発支援方法 | |
| JP6817523B2 (ja) | 情報処理装置、情報処理装置の制御方法、およびプログラム | |
| JP3516843B2 (ja) | データベースアクセス方法 | |
| JPH06110733A (ja) | プログラムのテストケース生成装置 | |
| JP6531855B2 (ja) | 情報処理装置、情報処理装置の制御方法、およびプログラム | |
| JPH0683594A (ja) | ウィズィウィグ式エディターとコンパイラーとを統合したグラフィカル・ユーザ・インターフェース | |
| JP2021182252A (ja) | 設計情報管理装置及び設計情報管理方法 | |
| CN116107628B (zh) | 一种基于node.js的文档整理方法 | |
| JP2015069247A (ja) | 情報処理装置、情報処理装置の制御方法、およびプログラム | |
| JP3424558B2 (ja) | オブジェクト管理方法 | |
| JP2000207226A (ja) | コ―ド最適化装置、言語処理装置及びコ―ド最適化方法 | |
| JPH11272524A (ja) | データ変換装置および記憶媒体 | |
| JPS6310239A (ja) | 高級言語のパツチ生成方式 | |
| JPH04190423A (ja) | 機能別ポインタを用いた情報管理支援装置 | |
| JPH05189212A (ja) | リンキング方法 |