[go: up one dir, main page]

JP2002268883A - プログラム、記録媒体、ソフトウエア生成方法並びに情報処理装置 - Google Patents

プログラム、記録媒体、ソフトウエア生成方法並びに情報処理装置

Info

Publication number
JP2002268883A
JP2002268883A JP2001070078A JP2001070078A JP2002268883A JP 2002268883 A JP2002268883 A JP 2002268883A JP 2001070078 A JP2001070078 A JP 2001070078A JP 2001070078 A JP2001070078 A JP 2001070078A JP 2002268883 A JP2002268883 A JP 2002268883A
Authority
JP
Japan
Prior art keywords
software component
software
generating
program
setting
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.)
Withdrawn
Application number
JP2001070078A
Other languages
English (en)
Inventor
Katsuhiro Yamamoto
勝弘 山本
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.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to JP2001070078A priority Critical patent/JP2002268883A/ja
Publication of JP2002268883A publication Critical patent/JP2002268883A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

(57)【要約】 【課題】 多様なライブラリを有する電子機器のソフト
ウエアを迅速に開発できるようにする。 【解決手段】 ビジュアル的にソフトウエアを作成する
ためのソフトウエア部品62を、さらにビジュアル的に
生成するためにアトム61が用意される。アトム61を
ビジュアル的に組み合わせることで、ソフトウエア部品
62が生成され、ソフトウエア62を、さらにビジュア
ル的に組み合わせることでリソース63が生成される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、プログラム、記録
媒体、ソフトウエア生成方法並びに情報処理装置に関
し、特に、電子機器に組み込まれるソフトウエアを迅
速、かつ効率的に開発することができるようにしたプロ
グラム、記録媒体、ソフトウエア生成方法並びに情報処
理装置に関する。
【0002】
【従来の技術】最近、コンピュータに関する技術が発展
し、AV(Audio Visual)機器、その他の電子機器にはコ
ンピュータが内蔵され、その電子機器の動作は、内蔵さ
れるコンピュータにより制御される。
【0003】コンピュータは、プログラム(ソフトウエ
ア)に基づいて動作するため、各電子機器のコンピュー
タには、ソフトウエアを組み込む必要がある。
【0004】ところで、最近、ソフトウエア部品をビジ
ュアル的に組み合わせることで、プログラムを作成す
る、いわゆるビジュアルプログラミングが行われるよう
になってきた。それらは、例えば、Windows, Unix, Lin
ux X-Window(いずれも商標)など、安定した(変化の
少ない)パーソナルコンピュータ等において利用される
OSやウインドウシステムのライブラリを対象として実現
されている。
【0005】図1は、このようなソフトウエア部品を用
いてソフトウエアを開発する従来の例を示している。
【0006】すなわち、最初にステップS1において、
予め用意されているソフトウエア部品をビジュアルに組
み合わせることで、プログラムコードが生成される。次
に、ステップS2において、ステップS1の処理で生成
されたプログラムコードをコンパイルし、ライブラリと
リンクさせ、実行コードが生成される。
【0007】
【発明が解決しようとする課題】電子機器は、例えば、
日本において製造され、各国に輸出され、使用される。
このような電子機器のコンピュータにより使用されるソ
フトウエアは、電子機器の機種、仕向け、時期などによ
り、異なったものとなる。その結果、それらの電子機器
に組み込まれるソフトウエアの開発には時間がかかり、
効率が悪い課題があった。
【0008】そこで、電子機器に組み込まれるコンピュ
ータのソフトウエアの開発にも、ソフトウエア部品をビ
ジュアル的に組み合わせる手法を利用することが考えら
れる。しかしながら、電子機器に組み込まれるコンピュ
ータのソフトウエアは、そのライブラリが多様なため、
ビジュアルプログラミングによりソフトウエアを開発す
るには、各電子機器の個々のライブラリに対応したソフ
トウエア部品を、その都度開発しなければならず、かえ
って効率が低下してしまう課題があった。
【0009】本発明は、このような状況に鑑みてなされ
たものであり、ライブラリが多様なソフトウエアでも、
迅速に、かつ効率的にソフトウエアを開発することがで
きうるようにするものである。
【0010】
【課題を解決するための手段】本発明の第1のプログラ
ムは、ビジュアルにソフトウエアを生成するための第1
のソフトウエア部品を第2のソフトウエア部品を用いて
生成するプログラムであって、第2のソフトウエア部品
は、第1のソフトウエア部品の基本的特性を設定する第
3のソフトウエア部品と、データタイプを設定する第4
のソフトウエア部品と、ユーザインターフェースを設定
する第5のソフトウエア部品とを含むことを特徴とす
る。
【0011】前記第2のソフトウエア部品は、ウインド
ウの修飾を設定する第6のソフトウエア部品をさらに含
むことができる。
【0012】前記第6のソフトウエア部品は、ウインド
ウの修飾として、アプライもしくはクローズの制御ボタ
ンを設定することができる。
【0013】前記第4のソフトウエア部品は、データタ
イプとして、データ構造、配列、または変数を設定する
ことができる。
【0014】前記第5のソフトウエア部品は、ユーザイ
ンターフェースとして、文字もしくは文字列の入出力、
リスト、チョイスボタン、またはチェックボタンのイン
ターフェースを設定することができる。
【0015】リソースからのデータをライブラリに対し
て供給する処理をインターフェースする部品をさらに含
むことができる。
【0016】本発明の第1の記録媒体は、ビジュアルに
ソフトウエアを生成するための第1のソフトウエア部品
を第2のソフトウエア部品を用いて生成するプログラム
であって、第2のソフトウエア部品は、第1のソフトウ
エア部品の基本的特性を設定する第3のソフトウエア部
品と、データタイプを設定する第4のソフトウエア部品
と、ユーザインターフェースを設定する第5のソフトウ
エア部品とを含むことを特徴とするコンピュータが読み
取り可能なプログラムが記録されている。
【0017】本発明の第1のソフトウエア生成方法は、
第2のソフトウエア部品は、第1のソフトウエア部品の
基本的特性を設定する第1のステップと、データタイプ
を設定する第2のステップと、ユーザインターフェース
を設定する第3のステップとを含むことを特徴とする。
【0018】本発明の第1の情報処理装置は、第2のソ
フトウエア部品は、第1のソフトウエア部品の基本的特
性を設定する第1の手段と、データタイプを設定する第
2の手段と、ユーザインターフェースを設定する第3の
手段とを備えることを特徴とする。
【0019】本発明の第2のプログラムは、第1のソフ
トウエア部品を用いてビジュアルにソフトウエアを生成
するプログラムであって、第1のソフトウエア部品をビ
ジュアルに生成するための第2のソフトウエア部品を組
み合わせる第1のステップと、第1のステップの処理に
おける第2のソフトウエア部品の組み合わせに基づい
て、第1のソフトウエア部品を生成する第2のステップ
と、第2のステップの処理において生成された第1のソ
フトウエア部品を用いてソフトウエアを生成する第3の
ステップとをコンピュータに実行させる。
【0020】前記第2のソフトウエア部品は、第1のソ
フトウエア部品の基本的特性を設定する第3のソフトウ
エア部品と、データタイプを設定する第4のソフトウエ
ア部品と、ユーザインターフェースを設定する第5のソ
フトウエア部品とを含むことができる。
【0021】本発明の第2の記録媒体は、第1のソフト
ウエア部品を用いてビジュアルにソフトウエアを生成す
るプログラムであって、第1のソフトウエア部品をビジ
ュアルに生成するための第2のソフトウエア部品を組み
合わせる第1のステップと、第1のステップの処理にお
ける第2のソフトウエア部品の組み合わせに基づいて、
第1のソフトウエア部品を生成する第2のステップと、
第2のステップの処理において生成された第1のソフト
ウエア部品を用いてソフトウエアを生成する第3のステ
ップとを含むことを特徴とするコンピュータが読み取り
可能なプログラムが記録されている。
【0022】本発明の第2のソフトウエア生成方法は、
第1のソフトウエア部品をビジュアルに生成するための
第2のソフトウエア部品を組み合わせる第1のステップ
と、第1のステップの処理における第2のソフトウエア
部品の組み合わせに基づいて、第1のソフトウエア部品
を生成する第2のステップと、第2のステップの処理に
おいて生成された第1のソフトウエア部品を用いてソフ
トウエアを生成する第3のステップとを含むことを特徴
とする。
【0023】本発明の第2の情報処理装置は、第1のソ
フトウエア部品をビジュアルに生成するための第2のソ
フトウエア部品を組み合わせる第1の手段と、第1の手
段による第2のソフトウエア部品の組み合わせに基づい
て、第1のソフトウエア部品を生成する第2の手段と、
第2の手段により生成された第1のソフトウエア部品を
用いてソフトウエアを生成する第3の手段とを備えるこ
とを特徴とする。
【0024】本発明の第1のプログラム、ソフトウエア
生成方法および情報処理装置においては、第1のソフト
ウエア部品の機本的特性、データタイプ、ユーザインタ
ーフェースが、第2のソフトウエア部品によりそれぞれ
設定される。
【0025】本発明の第2のプログラム、ソフトウエア
生成方法および情報処理装置においては、第2のソフト
ウエア部品がビジュアルに組み合わされ、その組み合わ
せに基づいて、第1のソフトウエア部品が生成され、生
成された第1のソフトウエア部品を用いてソフトウエア
がビジュアルに生成される。
【0026】
【発明の実施の形態】図2は、本発明が適用されるパー
ソナルコンピュータ1の構成例を表している。
【0027】図2において、CPU(Central Processing
Unit)21は、ROM(Read OnlyMemory)22に記憶
されているプログラム、または記憶部28からRAM(Ran
dom Access Memory)23にロードされたプログラム
に従って各種の処理を実行する。RAM23にはまた、CPU
21が各種の処理を実行する上において必要なデータな
ども適宜記憶される。
【0028】CPU21、ROM22、およびRAM23は、バ
ス24を介して相互に接続されている。このバス24に
はまた、入出力インターフェース25も接続されてい
る。
【0029】入出力インターフェース25には、キーボ
ード、マウスなどよりなる入力部26、CRT、LCDなどよ
りなるディスプレイ、並びにスピーカなどよりなる出力
部27、ハードディスクなどより構成される記憶部2
8、モデム、ターミナルアダプタなどより構成される通
信部29が接続されている。通信部29は、ネットワー
クを介しての通信処理を行う。
【0030】入出力インターフェース25にはまた、必
要に応じてドライブ30が接続され、磁気ディスク4
1、光ディスク42、光磁気ディスク43、或いは半導
体メモリ44などが適宜装着され、それらから読み出さ
れたコンピュータプログラムが、必要に応じて記憶部2
8にインストールされる。
【0031】本発明においては、ビジュアル的にソフト
ウエアを生成するためのソフトウエア部品(以下、第1
のソフトウエア部品と称する)を、ビジュアル的に生成
するソフトウエア部品(以下、第2のソフトウエア部品
と称する)として、アトムが用意される。このアトム
は、第1のソフトウエア部品をビジュアル的に生成する
ための部品である。そして、図3に示されるように、こ
のアトム61を用いて、ビジュアル的に第1のソフトウ
エア部品62が生成され、その第1のソフトウエア部品
62を用いて、さらにビジュアル的にデータテーブルで
あるリソース63が生成される。これらの処理がプログ
ラム(ソフトウエア)生成ツールとしてのプログラムで
あるところのビジュアルツール51により行われる。
【0032】さらに、図4に示されるように、本発明に
おいては、API(Application-Programming Interface)
71は、例えば、ボタンを含むGUI(Graphical User In
terface)のプログラムを生成する場合、そのボタンの
大きさ、位置、色、アクションといった特徴データを、
クラスライブラリ72に対して、リソース63で与える
仕様とされる。
【0033】API71がそのような仕様となっていない
場合には、図5に示されるように、リソース63とクラ
スライブラリ72との間に、両者の間のインタフェース
処理を実行する(リソースを得るAPIに沿って順次設定
する)ラッパ81が生成される。これにより、APIは、
その仕様を変更する必要がなくなり、かつ上述したよう
に、アトム61を用いてビジュアル的にリソース63を
生成することが可能となる。
【0034】アプリケーション73は、クラスライブラ
リ72を参照することで、各種の処理を実行する。
【0035】アトムとしては、基本的に図6に示される
ように、4種類が用意される。Wizard Atomは、第1の
ソフトウエア部品の一種としてのコンポーネント部品の
ベースとなるアトムであり、コンポーネント部品の基本
的特性を与える機能を有する。Wizard Atomは、後述す
るDataType Atomと協調して、データテーブル(リソー
ス)生成プログラムを含めたコンポーネントを実現する
コードを合成する。このWizard Atom としては、具体的
には、ComponentWizardが用意されている。このCompone
ntWizardは、コンポーネント部品(目的部品)を合成す
る機能を有する。
【0036】DataType Atomは、各種の変数を形成する
機能を有する。但し、このDataTypeAtomは、ユーザイン
タフェース(UI)を有しておらず、ユーザインタフェース
は、次のDataUI Atomにより設定される。
【0037】DataType Atomとしては、例えば、C/C
++言語等における構造体、あるいはJava(商標)等の
クラスで構成されるデータ構造を形成するDataTypeStru
ct、配列を形成するDataTypeArray、並びに1つの変数
を形成するDataTypeVariableが用意されている。
【0038】DataUI Atomは、DataType Atomにより設定
されたコンポーネント部品に対してユーザインタフェー
スを与える。このDataUI Atomは、継承クラスにより多
くのクラスを有する。具体的には、DataUI Atomとし
て、文字や文字列の入出力のユーザインタフェースを設
定するDataUIText、リストのユーザインタフェースを設
定するDataUIList、チョイスボタンのユーザインタフェ
ースを設定するDataUIChoice、並びにチェックボタン、
ユーザインタフェースを設定するDataUICheckが用意さ
れている。
【0039】WinUI Atomは、カスタマイズウインドウの
修飾など、補助的な機能を有するものであり、コンポー
ネント部品の生成には、直接的には関係しない。WinUI
Atomとしては、WinUISForm, WinUIContainer, WinUIDra
wArea, WinUISeparator, WinUILabel, WinUIPushBが用
意されている。WinUIDrawAreaは、ビットマップデータ
等のプレビューで使用される。WinUILabelは、カスタマ
イズウインドウ内の説明などで使用される。WinUIPushB
は、アプライボタンやクローズボタンなどの汎用制御ボ
タンを設定するのに使用される。
【0040】次に、図7のフローチャートを参照して、
ソフトウエアを開発する処理について説明する。この処
理は、上述した図3に示すビジュアルツール51により
実行される。
【0041】最初に、ステップS11において、ユーザ
からの操作に基づいて、ビジュアルツール51は、最終
的に作成されるべきソフトウエアとしてのプロダクトが
必要とする機能を満足するように、クラスライブラリを
作成する。次に、ステップS12において、ユーザから
の操作に基づいて、ビジュアルツール51は、APIが、
特徴データをリソースで与える仕様のものであるか否か
を判定する。APIが特徴データをリソースで与える仕様
のものでない場合には、ステップS13に進み、ユーザ
からの操作に基づいて、ビジュアルツール51は、ラッ
パを作成する処理を実行する。このラッパは、上述した
ように、リソースをAPI(大きさ、位置、色、アクショ
ンといった特徴データをリソースで与える仕様となって
いないAPI)に沿って、順次設定する仕様のものであ
る。
【0042】図8Aにラッパの例が示されている。この
ラッパは(x,y)で規定される座標において、幅w、
高さhのボタンが色colorで表示され、操作されたと
き、callbackで規定される処理を実行するものである。
この図8Aに示されるラッパ(クラス)は、オブジェク
ト化されると、図8Bに示されるようになる。
【0043】なお、図8A,Bにおけるデータ構造は、
例えば、図8Cに示される構造とされる。
【0044】ステップS12において、APIが特徴デー
タをリソースで与える仕様のものであると判定された場
合には、ステップS13のラッパ作成処理は、スキップ
される。
【0045】ステップS14において、ビジュアルツー
ル51は、ユーザのアトム61をビジュアルに組み合わ
せる操作に基づいて、ソフトウエア部品を生成する処理
を実行する。この処理の具体的例については、図11乃
至図18を参照して後述する。
【0046】次に、ステップS15において、ビジュア
ルツール51は、ステップS14で生成されたソフトウ
エア部品のユーザによるビジュアルな組み合わせの操作
に基づいて、リソース63を生成する。この処理の詳細
については、図9と図10のフローチャートを参照して
後述する。
【0047】次に、ステップS16において、ビジュア
ルツール51は、ステップS11の処理で生成されたラ
イブラリ72と、ステップS15の処理で生成されたリ
ソース63をコンパイルするとともに、リンクし、最終
的に目的とするソフトウエア(プロダクト)を生成す
る。
【0048】このように、予め用意されたアトム部品を
ビジュアルに組み合わせるだけで、ソフトウエア部品を
生成することができるので、そのソフトウエア部品をさ
らにビジュアルに組み合わせるだけで、AV機器などの電
子機器に組み込まれているコンピュータに利用するソフ
トウエアを、迅速かつ簡単に、生成することが可能とな
る。
【0049】図9は、ステップS15において、ビジュ
アルツール51により実行されるウィザード処理を表し
ている。この処理は、ComponentWizardで規定されてい
る特性に基づいて行われる。最初に、ステップS31に
おいて、ビジュアルツール51は、ウィザード(コード
生成)前処理を実行する。この処理により、後述するデ
ータ型処理やウインドウ型コード生成処理以外に、予め
生成しておくべき処理が実行される。
【0050】次に、ステップS32において、いま処理
対象とされているアトム(後述する図14乃至図18に
示されるように、ComponentWizard上に配置されている
アトム)が、データ型のアトムであるか否か、具体的に
は、DataType AtomまたはDataUI Atomであるか否かが判
定される。データ型のアトムである場合には、ステップ
S33に進み、データ型処理が実行される。このデータ
型処理の詳細については、図10のフローチャートを参
照して後述する。
【0051】ステップS32において、処理の対象とさ
れているアトムがデータ型のアトムではないと判定され
た場合、またはステップS33において、データ型処理
が実行された後、ステップS34に進み、ビジュアルツ
ール51は、処理対象されているアトムがウインドウ型
のアトムであるか否か、すなわちWinUI Atomであるか否
を判定する。処理対象とされているアトムが、ウインド
ウ型のアトムである場合には、ステップS35に進み、
ウインドウ型コード生成処理が実行される。すなわち、
このステップS35では、例えば、そのアトムがWinUIP
ushBである場合には、アプライボタンやクローズボタン
型の汎用制御ボタンを設定するために必要な処理が実行
される。
【0052】ステップS34において、処理対象とされ
ているアトムがウインドウ型のアトムではないと判定さ
れた場合、またはステップS35において、ウインドウ
型コード生成処理が実行された後、ステップS36に進
み、全てのアトムに関する処理が終了したか否かが判定
される。まだ終了していない場合には、ステップS32
に戻り、それ以降の処理が繰り返し実行される。
【0053】ステップS36において、全てのアトムの
処理が終了したと判定した場合、ステップS37に進
み、ウィザード後処理が実行される。このウィザード後
処理では、ComponentWizardに規定されている特性に基
づく処理で、データ型処理またはウインドウ型コード生
成処理を実行した後に行う必要がある処理が実行され
る。
【0054】次に、図10を参照して図9のステップS
33において実行されるデータ型処理の詳細について説
明する。最初に、ステップS51において、データ型前
処理が実行される。データ型前処理では、DataType Ato
mまたはDataUI Atomにおいて、予め設定しておくべき処
理が実行される。次に、ステップS52において、いま
処理対象とされているアトムが、データ型のアトムであ
るか否か、すなわち、DataType Atomであるか否かが判
定される。データ型のアトムである場合には、ステップ
S53に進み、再びこのデータ型処理のサブルーチンが
呼び出され、実行される。
【0055】ステップS52において、いま処理対象と
されているアトムがデータ型のアトムではないと判定さ
れた場合、または、ステップS53において、データ型
処理が完了したとき、ステップS54に進み、いま処理
対象とされているアトムがデータUI型のアトムであるか
否か、すなわち、DataUI Atomであるか否かが判定され
る。処理対象とされるアトムがデータUI型であると判定
された場合、ステップS55に進み、データUI型コード
生成処理が実行される。例えば、処理対象とされている
アトムが、DataUITextである場合には、文字、もしくは
文字列の入出力を設定するユーザインタフェースに関す
る処理がここで実行される。
【0056】ステップS54において、いま処理対象と
されているアトムがデータUI型ではないと判定された場
合、または、ステップS55において、データUI型コー
ド生成処理が完了した場合、ステップS56に進み、デ
ータ型コード生成後処理が実行される。すなわち、デー
タ型処理、またはデータUI型コード生成処理が行われた
後に実行されるべき処理がここで実行される。その後処
理は、図9のステップS33に戻り、さらにステップS
34に進み、上述したような処理が実行される。
【0057】次に、図11乃至図18を参照してアトム
に基づいて、ソフトウエア部品としてのコンポーネント
部品を生成する処理の例について説明する。
【0058】いま、これから作成するソフトウエアの構
造体は、図11に示されるようなものであるとする。
【0059】このコンポーネント部品は、Rectangleと
名付けられており、5個の変数を保持している。
【0060】最初に、スペックウインドウ(作成される
べきウインドウ)の外形の形状が、例えば、図12に示
されるように、ユーザにより指定される。最初に、各種
の表示やボタンを配置するウインドウの位置と大きさが
指定される。次に、そのウインドウ内に配置する表示部
や、ボタンの位置や形状が指定される。この例では、in
stance nameを表示する欄、xを表示する欄、yを表示
する欄、widthを表示する欄、heightを表示する欄、並
びにColorSchemeを表示する欄のそれぞれの形状が規定
される。さらに、CloseボタンおよびApplyボタンの形状
と位置が指定される。
【0061】次に、ビジュアルツール51が起動され、
図13のフローチャートに示されるように、規定したス
ペックウインドウをアトムで構成する処理が行われる。
最初に、ステップS71において、ビジュアルツール5
1は、ユーザの操作に基づいて、ComponentWizardを配
置する処理を実行する。図14は、このようにして、ビ
ジュアルツール51のエディットウインドウ101上
に、ComponentWizard102が配置された状態を示して
いる。
【0062】次に、ステップS72において、ビジュア
ルツール51は、図15に示されるように、ComponentW
izard102上に、DataTypeStruct111を配置する処
理をユーザからの指令に基づいて実行する。このDataTy
peStruct111は、図11におけるstruct Rectangleに
対応する。
【0063】次に、ステップS73において、ビジュア
ルツール51は、ユーザからの指令に基づいて、図16
に示されるように、DataTypeStruct111上に、4つの
変数x,y,width, heightに対応するDataTypeVariabl
e121乃至124を配置する処理を実行する。さらに
同様に、DataTypeStuct111上に、ColorShemeに対応
するDataTypeReference125を配置する処理が実行さ
れる。
【0064】なお、このようにアトムは、構造体のオー
ダが先の変数が背面からの順番になるように配置され
る。
【0065】次に、ステップS74において、ビジュア
ルツール51は、ユーザからの指令に基づいて、図17
に示されるように、DataTypeVariable121乃至124
上に、ユーザインタフェースを規定するアトムであるDa
taUITextSystem131乃至134を配置する処理を実行
する。さらに、DataTypeReference125上に、ユーザ
インタフェースを規定するアトムであるDataUIRefChoic
e135を配置する処理が実行される。さらに、図17
の例においては、ComponentWizard102上に、DataUIT
extSytem136を配置する処理が実行される。これは、
instance nameに対応するのであるが、それ自身は構造
体の変数ではないので、DataTypeStruct111の外部に
配置される。
【0066】さらに、ステップS75において、ビジュ
アルツール51は、ユーザからの指令に基づいて、図1
8に示されるように、ラベルを設定するアトムであるWi
nUILabel141をComponentWizard102上に配置する
処理、並びに、クローズボタンを設定するWinUIPushBSy
stem142と、アプライボタンを設定するWinUIPushBSy
tem143を配置する処理が実行される。
【0067】以上のようにして、アトムにより作成した
スペックウインドウのコードを生成する場合、ビジュア
ルツール51のボタンBuild103(図14)が操作さ
れ、その結果表示されたダイアログから「Component Co
deGen」(図示せぬ)が選択操作される。この操作が行
われたとき、ビジュアルツール51がRectangle.javaお
よびRectangleSuper.javaを自動的に生成し、同時にコ
ンパイルする。これにより、*.classが作成される。
【0068】以上のようにして、アトムを利用してビジ
ュアル的にソフトウエア部品が生成される。このソフト
ウエア部品を利用して、さらに最終的なプロダクトとし
てのソフトウエア(プログラム)がビジュアル的に生成
されることになる。
【0069】図19は、アトムの他の組み合わせの例を
表しており、図20は、それにより生成されるソフトウ
エア部品を表している。図19の例においては、String
Specification Windowという名称のComponentWizard1
61の上に、StringResという名称のDataTypeStruct1
62が配置され、さらにその上にResCoreという名称のD
ataTypeStruct163が配置され、さらにその上にRecta
ngleという名称のDataTypeStruct164が配置されてい
る。またさらに、RectangleというDataTypeStruct16
4の上には、WinUILabel165と、DataTypeVariavle1
66が配置されている。DataTypeVariavle166の上に
は、さらにDataUIText167が配置されている。
【0070】この構造は、図21で示される構造体で表
現されるものである。
【0071】ComponentWizard161は、Specification
Window objectであり、DataTypeStruct162乃至16
4、並びにDataTypeVariable166は、Syntax object
であり、WinUILabel165は、WindowUI objectであ
り、DataUIText167は、DataUI objectである。
【0072】図20におけるString Specification Win
dow181は、Specification Window objectであり、表
示「X value」182は、Window UI objectであり、表
示部183は、Data UI objectである。
【0073】この図20に示されるようなソフトウエア
部品を用いて、さらにビジュアル的にプロダクト(ソフ
トウエア)が生成される。以上においては、第1のソフ
トウエア部品を構成するコンポーネント部品を生成する
ようにしたが、第1のソフトウエア部品を生成するリフ
ァレンス部品を生成する場合にも、同様の処理が行われ
る。
【0074】上述した一連の処理は、ハードウエアによ
り実行させることもできるが、ソフトウエアにより実行
させることもできる。一連の処理をソフトウエアにより
実行させる場合には、そのソフトウエアを構成するプロ
グラムが、専用のハードウエアに組み込まれているコン
ピュータ、または、各種のプログラムをインストールす
ることで、各種の機能を実行することが可能な、例えば
汎用のパーソナルコンピュータなどに、ネットワークや
記録媒体からインストールされる。
【0075】この記録媒体は、図2に示すように、装置
本体とは別に、ユーザにプログラムを提供するために配
布される、プログラムが記録されている磁気ディスク4
1(フロッピディスクを含む)、光ディスク42(CD-R
OM(Compact Disk-Read OnlyMemory),DVD(Digital Versa
tile Disk)を含む)、光磁気ディスク43(MD(Mini
-Disk)を含む)、もしくは半導体メモリ44などより
なるパッケージメディアにより構成されるだけでなく、
装置本体に予め組み込まれた状態でユーザに提供され
る、プログラムが記録されているROM22や、記憶部2
8に含まれるハードディスクなどで構成される。
【0076】なお、本明細書において、記録媒体に記録
されるプログラムを記述するステップは、記載された順
序に沿って時系列的に行われる処理はもちろん、必ずし
も時系列的に処理されなくとも、並列的あるいは個別に
実行される処理をも含むものである。
【0077】また、本明細書において、システムとは、
複数の装置により構成される装置全体を表すものであ
る。
【0078】
【発明の効果】以上の如く、本発明の第1のプログラ
ム、記録媒体、ソフトウエア生成方法、並びに情報処理
装置によれば、第2のソフトウエア部品が、第1のソフ
トウエア部品の基本的特性を設定する第3のソフトウエ
ア部品、データタイプを設定する第4のソフトウエア部
品、並びにユーザインタフェースを設定する第5のソフ
トウエア部品を含むようにしたので、多様なライブラリ
が存在するソフトウエアを、迅速、かつ効率的に生成す
ることが可能となる。
【0079】また、本発明の第2のプログラム、記録媒
体、ソフトウエア生成方法、並びに情報処理装置によれ
ば、第2のソフトウエア部品を組み合わせることによ
り、第1のソフトウエア部品を生成し、第1のソフトウ
エア部品を用いてソフトウエアを生成するようにしたの
で、第1の発明と同様に、多様なライブラリが存在する
場合においても、ソフトウエアを、迅速、かつ効率的に
作成することが可能となる。
【図面の簡単な説明】
【図1】従来のソフトウエアの開発処理を説明するフロ
ーチャートである。
【図2】本発明を適用するパーソナルコンピュータの構
成を示すブロック図である。
【図3】本発明の基本的な処理を説明する図である。
【図4】リソースとAPIの関係を説明する図である。
【図5】リソースとAPIの関係を説明する図である。
【図6】アトムを説明する図である。
【図7】本発明のソフトウエア開発処理を説明するフロ
ーチャートである。
【図8】ラッパを説明する図である。
【図9】ウィザード処理を説明するフローチャートであ
る。
【図10】図9のステップS33のデータ型処理を説明
するフローチャートである。
【図11】構造体の例を示す図である。
【図12】スペックウインドウの例を示す図である。
【図13】コンポーネント部品の作成処理を説明するフ
ローチャートである。
【図14】図13のステップS71における処理を説明
する図である。
【図15】図13のステップS72における処理を説明
する図である。
【図16】図13のステップS73の処理を説明する図
である。
【図17】図13のステップS74の処理を説明する図
である。
【図18】図13のステップS75の処理を説明する図
である。
【図19】アトムの組み合わせを説明する図である。
【図20】図19のアトムの組み合わせにより生成され
るソフトウエア部品を示す図である。
【図21】図19のアトムで構成される構造体を説明す
る図である。
【符号の説明】
21 CPU, 23 RAM, 26 入力部, 28 記
憶部, 51 ビジュアルツール, 61 アトム,
62 ソフトウエア部品, 63 リソース,71 AP
I, 72 クラスライブラリ, 73 アプリケーシ
ョン

