(57)【要約】【課題】  アプリケーションの開発環境の開発の負担を従来より低減することができるアプリケーション開発プログラムを提供する。【解決手段】  アプリケーション開発プログラムは、ＧＵＩによって利用者にアプリケーションを開発させるＧＵＩ開発手段、および、ＣＵＩによってＧＵＩ開発手段を制御するＣＵＩ用ＧＵＩ制御手段としてアプリケーション開発装置を機能させ、ＧＵＩ開発手段は、操作部の操作によって発生するイベントである入力イベントに応じて動作し（Ｓ１０４、Ｓ１３４およびＳ１０８）、ＣＵＩ用ＧＵＩ制御手段は、入力イベントをＣＵＩによって擬似的に発生させる（Ｓ１３２、Ｓ１３３およびＳ１３６）ことを特徴とする。【選択図】  図６
2014149585.tif 000002
【特許請求の範囲】
【請求項１】
ＧＵＩによって利用者にアプリケーションを開発させるＧＵＩ開発手段、および、ＣＵＩによって前記ＧＵＩ開発手段を制御するＣＵＩ用ＧＵＩ制御手段としてコンピューターを機能させ、
前記ＧＵＩ開発手段は、入力デバイスの操作によって発生するイベントである入力イベントに応じて動作し、
前記ＣＵＩ用ＧＵＩ制御手段は、前記入力イベントを前記ＣＵＩによって擬似的に発生させることを特徴とするアプリケーション開発プログラム。
【請求項２】
前記ＧＵＩは、情報が入力される入力フィールドを備えており、
前記ＣＵＩ用ＧＵＩ制御手段は、前記入力フィールドに対応する変数に前記ＣＵＩによって情報を入力することを特徴とする請求項１に記載のアプリケーション開発プログラム。
【請求項３】
前記ＧＵＩは、ウィザード画面を備えており、
前記ＣＵＩ用ＧＵＩ制御手段は、前記ウィザード画面を前記ＣＵＩによって非表示にすることを特徴とする請求項１または請求項２に記載のアプリケーション開発プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、利用者にアプリケーションを開発させるアプリケーション開発プログラムに関する。
【背景技術】
【０００２】
従来のアプリケーション開発プログラムとして、ＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）によって利用者にアプリケーションを開発させるアプリケーション開発プログラムが知られている（特許文献１参照。）。このアプリケーション開発プログラムは、別途用意される動作記録用のプログラムによって動作が記録されることによって、この動作を繰り返すことが可能である。すなわち、このアプリケーション開発プログラムは、別途用意される動作記録用のプログラムによってバッチ処理が実行されることが可能である。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−１８８２７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来のアプリケーション開発プログラムにおいては、バッチ処理が実行されるために動作記録用のプログラムが別途用意される必要があるので、アプリケーションの開発環境の開発の負担が大きいという問題がある。
【０００５】
そこで、本発明は、アプリケーションの開発環境の開発の負担を従来より低減することができるアプリケーション開発プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明のアプリケーション開発プログラムは、ＧＵＩによって利用者にアプリケーションを開発させるＧＵＩ開発手段、および、ＣＵＩ（Ｃｏｍｍａｎｄ  Ｌｉｎｅ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）によって前記ＧＵＩ開発手段を制御するＣＵＩ用ＧＵＩ制御手段としてコンピューターを機能させ、前記ＧＵＩ開発手段は、入力デバイスの操作によって発生するイベントである入力イベントに応じて動作し、前記ＣＵＩ用ＧＵＩ制御手段は、前記入力イベントを前記ＣＵＩによって擬似的に発生させることを特徴とする。
【０００７】
この構成により、本発明のアプリケーション開発プログラムは、ＧＵＩによって利用者にアプリケーションを開発させる開発環境に、この開発環境をＣＵＩによって制御する機能を追加するのみで実現することができるので、アプリケーションの開発環境の開発の負担を従来より低減することができる。また、本発明のアプリケーション開発プログラムは、ＧＵＩにおける入力イベントをＣＵＩによって擬似的に発生させるので、ＧＵＩにおける入力イベントに応じた動作をＣＵＩによって自動的に実現することができる。
【０００８】
また、本発明のアプリケーション開発プログラムにおいて、前記ＧＵＩは、情報が入力される入力フィールドを備えており、前記ＣＵＩ用ＧＵＩ制御手段は、前記入力フィールドに対応する変数に前記ＣＵＩによって情報を入力しても良い。
【０００９】
この構成により、本発明のアプリケーション開発プログラムは、ＧＵＩにおける入力フィールドに対応する変数にＣＵＩによって情報を入力するので、ＧＵＩにおける入力フィールドに情報が入力されたと同一の結果をＣＵＩによって自動的に実現することができる。
【００１０】
また、本発明のアプリケーション開発プログラムにおいて、前記ＧＵＩは、ウィザード画面を備えており、前記ＣＵＩ用ＧＵＩ制御手段は、前記ウィザード画面を前記ＣＵＩによって非表示にしも良い。
【００１１】
この構成により、本発明のアプリケーション開発プログラムは、ＧＵＩにおけるウィザード画面をＣＵＩによって非表示にするので、ＣＵＩによってウィザード画面に対する制御が自動的に実行されていることに対する利用者の違和感を低減することができる。
【発明の効果】
【００１２】
本発明のアプリケーション開発プログラムは、アプリケーションの開発環境の開発の負担を従来より低減することができる。
【図面の簡単な説明】
【００１３】
【図１】本発明の一実施の形態に係るアプリケーション開発装置のブロック図である。
【図２】図１に示すＧＵＩ開発手段によって表示されるＧＵＩである終了ボタンに対応するリスナーの一例を示す図である。
【図３】ＧＵＩによって利用者にアプリケーションを開発させるときの図１に示すアプリケーション開発装置の動作のフローチャートである。
【図４】図１に示すＧＵＩ開発手段によって起動されるメイン画面の一例を示す図である。
【図５】図１に示す表示部に表示されるウィザード画面の一例を示す図である。
【図６】ＣＵＩを利用してアプリケーションを開発するときの図１に示すアプリケーション開発装置の動作のフローチャートである。
【発明を実施するための形態】
【００１４】
以下、本発明の一実施の形態について、図面を用いて説明する。
【００１５】
まず、本実施の形態に係るアプリケーション開発装置１０の構成について説明する。
【００１６】
図１は、本実施の形態に係るアプリケーション開発装置１０のブロック図である。
【００１７】
図１に示すように、アプリケーション開発装置１０は、利用者による種々の操作が入力されるマウス、キーボードなどの入力デバイスである操作部１１と、種々の情報を表示するＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）などの表示デバイスである表示部１２と、外部の装置と通信を行う通信デバイスである通信部１３と、各種のデータを記憶しているＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）などの不揮発性の記憶装置である記憶部１４と、アプリケーション開発装置１０全体を制御する制御部１５とを備えている。アプリケーション開発装置１０は、例えばＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）などのコンピューターによって構成されている。
【００１８】
アプリケーション開発装置１０は、例えば、ＭＦＰ（Ｍｕｌｔｉｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）、プリンター専用機、コピー専用機、ＦＡＸ専用機などの画像形成装置のアプリケーションまたはＰＣなどのコンピューターのアプリケーションなど、ＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）を備えているアプリケーションを開発するための装置である。
【００１９】
記憶部１４は、アプリケーション開発装置１０によって実行されるアプリケーション開発プログラム１４ａを記憶している。アプリケーション開発プログラム１４ａは、アプリケーション開発装置１０の製造段階でアプリケーション開発装置１０にインストールされていても良いし、ＣＤ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）メモリーなどの記憶媒体からアプリケーション開発装置１０に追加でインストールされても良いし、ネットワーク上からアプリケーション開発装置１０に追加でインストールされても良い。
【００２０】
また、記憶部１４は、バッチ処理において使用される情報を格納しているＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）ファイルなどのバッチ用ファイル１４ｂを記憶している。
【００２１】
制御部１５は、例えば、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）と、プログラムおよび各種のデータを予め記憶しているＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）と、ＣＰＵの作業領域として用いられるＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）とを備えている。ＣＰＵは、ＲＯＭまたは記憶部１４に記憶されているプログラムを実行するようになっている。
【００２２】
制御部１５は、記憶部１４に記憶されているアプリケーション開発プログラム１４ａを実行することによって、ＧＵＩによって利用者にアプリケーションを開発させるＧＵＩ開発手段１５ａ、および、ＣＵＩ（Ｃｏｍｍａｎｄ  Ｌｉｎｅ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）によってＧＵＩ開発手段１５ａを制御するＣＵＩ用ＧＵＩ制御手段１５ｂとして機能する。
【００２３】
なお、ＧＵＩ開発手段１５ａは、操作部１１の操作によって発生するイベントである入力イベントに応じて動作する。すなわち、ＧＵＩ開発手段１５ａは、リスナー（Listener）またはコールバック関数と呼ばれている関数を実装している。
【００２４】
図２は、ＧＵＩ開発手段１５ａによって表示されるＧＵＩである終了ボタン（FinishButton）に対応するリスナーの一例を示す図である。
【００２５】
例えば、終了ボタンがクリックされた場合の処理は、通常、図２に示すような関数を呼び出す必要がある。図２に示すような関数を呼び出すためには、クラス“KeyEvent”のインスタンス“e”という入力値、すなわち、入力イベントが必要である。換言すると、このような入力イベントを擬似的に発生させれば、実際に終了ボタンがクリックされていなくても、終了ボタンがクリックされた場合の処理をＧＵＩ開発手段１５ａに実行させることができる。
【００２６】
次に、アプリケーション開発装置１０の動作について説明する。
【００２７】
まず、ＧＵＩによってのみアプリケーションのインストールパッケージを作成する場合のアプリケーション開発装置１０の動作について説明する。
【００２８】
図３は、ＧＵＩによって利用者にアプリケーションを開発させるときのアプリケーション開発装置１０の動作のフローチャートである。図４は、ＧＵＩ開発手段１５ａによって起動されるメイン画面２０の一例を示す図である。
【００２９】
図３に示すように、アプリケーション開発装置１０の制御部１５のＧＵＩ開発手段１５ａは、表示部１２にメイン画面２０（図４参照。）を表示する（Ｓ１０１）。
【００３０】
次いで、ＧＵＩ開発手段１５ａは、操作部１１を介した指示に応じてアプリケーションのソースコードを作成する（Ｓ１０２）。ここで、ＧＵＩ開発手段１５ａは、既に作成済みのソースコードを操作部１１を介した指示に応じて記憶部１４から読み出しても良い。
【００３１】
次いで、ＧＵＩ開発手段１５ａは、メイン画面２０のメニューからコンパイルの指示が操作部１１を介して入力された場合（Ｓ１０３でＹＥＳ）、Ｓ１０２において作成されたソースコードをコンパイルする（Ｓ１０４）。
【００３２】
次いで、ＧＵＩ開発手段１５ａは、メイン画面２０のメニューからインストールパッケージの作成の指示が操作部１１を介して入力された場合（Ｓ１０５でＹＥＳ）、インストールパッケージの作成に必要な情報が入力されるためのウィザード画面３０（図５参照。）を表示する（Ｓ１０６）。
【００３３】
図５は、表示部１２に表示されるウィザード画面３０の一例を示す図である。
【００３４】
図５において、ウィザード画面３０には、アプリケーションの名称が入力されるための入力フィールドであるテキストボックス３１と、アプリケーションのボタンのラベルが入力されるための入力フィールドであるテキストボックス３２と、アプリケーションのアイコンとして使用されるアイコンのパスが入力されるための入力フィールドであるテキストボックス３３と、アプリケーションのバージョンが入力されるための入力フィールドであるテキストボックス３４と、アプリケーションが販売または利用される地域の情報が選択操作によって入力されるための入力フィールドであるチェックボックス３５ａ〜３５ｇと、インストールパッケージの作成の実行が指示されるためのボタン３６と、インストールパッケージの作成の中止が指示されるためのボタン３７とが含まれている。
【００３５】
図３に示すように、ＧＵＩ開発手段１５ａは、ウィザード形式によって情報を受け付ける（Ｓ１０７）。すなわち、ＧＵＩ開発手段１５ａは、図５に示すウィザード画面３０のボタン３６が押された時点でテキストボックス３１〜３４およびチェックボックス３５ａ〜３５ｇに入力されている情報を受け付ける。なお、ＧＵＩ開発手段１５ａは、図５に示すウィザード画面３０のボタン３７が押された場合、図３に示す動作を終了する。
【００３６】
ＧＵＩ開発手段１５ａは、Ｓ１０４においてコンパイルされたファイルと、Ｓ１０７において受け付けられた情報とに基づいてインストールパッケージを作成して（Ｓ１０８）、図３に示す動作を終了する。
【００３７】
次に、ＣＵＩを利用してＧＵＩによってアプリケーションのインストールパッケージを作成する場合のアプリケーション開発装置１０の動作について説明する。
【００３８】
図６は、ＣＵＩを利用してアプリケーションを開発するときのアプリケーション開発装置１０の動作のフローチャートである。
【００３９】
図６に示すように、アプリケーション開発装置１０の制御部１５のＧＵＩ開発手段１５ａは、図３と同様のＳ１０１およびＳ１０２を実行する。
【００４０】
次いで、制御部１５のＣＵＩ用ＧＵＩ制御手段１５ｂは、ＣＵＩによってバッチ処理の指示が操作部１１を介して入力された場合（Ｓ１３１でＹＥＳ）、コンパイルをメイン画面２０のメニューから指示するための入力イベントをＣＵＩによって擬似的に発生させる（Ｓ１３２）。
【００４１】
次いで、ＧＵＩ開発手段１５ａは、Ｓ１３２において発生させられた入力イベントに応じて、Ｓ１０２において作成されたソースコードをコンパイルする（Ｓ１０４）。
【００４２】
次いで、ＣＵＩ用ＧＵＩ制御手段１５ｂは、インストールパッケージの作成をメイン画面２０のメニューから指示するための入力イベントをＣＵＩによって擬似的に発生させる（Ｓ１３３）。
【００４３】
次いで、ＣＵＩ用ＧＵＩ制御手段１５ｂは、図５に示すウィザード画面３０を非表示状態でＧＵＩ開発手段１５ａに立ち上げさせる（Ｓ１３４）。
【００４４】
次いで、ＣＵＩ用ＧＵＩ制御手段１５ｂは、Ｓ１３４において非表示状態で立ち上げられたウィザード画面３０のテキストボックス３１〜３４およびチェックボックス３５ａ〜３５ｇに対応する変数に、バッチ用ファイル１４ｂからの情報を、ＣＵＩによって入力する（Ｓ１３５）。ここで、ウィザード画面３０のテキストボックス３１〜３４およびチェックボックス３５ａ〜３５ｇに対応する変数は、テキストボックス３１〜３４およびチェックボックス３５ａ〜３５ｇの属性をPrivateではなく、Publicとしているので、外部の関数であるＣＵＩ用ＧＵＩ制御手段１５ｂから書き込みが可能となっている。
【００４５】
次いで、ＣＵＩ用ＧＵＩ制御手段１５ｂは、ウィザード画面３０の実行ボタンであるボタン３６を押すための入力イベントをＣＵＩによって擬似的に発生させる（Ｓ１３６）。
【００４６】
ＧＵＩ開発手段１５ａは、Ｓ１３６において発生させられた入力イベントに応じて、Ｓ１０４においてコンパイルされたファイルと、Ｓ１３５において入力された情報とに基づいてインストールパッケージを作成して（Ｓ１０８）、図６に示す動作を終了する。
【００４７】
以上に説明したように、アプリケーション開発プログラム１４ａは、ＧＵＩによって利用者にアプリケーションを開発させる開発環境（例えば、Microsoft Visual Studio（登録商標）、Eclipseなど）に、この開発環境をＣＵＩによって制御する機能をプラグインなどによって追加するのみで実現することができるので、アプリケーションの開発環境の開発の負担を従来より低減することができる。したがって、アプリケーション開発プログラム１４ａは、ＧＵＩによって利用者にアプリケーションを開発させる開発環境と、ＣＵＩによって利用者にアプリケーションを開発させる開発環境とを別々に開発する場合と比較しても、アプリケーションの開発環境の開発の負担を低減することができる。
【００４８】
また、アプリケーション開発プログラム１４ａは、ＧＵＩにおける入力イベントをＣＵＩによって擬似的に発生させる（Ｓ１３２、Ｓ１３３およびＳ１３６）ので、ＧＵＩにおける入力イベントに応じた動作をＣＵＩによって自動的に実現する（Ｓ１０４、Ｓ１３４およびＳ１０８）ことができる。
【００４９】
また、アプリケーション開発プログラム１４ａは、ＧＵＩにおける入力フィールドであるテキストボックス３１〜３４およびチェックボックス３５ａ〜３５ｇに対応する変数にＣＵＩによって情報を入力する（Ｓ１３５）ので、ＧＵＩにおける入力フィールドに情報が入力されたと同一の結果をＣＵＩによって自動的に実現することができる。
【００５０】
また、アプリケーション開発プログラム１４ａは、ＧＵＩにおけるウィザード画面３０をＣＵＩによって非表示にする（Ｓ１３４）ので、ＣＵＩによってウィザード画面３０に対する制御が自動的に実行されている（Ｓ１３５およびＳ１３６）ことに対する利用者の違和感を低減することができる。
【符号の説明】
【００５１】
１０  アプリケーション開発装置（コンピューター）
１１  操作部（入力デバイス）
１４ａ  アプリケーション開発プログラム
１５ａ  ＧＵＩ開発手段
１５ｂ  ＣＵＩ用ＧＵＩ制御手段
２０  メイン画面（ＧＵＩ）
３０  ウィザード画面（ＧＵＩ）
３１〜３４  テキストボックス（入力フィールド）
３５ａ〜３５ｇ  チェックボックス（入力フィールド）
【図１】
2014149585.tif 000003
【図２】
2014149585.tif 000004
【図３】
2014149585.tif 000005
【図４】
2014149585.tif 000006
【図５】
2014149585.tif 000007
【図６】
2014149585.tif 000008