JPH0683597A - オブジェクト指向プログラム開発装置およびオブジェクト指向プログラム開発方法 - Google Patents

オブジェクト指向プログラム開発装置およびオブジェクト指向プログラム開発方法

Info

Publication number
JPH0683597A
JPH0683597A JP23440692A JP23440692A JPH0683597A JP H0683597 A JPH0683597 A JP H0683597A JP 23440692 A JP23440692 A JP 23440692A JP 23440692 A JP23440692 A JP 23440692A JP H0683597 A JPH0683597 A JP H0683597A
Authority
JP
Japan
Prior art keywords
class library
class
file
program
object file
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
Application number
JP23440692A
Other languages
English (en)
Inventor
Taiji Yoneda
泰司 米田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP23440692A priority Critical patent/JPH0683597A/ja
Publication of JPH0683597A publication Critical patent/JPH0683597A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)
  • Stored Programmes (AREA)

Abstract

(57)【要約】 【目的】 プロトタイピングによりプログラム開発効率
が高く、プログラムが高速に動作するオブジェクト指向
プログラム開発方法とその装置を実現する。 【構成】 プログラムソースファイル101をコンパイ
ラ112でコンパイルし、クラスライブラリ生成部11
3が生成したクラス記述ファイル102および動的リン
ク型クラスライブラリ103をクラスライブラリ管理部
114が管理する。動的リンク型実行形式オブジェクト
ファイル生成部115が、プログラムのコンパイル結果
と動的リンク型クラスライブラリ103から動的リンク
型実行形式オブジェクトファイル104を生成する。ま
た、動的リンク型実行形式オブジェクトファイル104
の実行が遅くなる場合や実行する環境により実行される
クラスライブラリが異なる場合を考慮して、静的リンク
型実行形式オブジェクトファイル生成部116が、動的
リンク型実行形式オブジェクトファイル104および動
的リンク型クラスライブラリ103から静的リンク型実
行形式オブジェクトファイル105を生成する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、コンピュータ装置にお
いてオブジェクト指向プログラム言語により高速に実行
するプログラムを効率よく開発するためのオブジェクト
指向プログラム開発装置およびオブジェクト指向プログ
ラム開発方法に関する。
【0002】
【従来の技術】近年、ソフトウェアが大量に開発され、
プログラム開発効率の高いオブジェクト指向型のプログ
ラム開発が主流になってきている。オブジェクト指向型
のプログラム開発では、プログラムをオブジェクトの集
合ととらえてオブジェクトをクラスに分類し、クラスで
行う処理をメソッドとしてプログラムする。クラスはプ
ログラムと独立しており、他のプログラムを開発すると
きに再利用できる。通常は開発が終了した品質の高いク
ラスを多数登録しておくので、新たにプログラムを開発
するときはそれらのクラスを利用することにより新たに
作成するプログラムは少しでよく、プログラムの品質も
高くなる。また、登録されているクラスを利用して必要
最小限の機能を実現したプロトタイピングとし、あとで
詳細に開発していくこともできる。このオブシェクト指
向の考え方により品質の高いプログラムの開発が効率よ
く行える。
【0003】従来のオブシェクト指向プログラム開発装
置は、以下のようなものが一般的であった。
【0004】(1)クラスの行う処理(メソッド)のプ
ログラム(クラスライブラリ)を作成/登録し、それら
をインタプリタが動的にリンクしながら実行する。
【0005】(2)クラスの行う処理(メソッド)のプ
ログラム(クラスライブラリ)をコンパイルすることに
より作成/登録し、それらを静的にリンクすることによ
り実行形式のオブジェクトファイルを生成する。
【0006】以下に従来のオブジェクト指向プログラム
開発方法とその装置について図面を参照しながら説明す
る。
【0007】図3に示すように従来のオブジェクト指向
プログラム開発装置の上記(1)は、ソースファイル作
成/編集部111、中間コード生成部117、クラスラ
イブラリ生成部113、クラスライブラリ管理部11
4、インタプリタ118と、プログラムソースファイル
101、クラス記述ファイル102、中間コードクラス
ライブラリ106で構成されている。
【0008】以下、各構成要素の関係とその動作につい
て説明する。まず、中間コード生成部117がプログラ
ムソースファイル101を中間コードへ変換し、クラス
ライブラリ生成部113がクラスの中間コードをまとめ
て中間コードクラスライブラリ106を生成する。この
際、クラスの属性(継承するクラス、メソッド、内部変
数など)を記述したクラス記述ファイル102を生成す
る。生成したクラス記述ファイル102および中間コー
ドクラスライブラリ106はクラスライブラリ管理部1
14が管理する。プログラムの実行は、インタプリタ1
18がプログラムの中間コードを解釈しながら実行す
る。この際、インタプリタ118はクラスライブラリ管
理部114から使用しているクラスのライブラリの中間
コードを得、それも合わせて解釈実行する。
【0009】つぎに、図4に示すように従来のオブジェ
クト指向プログラム開発装置の上記(2)は、ソースフ
ァイル作成/編集部111、コンパイラ112、クラス
ライブラリ生成部113、クラスライブラリ管理部11
4、静的リンク型実行形式オブジェクトファイル生成部
116と、プログラムソースファイル101、クラス記
述ファイル102、静的リンク型クラスライブラリ10
7、静的リンク型実行形式オブジェクトファイル105
で構成されている。
【0010】以下、各構成要素の関係とその動作につい
て説明する。まず、コンパイラ112がプログラムソー
スファイル101をコンパイルし、クラスライブラリ生
成部113がコンパイル結果をまとめて静的リンク型ク
ラスライブラリ生成部107を生成する。この際、クラ
スの属性(継承するクラス、メソッド、内部変数など)
を記述したクラス記述ファイル102を生成する。生成
したクラス記述ファイル102および静的リンク型クラ
スライブラリ107はクラスライブラリ管理部114が
管理する。静的リンク型実行形式オブジェクトファイル
105は、クラスライブラリ管理部114からのクラス
記述ファイル102および静的リンク型クラスライブラ
リ107の情報をもとに静的リンク型実行形式オブジェ
クトファイル生成部116がプログラムのコンパイル結
果から生成する。静的リンク型実行形式オブジェクトフ
ァイル105の実行は、普通にロードして行う。
【0011】
【発明が解決しようとする課題】しかしながら上記従来
例(1)の構成では、クラスライブラリのみを変更して
実行することができるのでプログラム開発効率が高い
が、インタプリタ方式であるためにプログラムの実行速
度が遅いという問題点を有していた。また、上記従来例
(2)の構成では、コンパイルするためにプログラムの
実行速度は速いが、プログラムの実行形式オブジェクト
を生成したあとでクラスライブラリのみを変更すること
はできないという問題があり、さらに従来例(2)の問
題点はオブジェクト指向プログラム開発の大きな特徴で
あるプロトタイピングができないので、プログラム開発
効率が大きく低下するという問題点を有していた。
【0012】本発明は上記従来の問題点を解決するもの
で、プロトタイピングによりプログラム開発効率が高
く、プログラムが高速に動作するオブジェクト指向プロ
グラム開発方法とその装置を提供することを目的とす
る。
【0013】
【課題を解決するための手段】上記目的を達成するため
に本発明のオブジェクト指向プログラム開発方法とその
装置は、高速実行するコンパイル方式をとり、クラス単
位に動的リンク型クラスライブラリを管理し、プログラ
ムの動的リンク型実行形式オブジェクトファイルを生成
するものであり、また、動的リンク型実行形式オブジェ
クトファイルの実行が遅くなる場合や、実行する環境に
より実行されるクラスライブラリが異なる場合が考えら
れるが、動的リンク型実行形式オブジェクトファイルお
よび動的リンク型クラスライブラリから静的リンク型実
行形式オブジェクトファイルを生成する構成を有してい
る。
【0014】
【作用】本発明は上記した構成において、クラスライブ
ラリを動的リンク可能なライブラリとしてクラスライブ
ラリ管理部が管理することにより、プログラムを動的リ
ンクすることとなる。
【0015】
【実施例】以下本発明の一実施例について、図面を参照
しながら説明する。
【0016】図1に示すように本実施例のオブジェクト
指向プログラム開発装置は、ソースファイル作成/編集
部111、コンパイラ112、クラスライブラリ生成部
113、クラスライブラリ管理部114、動的リンク型
実行形式オブジェクトファイル生成部115、静的リン
ク型実行形式オブジェクトファイル生成部116と、プ
ログラムソースファイル101、クラス記述ファイル1
02、動的リンク型クラスライブラリ103、動的リン
ク型実行形式オブジェクトファイル104、静的リンク
型実行形式オブジェクトファイル105で構成されてい
る。
【0017】以下、図1および図2を用いて各構成要素
の関係とその動作を説明する。まず、図1を用いて動作
の概略を説明する。クラス内のメソッドのプログラムソ
ースファイル101をコンパイラ112でコンパイル
し、クラスライブラリ生成部113がプログラム実行時
に動的にリンクする動的リンク型クラスライブラリ10
3を生成する。この際、同時にクラスの属性(継承する
クラス、メソッド、内部変数など)を記述したクラス記
述ファイル102を生成する。生成したクラス記述ファ
イル102および動的リンク型クラスライブラリ103
はクラスライブラリ管理部114が管理する。プログラ
ムソースファイル101を作成/編集する際に、ソース
ファイル作成/編集部111はクラスライブラリ管理部
114からクラス記述ファイル102および動的リンク
型クラスライブラリ103の情報をもとにクラス/メソ
ッドの検索結果をクラスライブラリ管理部114から得
て、それを表示することにより作成/編集効率を高め
る。動的リンク型実行形式オブジェクトファイル104
は、クラスライブラリ管理部114からのクラス記述フ
ァイル102および動的リンク型クラスライブラリ10
3の情報をもとに動的リンク型実行形式オブジェクトフ
ァイル生成部115がプログラムのコンパイル結果から
生成する。
【0018】また、動的にリンクするとプログラム実行
が遅くなる場合や、実行する環境により実行されるクラ
スライブラリが異なる場合に対して、動的リンク型実行
形式オブジェクトファイル104および動的リンク型ク
ラスライブラリ103から、静的リンク型実行形式オブ
ジェクトファイル生成部116が静的リンク型実行形式
オブジェクトファイル105を生成する。
【0019】次に図2を用いてプログラムの実行方法を
説明する。図2に示すようにメソッド呼びだしを動的リ
ンクによって実行する方法は、動的リンク型実行形式オ
ブジェクトファイル104、動的リンク型クラスライブ
ラリ103、クラスライブラリ管理部114、メソッド
呼びだし121、クラスライブラリロード部122、メ
ソッド処理部123で構成されている。
【0020】まず、動的リンク型実行形式オブジェクト
ファイル104がロードされた直後には、メソッド呼び
だし121は経路131を介してクラスライブラリロー
ド部122を呼びだすようになっており、動的リンク型
クラスライブラリ103はロードされていない。メソッ
ド呼びだし121からクラスライブラリロード部122
が呼びだされると、クラスライブラリロード部122は
経路132を介してクラスライブラリ管理部114にク
ラスライブラリの検索を依頼し、動的リンク型クラスラ
イブラリ103を経路133を介してロードする。その
のち、メソッド呼びだし121の部分を直接メソッド処
理部123を呼びだすように変更してから、経路134
を介してメソッド処理部123へ制御を渡す。次回以降
のメソッド呼びだし121は経路135を介して直接メ
ソッド処理部123を呼びだすことになる。
【0021】動的リンク型実行形式オブジェクトファイ
ル104を静的リンク型オブジェクトファイルに変換す
るには、動的リンク型クラスライブラリ103を静的に
リンクし、メソッド呼びだし121が経路135を介し
て直接メソッド処理部123を呼びだすようにする。
【0022】以上のように本実施例によれば、クラス単
位に動的リンク型のクラスライブラリを生成するクラス
ライブラリ生成部113と、クラスライブラリの検索/
表示を行うクラスライブラリ管理部114と、動的リン
ク型実行形式オブジェクトファイルを生成する動的リン
ク型実行形式オブジェクトファイル生成部115を設け
ることにより、プログラム開発効率を高く、プログラム
が高速に動作するオブジェクト指向プログラム開発方法
とその装置を実現することができる。
【0023】
【発明の効果】以上の実施例から明らかなように本発明
によれば、クラス単位に動的リンク型クラスライブラリ
を生成するクラスライブラリ生成部と、クラスライブラ
リの検索/表示を行うクラスライブラリ管理部と、動的
リンク型実行形式オブジェクトファイル生成部を設ける
ことにより、プログラム開発効率が高く、プログラムが
高速に動作することが可能で、さらに動的リンク型実行
形式オブジェクトファイルと動的リンク型クラスライブ
ラリから静的リンク型実行形式オブジェクトファイルを
生成する静的リンク型実行形式オブジェクトファイル生
成部を設けることにより、動的リンク型実行形式オブジ
ェクトファイルの実行が遅くなる場合に対処するととも
にプログラムの保守性を高めた優れたオブジェクト指向
プログラム開発方法とその装置を実現できるものであ
る。
【図面の簡単な説明】
【図1】本発明の一実施例のオブジェクト指向プログラ
ム開発装置のブロック図
【図2】同実施例の動的リンク型実行形式オブジェクト
ファイルの実行の概略図
【図3】従来のオブジェクト指向プログラム開発装置の
例(1)のブロック図
【図4】従来のオブジェクト指向プログラム開発装置の
例(2)のブロック図
【符号の説明】
101 プログラムソースファイル 102 クラス記述ファイル 103 動的リンク型クラスライブラリ 104 動的リンク型実行形式オブジェクトファイル 105 静的リンク型実行形式オブジェクトファイル 111 ソースファイル作成/編集部 112 コンパイラ 113 クラスライブラリ生成部 114 クラスライブラリ管理部 115 動的リンク型実行形式オブジェクトファイル生
成部 116 静的リンク型実行形式オブジェクトファイル生
成部

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】クラス内のメソッドをコンパイラでコンパ
    イルしプログラム実行時に動的にリンクする動的リンク
    型クラスライブラリをクラス単位に生成するクラスライ
    ブラリ生成部と、クラスライブラリ群に対するクラス/
    メソッドの検索を行うクラスライブラリ管理部と、プロ
    グラムソースファイルおよびクラスライブラリから実行
    時に動的にクラスライブラリをリンクする動的リンク型
    実行形式オブジェクトファイルを生成する動的リンク型
    実行形式オブジェクトファイル生成部とを備えたオブジ
    ェクト指向プログラム開発装置。
  2. 【請求項2】動的リンク型実行形式オブジェクトファイ
    ルと動的リンク型クラスライブラリから、実行形式オブ
    ジェクトファイルを生成する際にクラスライブラリをリ
    ンクする静的リンク型実行形式オブジェクトファイルを
    生成する静的リンク型実行形式オブジェクトファイル生
    成部を備えた請求項1記載のオブジェクト指向プログラ
    ム開発装置。
  3. 【請求項3】クラス内のメソッドをコンパイラでコンパ
    イルしプログラム実行時に動的にリンクする動的リンク
    型クラスライブラリをクラス単位に生成し、クラスライ
    ブラリ群に対するクラス/メソッドの検索を行い、プロ
    グラムソースおよびクラスライブラリから実行時に動的
    にクラスライブラリをリンクする動的リンク型実行形式
    オブジェクトファイルを生成するオブジェクト指向プロ
    グラム開発方法。
  4. 【請求項4】動的リンク型実行形式オブジェクトファイ
    ルと動的リンク型クラスライブラリから、実行形式オブ
    ジェクトファイルを生成する際にクラスライブラリをリ
    ンクする静的リンク型実行形式オブジェクトファイルを
    生成する請求項3記載のオブシェクト指向プログラム開
    発方法。