Claims (14)

    【特許請求の範囲】
  1. 【請求項1】 ビジュアルにソフトウエアを生成するた
    めの第1のソフトウエア部品を第2のソフトウエア部品
    を用いて生成するプログラムであって、 前記第2のソフトウエア部品は、 前記第1のソフトウエア部品の基本的特性を設定する第
    3のソフトウエア部品と、 データタイプを設定する第4のソフトウエア部品と、 ユーザインターフェースを設定する第5のソフトウエア
    部品とを含むことを特徴とするコンピュータが実行可能
    なプログラム。
  2. 【請求項2】 前記第2のソフトウエア部品は、ウイン
    ドウの修飾を設定する第6のソフトウエア部品をさらに
    含むことを特徴とする請求項1に記載のプログラム。
  3. 【請求項3】 前記第6のソフトウエア部品は、前記ウ
    インドウの修飾として、アプライもしくはクローズの制
    御ボタンを設定することを特徴とする請求項2に記載の
    プログラム。
  4. 【請求項4】 前記第4のソフトウエア部品は、前記デ
    ータタイプとして、データ構造、配列、または変数を設
    定することを特徴とする請求項1に記載のプログラム。
  5. 【請求項5】 前記第5のソフトウエア部品は、前記ユ
    ーザインターフェースとして、文字もしくは文字列の入
    出力、リスト、チョイスボタン、またはチェックボタン
    のインターフェースを設定することを特徴とする請求項
    1に記載のプログラム。
  6. 【請求項6】 リソースからのデータを前記ライブラリ
    に対して供給する処理をインターフェースする部品をさ
    らに含むことを特徴とする請求項1に記載のプログラ
    ム。
  7. 【請求項7】 ビジュアルにソフトウエアを生成するた
    めの第1のソフトウエア部品を第2のソフトウエア部品
    を用いて生成するプログラムであって、 前記第2のソフトウエア部品は、 前記第1のソフトウエア部品の基本的特性を設定する第
    3のソフトウエア部品と、 データタイプを設定する第4のソフトウエア部品と、 ユーザインターフェースを設定する第5のソフトウエア
    部品とを含むことを特徴とするコンピュータが読み取り
    可能なプログラムが記録されている記録媒体。
  8. 【請求項8】 ビジュアルにソフトウエアを生成するた
    めの第1のソフトウエア部品を第2のソフトウエア部品
    を用いて生成するソフトウエア生成方法において、 前記第2のソフトウエア部品は、 前記第1のソフトウエア部品の基本的特性を設定する第
    1のステップと、 データタイプを設定する第2のステップと、 ユーザインターフェースを設定する第3のステップとを
    含むことを特徴とするソフトウエア生成方法。
  9. 【請求項9】 ビジュアルにソフトウエアを生成するた
    めの第1のソフトウエア部品を生成する第2のソフトウ
    エア部品を生成する処理を行う情報処理装置において、 前記第2のソフトウエア部品は、 前記第1のソフトウエア部品の基本的特性を設定する第
    1の手段と、 データタイプを設定する第2の手段と、 ユーザインターフェースを設定する第3の手段とを備え
    ることを特徴とする情報処理装置。
  10. 【請求項10】 第1のソフトウエア部品を用いてビジ
    ュアルにソフトウエアを生成するプログラムであって、 前記第1のソフトウエア部品をビジュアルに生成するた
    めの第2のソフトウエア部品を組み合わせる第1のステ
    ップと、 前記第1のステップの処理における前記第2のソフトウ
    エア部品の組み合わせに基づいて、前記第1のソフトウ
    エア部品を生成する第2のステップと、 前記第2のステップの処理において生成された前記第1
    のソフトウエア部品を用いてソフトウエアを生成する第
    3のステップとをコンピュータに実行させるプログラ
    ム。
  11. 【請求項11】 前記第2のソフトウエア部品は、 前記第1のソフトウエア部品の基本的特性を設定する第
    3のソフトウエア部品と、 データタイプを設定する第4のソフトウエア部品と、 ユーザインターフェースを設定する第5のソフトウエア
    部品とを含むことを特徴とする請求項10に記載のプロ
    グラム。
  12. 【請求項12】 第1のソフトウエア部品を用いてビジ
    ュアルにソフトウエアを生成するプログラムであって、 前記第1のソフトウエア部品をビジュアルに生成するた
    めの第2のソフトウエア部品を組み合わせる第1のステ
    ップと、 前記第1のステップの処理における前記第2のソフトウ
    エア部品の組み合わせに基づいて、前記第1のソフトウ
    エア部品を生成する第2のステップと、 前記第2のステップの処理において生成された前記第1
    のソフトウエア部品を用いてソフトウエアを生成する第
    3のステップとを含むことを特徴とするコンピュータが
    読み取り可能なプログラムが記録されている記録媒体。
  13. 【請求項13】 第1のソフトウエア部品を用いてビジ
    ュアルにソフトウエアを生成するソフトウエア生成方法
    において、 前記第1のソフトウエア部品をビジュアルに生成するた
    めの第2のソフトウエア部品を組み合わせる第1のステ
    ップと、 前記第1のステップの処理における前記第2のソフトウ
    エア部品の組み合わせに基づいて、前記第1のソフトウ
    エア部品を生成する第2のステップと、 前記第2のステップの処理において生成された前記第1
    のソフトウエア部品を用いてソフトウエアを生成する第
    3のステップとを含むことを特徴とするソフトウエア生
    成方法。
  14. 【請求項14】 第1のソフトウエア部品を用いてビジ
    ュアルにソフトウエアを生成する処理を行う情報処理装
    置において、 前記第1のソフトウエア部品をビジュアルに生成するた
    めの第2のソフトウエア部品を組み合わせる第1の手段
    と、 前記第1の手段による前記第2のソフトウエア部品の組
    み合わせに基づいて、前記第1のソフトウエア部品を生
    成する第2の手段と、 前記第2の手段により生成された前記第1のソフトウエ
    ア部品を用いてソフトウエアを生成する第3の手段とを
    備えることを特徴とする情報処理装置。
