JP2000132384A - Method for constructing class library - Google Patents
Method for constructing class libraryInfo
- Publication number
- JP2000132384A JP2000132384A JP10300258A JP30025898A JP2000132384A JP 2000132384 A JP2000132384 A JP 2000132384A JP 10300258 A JP10300258 A JP 10300258A JP 30025898 A JP30025898 A JP 30025898A JP 2000132384 A JP2000132384 A JP 2000132384A
- Authority
- JP
- Japan
- Prior art keywords
- class
- layer
- output
- file
- class library
- 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
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Stored Programmes (AREA)
Abstract
Description
【0001】[0001]
【発明の属する技術分野】本発明は、オブジェクト指向
プログラミングにおけるクラスライブラリの構築方法に
係り、特にファイル入出力方法に関する。[0001] 1. Field of the Invention [0002] The present invention relates to a method of constructing a class library in object-oriented programming, and more particularly to a method of inputting and outputting a file.
【0002】[0002]
【従来の技術】現在、コンピュータのソフトウェアプロ
グラム(以下プログラム)は新しいプログラミング方法
であるオブジェクト指向プログラミングで記述されるよ
うになりつつある。2. Description of the Related Art At present, computer software programs (hereinafter referred to as programs) are being described by a new programming method, object-oriented programming.
【0003】従来の構造化プログラミングでは、データ
の2次記憶(以下ファイル)への読み書きをプログラム
の関数で行っている。In conventional structured programming, data is read from and written to a secondary storage (hereinafter referred to as a file) by a function of a program.
【0004】オブジェクト指向プログラミングではデー
タは1つのクラスに収められており、クラスはプログラ
ムの実行中はインスタンスオブジェクト(以下オブジェ
クト)として存在し、オブジェクトをファイルへ入出力
することによってデータの保存・読込ができる。In object-oriented programming, data is contained in one class, and a class exists as an instance object (hereinafter, object) during execution of a program, and data is saved and read by inputting and outputting an object to and from a file. it can.
【0005】[0005]
【発明が解決しようとする課題】オブジェクト指向プロ
グラミングでは、前記の機能の他、継承という概念を用
いて、クラスを階層化することにより、プログラムの差
分開発が可能である。オブジェクト指向ではクラス群を
まとめたクラスライブラリとして1つのライブラリとし
て用意されることがある。In the object-oriented programming, in addition to the above-mentioned functions, the hierarchical development of classes using the concept of inheritance enables differential development of programs. In the object orientation, there is a case where a single library is prepared as a class library in which classes are put together.
【0006】すべての機能が1つのクラスライブラリで
充足している場合は問題が生じないが、新たな機能を付
加した大きな変更があった場合はそのクラスライブラリ
を大幅に変更しなくてはならない。これは、現在のクラ
スライブラリは階層化して多層のクラスライブラリ層と
して実現されていないためである。ここでは、ファイル
の入出力問題だけを扱うが、描画の階層化、その他の機
能の階層化についても同様のことが言える。[0006] When all functions are satisfied by one class library, no problem occurs, but when there is a major change in which a new function is added, the class library must be largely changed. This is because the current class library is not implemented as a multi-layered class library layer. Here, only the file input / output problem is dealt with, but the same can be said for the layering of drawing and the layering of other functions.
【0007】このクラスライブラリの複数階層化ができ
ていないため、オブジェクトに含まれるデータのファイ
ルへの入出力はうまく実現できない。問題は各階層のク
ラスが自身のデータの入出力ができないことである。そ
れは、ファイルの大きさ、出力順序、出力形式が不定だ
からである。Since the class library is not multi-layered, input / output of data contained in an object to / from a file cannot be realized well. The problem is that classes in each layer cannot input / output their own data. This is because the file size, output order, and output format are undefined.
【0008】現在、クラスライブラリの各階層を利用し
てアプリケーションをそれぞれ独立して利用する場合、
各クラスライブラリが独立してファイル入出力を持つこ
とができなければならない。At present, when each application is used independently using each layer of the class library,
Each class library must be able to independently have file I / O.
【0009】本発明の目的は、複数階層のクラスライブ
ラリを構築し、各々のクラスライブラリが独立してアプ
リケーションプログラムで利用できるようにしたクラス
ライブラリの構築方法を提供することにある。It is an object of the present invention to provide a method of constructing a class library in which a plurality of class libraries are constructed and each class library can be used independently by an application program.
【0010】[0010]
【課題を解決するための手段】本発明は、オブジェクト
指向プログラミングにおいて、クラスライブラリを複数
の階層とし実現し、前記各階層が独立してアプリケーシ
ョンを構築し、前記各階層は継承した下位のクラスが上
位クラスの同機能を呼び出し伝播させることによって差
分プログラミングを可能にし、前記各階層はオブジェク
トをブロック単位で出力し、ブロック単位で読み出し、
対応するオブジェクトを生成し、その生成したオブジェ
クト自体にデータの読み込みを行うことを特徴とする。According to the present invention, in an object-oriented programming, a class library is realized as a plurality of layers, each of the layers independently builds an application, and each of the layers has an inherited lower class. Differential programming is enabled by calling and propagating the same function of the upper class, and each layer outputs objects in block units, reads out objects in block units,
A corresponding object is generated, and data is read into the generated object itself.
【0011】[0011]
【発明の実施の形態】本実施形態では、複数階層のクラ
スライブラリを構築し、各々のクラスライブラリが独立
してアプリケーションプログラムで利用できるファイル
の入出力方法とするものである。以下、ファイルの出力
方法と入力方法を詳細に説明する。DESCRIPTION OF THE PREFERRED EMBODIMENTS In the present embodiment, a class library having a plurality of layers is constructed, and each class library is used as an input / output method of a file which can be used independently by an application program. Hereinafter, the output method and the input method of the file will be described in detail.
【0012】(1)複数階層でのファイル出力方法 図1に図形のクラスライブラリ層を示すように、抽象基
本層と基本図形層と複合図形層及びアプリケーション図
形操作層のように、複数のクラスライブラリ層を構築す
ることでファイルの入出力機能を満足し、アプリケーシ
ョンプログラムで各階層を利用し差分プログラムを実現
できるようにする。(1) Method of Outputting Files at Multiple Hierarchies As shown in FIG. 1, a class library layer of graphics, a plurality of class libraries such as an abstract basic layer, a basic graphic layer, a composite graphic layer, and an application graphic operation layer By constructing the layers, the file input / output function is satisfied, and the application program can use each layer to realize a difference program.
【0013】図2では基本図形クラスライブラリ層での
図形情報を出力した例を示す。図3では複合図形クラス
ライブラリ層での図形の接続情報を出力した例を示す。
図1を基にファイル入出力例を具体的に示したクラス階
層を図4に示す。FIG. 2 shows an example in which graphic information in the basic graphic class library layer is output. FIG. 3 shows an example in which connection information of a figure in the composite figure class library layer is output.
FIG. 4 shows a class hierarchy specifically showing an example of file input / output based on FIG.
【0014】図5はクラスライブラリ階層のの機能例を
示し、基本図形層は基本図形の描画や操作機能をもち、
複合図形層では基本図形と接続情報、被接続情報をも
つ。FIG. 5 shows an example of the function of the class library hierarchy. The basic graphic layer has a basic graphic drawing and operation function.
The composite figure layer has a basic figure, connection information, and connected information.
【0015】このようなクラスライブラリ層の構成によ
り、例えば、図6で示した図形をファイルへ出力した例
を図3に示している。FIG. 3 shows an example in which, for example, the graphic shown in FIG. 6 is output to a file by such a configuration of the class library layer.
【0016】また、差分プログラミングを実現するため
に、例えば、図6の図形を書く階層ごとに持つ情報のみ
を出力するようにし、上位階層のメンバ関数を呼び出し
ていく。具体例を図7で示す、図7では、図6に示す接
続された図形3つを出力する。この図形は複合図形クラ
スライブラリ層を用いて表現される。複合図形階層では
基本図形階層の図形の描画、図形の操作(移動、変形、
その他属性変更(色、線種、線の太さなど)など)に図
形の接続機能を付加したものであり、接続された図形は
1つの図形変形を移動しても接続情報を保持したまま、
他の図形も移動変形する。Further, in order to realize the differential programming, for example, only the information possessed for each hierarchy at which the graphic shown in FIG. 6 is written is output, and the member functions of the upper hierarchy are called. FIG. 7 shows a specific example. In FIG. 7, three connected figures shown in FIG. 6 are output. This graphic is represented using the composite graphic class library layer. In the complex figure hierarchy, drawing and manipulating the figure (moving, transforming,
Other attribute changes (color, line type, line thickness, etc.) are added with the function of connecting figures, and the connected figure retains the connection information even if one figure deformation is moved.
Other figures also move and deform.
【0017】図7と図4から、図6の出力例を説明する
と、ユーザがファイルへ保存を依頼すると、CComp
ositeComponentのオブジェクト4へ命令
がいく。CCompositeComponentはフ
ァイル特有の操作をもたないため、上位層のCBase
Componentへファイル出力依頼する。CBas
eComponentも同様にCGenericCom
ponentへ依頼する。CGenericCompo
nentは、すべての図形を管理するようになってお
り、すべてのオブジェクトへファイルへ出力するように
依頼する。図7中の(1)、(2)、(3)の順にオブ
ジェクト1、オブジェクト2、オブジェクトへファイル
出力を依頼する。Referring to FIGS. 7 and 4, the output example of FIG. 6 will be described. When the user requests to save to a file, CComp
The instruction is sent to the object4 of the siteComponent. Since CCompositeComponent has no file-specific operations, the upper-layer CBase
Request file output to Component. CBas
eComponent is also CGenericCom
request to the applicant. CGenericCompo
The “nent” manages all figures and requests all objects to output to a file. The file output is requested to the object 1, the object 2, and the object in the order of (1), (2), and (3) in FIG.
【0018】オブジェクト1は、まず、上位層のCRe
ctFigureへ上位のデータ出力を行うようファイ
ル出力を依頼する。その後、生成クラスであるCCom
positeSymbolのファイル出力メンバ関数に
よって、接続情報のみを出力する。依頼されたCRec
Figureは同様に上位層のCBaseFigure
へファイル出力を依頼し、図形の大きさ、位置などを情
報出力する。依頼されたCBaseFigureは同様
に上位層のCGenericFigureへファイル出
力を依頼し、CBaseFigure特有のデータを出
力する(この例では出力するデータがないが)。CGe
nericFigureはCBaseFigureと同
様に動作をする。上位層がないのでここで終わる。まっ
たく同様に、オブジェクト2、オブジェクト3の出力も
行われる。First, the object 1 is composed of the upper layer CRe.
ctFigure is requested to output a file so as to output higher-order data. After that, the generation class CCom
Only connection information is output by the file output member function of postSymbol. Requested CRec
Figure is the CBaseFigure of the upper layer similarly.
Requesting a file output to the server and outputting information on the size and position of the figure. The requested CBaseFigure similarly requests the upper layer CGeneric Figure to output a file, and outputs data specific to the CBaseFigure (though there is no data to be output in this example). CGe
NericFigure operates in the same manner as CBaseFigure. It ends here because there is no upper layer. In exactly the same manner, the output of the object 2 and the object 3 is performed.
【0019】(2)複数階層でのファイル入力方法 図1に示すような複数のクラスライブラリ層でファイル
の入出力機能を満足し、アプリケーションプログラムで
各階層を利用し差分プログラムを実現できるようにす
る。(2) Method of Inputting Files in Multiple Hierarchies A plurality of class library layers as shown in FIG. 1 satisfy the file input / output function, and an application program can use each hierarchy to realize a difference program. .
【0020】前記のファイル出力方法のオブジェクトの
データ出力では、各オブジェクトが個別にデータを出力
するが、ファイル入力の場合、1つのファイルとなりオ
ブジェクトが保存されない。そのため、図8に示すファ
イルからの図形生成手順では、ブロック単位で出力され
たファイルを切り出し、目的のオブジェクトを生成し、
そのオブジェクトへデータの入力を依頼する方法を取
る。In the data output of the object by the above-described file output method, each object outputs data individually. However, in the case of file input, the object becomes one file and the object is not stored. Therefore, in the procedure for generating a figure from a file shown in FIG. 8, a file output in blocks is cut out, a target object is generated,
Take the method of requesting the object to enter data.
【0021】ファイルの入力方法もファイル出力方法と
同様に、差分プログラミングが可能となるようにする。
図8に示すように、ユーザの依頼をオブジェクト4が上
位層へ依頼を伝播させていく。In the same manner as the file output method, the file input method enables differential programming.
As shown in FIG. 8, the object 4 propagates the request of the user to the upper layer.
【0022】図8において、CGenericFigu
reにブロック切り分けの機能があり、切り分けられた
ブロックの種別を判断し、オブジェクト4が対応したク
ラスのオブジェクトを生成し、そのオブジェクトにデー
タの設定を依頼する。CCompositeSymbo
lのオブジェクトを生成する場合、Cgeneric,
CBaseFigure、CrectFigureへ依
頼が伝播し、CrectFigureで図形情報を読み
込み、自身へ図形情報を設定する。さらにCCpomp
siteSymbolへ依頼し、CComositeS
ymbolは接続情報を読み込み、自身へ接続情報を設
定する。In FIG. 8, CGeneric FIG.
re has a function of separating blocks, determines the type of the separated blocks, generates an object of a class corresponding to the object 4, and requests the object to set data. CCompositeSymbo
When creating an object of l, Cgeneric,
The request is propagated to the CBaseFigure and the CorrectFigure, the graphic information is read by the CorrectFigure, and the graphic information is set to itself. Further CCpomp
Request to siteSymbol, CComositeS
The symbol reads connection information and sets the connection information to itself.
【0023】[0023]
【発明の効果】以上のとおり、本発明によれば、上位の
クラスライブラリを変更することなしに、新たなクラス
ライブラリを構築できる。また、上位のクラスライブラ
リから複数の派生したクラスライブラリを複数構築でき
る。As described above, according to the present invention, a new class library can be constructed without changing the upper class library. Further, a plurality of class libraries derived from the upper class library can be constructed.
【0024】ファイル出力方法では、オブジェクトのデ
ータを所属のクラスへ出力する機能を持たせて、継承し
たクラスは上位のクラスへ依頼するだけでよく、差分プ
ログラミングが実現できる。これにより下位層のクラス
ライブラリではプログラムのコード量を大幅に減らすこ
とができる。また、上位クラスの機能のデバッグ、試験
を減らすことが可能である。In the file output method, the function of outputting the data of the object to the class to which it belongs is provided, and the inherited class need only be requested to a higher class, so that differential programming can be realized. As a result, the amount of program code can be significantly reduced in the lower-layer class library. In addition, it is possible to reduce debugging and testing of the functions of the upper class.
【0025】ファイル入力方法では、ファイルの形式を
オブジェクトのブロック単位にし、管理クラスがオブジ
ェクトごとのブロックに切り分け、対応するクラスのオ
ブジェクトを生成し、改めてそのオブジェクトにブロッ
クの解析と、オブジェクトにデータ設定を行わせる。こ
の方法にすることによって、ファイル出力方法と同様に
オブジェクトのデータを所属のクラスへ出力する機能を
持たせて、継承したクラスは上位のクラスへ依頼するだ
けで良く、差分プログラミングが実現できる。In the file input method, the file format is set in object blocks, the management class divides the object into blocks, generates an object of the corresponding class, analyzes the block in the object again, and sets data in the object. Is performed. By using this method, the function of outputting the data of the object to the class to which it belongs is provided in the same manner as in the file output method, and the inherited class need only be requested to a higher class, and differential programming can be realized.
【図1】本発明の実施形態を示すクラスライブラリ層と
アプリケーションプログラム。FIG. 1 shows a class library layer and an application program according to an embodiment of the present invention.
【図2】実施形態における基本図形クラスライブラリ層
でのファイル出力例。FIG. 2 is an example of file output in a basic graphic class library layer according to the embodiment.
【図3】実施形態における複合図形クラスライブラリ層
でのファイル出力例。FIG. 3 is an example of file output in a composite graphic class library layer according to the embodiment.
【図4】実施形態におけるクラスライブラリ階層図。FIG. 4 is a class library hierarchy diagram in the embodiment.
【図5】実施形態におけるクラスライブラリ階層の機能
例。FIG. 5 is an exemplary function of a class library hierarchy according to the embodiment;
【図6】実施形態における図形出力例。FIG. 6 is an example of a graphic output in the embodiment.
【図7】実施形態における図形出力手順。FIG. 7 shows a graphic output procedure in the embodiment.
【図8】実施形態におけるファイルから図形生成の手順
例。FIG. 8 is an exemplary procedure for generating a figure from a file in the embodiment.
Claims (1)
て、 クラスライブラリを複数の階層とし実現し、前記各階層
が独立してアプリケーションを構築し、前記各階層は継
承した下位のクラスが上位クラスの同機能を呼び出し伝
播させることによって差分プログラミングを可能にし、
前記各階層はオブジェクトをブロック単位で出力し、ブ
ロック単位で読み出し、対応するオブジェクトを生成
し、その生成したオブジェクト自体にデータの読み込み
を行うことを特徴とするクラスライブラリの構築方法。In an object-oriented programming, a class library is realized as a plurality of layers, each of the layers independently builds an application, and each of the layers inherits a lower class which calls and propagates the same function of a higher class. To enable differential programming,
A method for constructing a class library, wherein each layer outputs objects in block units, reads out objects in block units, generates corresponding objects, and reads data into the generated objects themselves.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10300258A JP2000132384A (en) | 1998-10-22 | 1998-10-22 | Method for constructing class library |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10300258A JP2000132384A (en) | 1998-10-22 | 1998-10-22 | Method for constructing class library |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2000132384A true JP2000132384A (en) | 2000-05-12 |
Family
ID=17882628
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP10300258A Pending JP2000132384A (en) | 1998-10-22 | 1998-10-22 | Method for constructing class library |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2000132384A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102821917A (en) * | 2010-02-26 | 2012-12-12 | 库卡实验仪器有限公司 | Process module library and programming environment for programming a manipulator process |
-
1998
- 1998-10-22 JP JP10300258A patent/JP2000132384A/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102821917A (en) * | 2010-02-26 | 2012-12-12 | 库卡实验仪器有限公司 | Process module library and programming environment for programming a manipulator process |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Jacobson | Object-oriented development in an industrial environment | |
Brown et al. | The Architecture of Open Source Applications: Elegance, Evolution, and a Few Fearless Hacks | |
US8560602B2 (en) | Data sharing in a stream processing system | |
US20080010082A1 (en) | System and method for business process management | |
IL124916A (en) | Method and system for constructing software components | |
CN111818128B (en) | Container cloud-based modular simulation model operation control system, method and medium | |
KR20040096577A (en) | Component model for real time system control | |
US4964063A (en) | System and method for frame and unit-like symbolic access to knowledge represented by conceptual structures | |
Atkinson et al. | Modeling language extension in the enterprise systems domain | |
Tarpin-Bernard et al. | Frameworks and patterns for synchronous groupware: AMF-C approach | |
US11256486B2 (en) | Method and computer program product for an UI software application | |
CN113268888B (en) | Control and information model fusion method in industrial automation system | |
JP2004070810A (en) | Visual programming system, visual programming method, program for visual programming, and storage medium containing the program | |
JP2000132384A (en) | Method for constructing class library | |
Rando | XML-based interoperability in the integrated shipbuilding environment (ISE) | |
CN102841918A (en) | Method and device for processing binary system long-object fluidized data | |
Takeda et al. | MERA: Meta language for software engineering | |
Gervais et al. | Towards an ADL for designing agent-based systems | |
Mitchell et al. | DRIVE: an environment for the organised construction of user-interfaces to databases | |
Pellegrini et al. | Using GWorkflowDL for middleware-independent modeling and enactment of workflows | |
Pittman et al. | VUIMS: a visual user interface management system | |
Alia et al. | A middleware framework for the persistence and querying of java objects | |
CN106445487A (en) | Processing unit, software and method for controlling interactive components | |
JP2001256261A (en) | Component constitution information processing system | |
Duke et al. | Programming Paradigms in an Object‐Oriented Multimedia Standard |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040823 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070215 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070220 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20070626 |