JP23440692A 1992-09-02 1992-09-02 オブジェクト指向プログラム開発装置およびオブジェクト指向プログラム開発方法 Pending JPH0683597A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP23440692A JPH0683597A (ja) 1992-09-02 1992-09-02 オブジェクト指向プログラム開発装置およびオブジェクト指向プログラム開発方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP23440692A JPH0683597A (ja) 1992-09-02 1992-09-02 オブジェクト指向プログラム開発装置およびオブジェクト指向プログラム開発方法

Publications (1)

Publication Number Publication Date
JPH0683597A true JPH0683597A (ja) 1994-03-25

Family

ID=16970512

Family Applications (1)

Application Number Title Priority Date Filing Date
JP23440692A Pending JPH0683597A (ja) 1992-09-02 1992-09-02 オブジェクト指向プログラム開発装置およびオブジェクト指向プログラム開発方法

Country Status (1)

Country Link
JP (1) JPH0683597A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5764989A (en) * 1996-02-29 1998-06-09 Supercede, Inc. Interactive software development system
US5848274A (en) * 1996-02-29 1998-12-08 Supercede, Inc. Incremental byte code compilation system
US6067413A (en) * 1996-06-13 2000-05-23 Instantations, Inc. Data representation for mixed-language program development
US9933446B2 (en) 2008-03-04 2018-04-03 3M Innovative Properties Company Processing of biological growth media based on measured manufacturing characteristics
CN112527389A (zh) * 2020-12-15 2021-03-19 厦门海迈科技股份有限公司 一种国产处理器和操作系统适配Eclipse的方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5764989A (en) * 1996-02-29 1998-06-09 Supercede, Inc. Interactive software development system
US5848274A (en) * 1996-02-29 1998-12-08 Supercede, Inc. Incremental byte code compilation system
US6067413A (en) * 1996-06-13 2000-05-23 Instantations, Inc. Data representation for mixed-language program development
US9933446B2 (en) 2008-03-04 2018-04-03 3M Innovative Properties Company Processing of biological growth media based on measured manufacturing characteristics
CN112527389A (zh) * 2020-12-15 2021-03-19 厦门海迈科技股份有限公司 一种国产处理器和操作系统适配Eclipse的方法