JP2001070078A 2001-03-13 2001-03-13 プログラム、記録媒体、ソフトウエア生成方法並びに情報処理装置 Withdrawn JP2002268883A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001070078A JP2002268883A (ja) 2001-03-13 2001-03-13 プログラム、記録媒体、ソフトウエア生成方法並びに情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001070078A JP2002268883A (ja) 2001-03-13 2001-03-13 プログラム、記録媒体、ソフトウエア生成方法並びに情報処理装置

Publications (1)

Publication Number Publication Date
JP2002268883A true JP2002268883A (ja) 2002-09-20

Family

ID=18928008

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001070078A Withdrawn JP2002268883A (ja) 2001-03-13 2001-03-13 プログラム、記録媒体、ソフトウエア生成方法並びに情報処理装置

Country Status (1)

Country Link
JP (1) JP2002268883A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012252706A (ja) * 2011-06-03 2012-12-20 Samsung Electronics Co Ltd 画像形成装置のアプリケーション開発方法及び画像形成装置
WO2017138220A1 (ja) 2016-02-12 2017-08-17 ソニー株式会社 情報処理方法および情報処理装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012252706A (ja) * 2011-06-03 2012-12-20 Samsung Electronics Co Ltd 画像形成装置のアプリケーション開発方法及び画像形成装置
US9632767B2 (en) 2011-06-03 2017-04-25 Samsung Electronics Co., Ltd. Method and apparatus to develop an application of an image forming apparatus
WO2017138220A1 (ja) 2016-02-12 2017-08-17 ソニー株式会社 情報処理方法および情報処理装置

Similar Documents

Publication Publication Date Title
EP1536325B1 (en) Gui application development support device and method, and computer program
US7320120B2 (en) Pluggable notations and semantics for visual modeling elements
Myers User interface software tools
JP3755499B2 (ja) Guiアプリケーション開発支援装置、gui表示装置、および方法、並びにコンピュータ・プログラム
US8504930B1 (en) User interface substitution
US7216334B2 (en) Self-determining behavior node for use in creating a graphical program
US20060041858A1 (en) Form skin and design time WYSIWYG for .net compact framework
US20090055757A1 (en) Solution for automatically generating software user interface code for multiple run-time environments from a single description document
KR100975457B1 (ko) Gui 어플리케이션 개발 지원 장치, gui 어플리케이션 프로그램 생성 방법 및 컴퓨터 판독가능한 기록매체
US20070136684A1 (en) Dynamic resizing of dialogs
JPH10500512A (ja) グラフィカルユーザーインタフェースの形態及び動作のカスタマイズ方法及びシステム
EP0646863A2 (en) Positioning for multiple icons
JP2003186664A (ja) 装置プラットフォームに対するguiプレゼンテーションのダイナミックな適合
JP2003186665A (ja) 拡張性のあるグラフィカルユーザインターフェイスアーキテクチャ
US7721219B2 (en) Explicitly defining user interface through class definition
US5812805A (en) Method and editing system for setting tool button
US20100077329A1 (en) Method and system for creating a free-form visual user interface element
US20110126171A1 (en) Dynamic native editor code view facade
JP2001051842A (ja) オブジェクトの動作を強化するためにランタイム期間にアプリケーション内にコードを追加する方法
JPH09134272A (ja) マルチメディア・データを処理するオブジェクト指向方法及び装置
US7024633B1 (en) Methods and apparatus for creating and transforming graphical constructs
US5517604A (en) Data input/output process and design supporting process
JP2002268883A (ja) プログラム、記録媒体、ソフトウエア生成方法並びに情報処理装置
US20130080879A1 (en) Methods and apparatus providing document elements formatting
JPH06243223A (ja) 対話処理システム

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20080513