Similar Documents

Publication Publication Date Title
US5586328A (en) Module dependency based incremental compiler and method
US5812851A (en) Compiler with generic front end and dynamically loadable back ends
US5535389A (en) Business process objects with associated attributes such as version identifier
US5872977A (en) Object-oriented method and apparatus for creating a makefile
US5606697A (en) Compiler system for language processing program
JPH08339304A (ja) 機械独立コードを含むプラットフォーム標準オブジェクト・ファイルを生成する方法および装置
CA2059577A1 (en) Object based system for software maintenance
US6446259B2 (en) System and method for generating an object structure at run time in an object-oriented programming language
Jahnke et al. Rewriting poor design patterns by good design patterns
CN113220326B (zh) 智能合约升级方法及区块链系统
JPH0683597A (ja) オブジェクト指向プログラム開発装置およびオブジェクト指向プログラム開発方法
JPH08263299A (ja) プログラム変換方法
CN113220327B (zh) 智能合约升级方法及区块链系统
Wiedmann A performance comparison between an APL interpreter and compiler
US20020073133A1 (en) Register allocation method and software development method for various execution environments and LSI for executing developed software
JP2718427B2 (ja) 大規模知識ベースにおけるデータアクセス方式
JP2002132502A (ja) 言語機能解釈による分散オブジェクト自動生成システム及び方法
CN113220277B (zh) 一种嵌入式服务化的开发方法及装置
JP3305767B2 (ja) ソート処理方法及びコンパイル方法
JPH0520093A (ja) モジユールのコンパイル方法およびコンパイル装置
Di Iorio et al. A Self-Applicable Partial Evaluator for ASM
JP2002163115A (ja) 仮想機械用プログラムのコンパイル対象指定方法、同プログラムのコンパイル対象判定方法、仮想機械実行方法、事前コンパイル方法、コンピュータ、記録媒体、及びプログラム製品
JPS63276127A (ja) ダイナミック命令生成方式
CN113535142A (zh) 自动生成Bean拷贝代码的方法及装置
Pinter et al. Partial compilation of REXX