説明

開発者インタフェース提供方法およびシステム

【課題】ロードされたプログラムを用いて開発者インタフェースを生成する方法およびシステムが開示される。
【解決手段】複数のコンポーネントから構成されるプログラム(1)をロードするステップと、前記ロードされたプログラム(1)を構成する複数のコンポーネントのうち少なくとも1つのコンポーネントを用いてプログラム(3)を生成するステップと、を含むことを特徴とする開発者インタフェース提供方法。前記ロードされたプログラム(1)およびコンポーネントを共有する1つ以上のプログラム(2)をロードするステップをさらに含んでもよい。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、開発者インタフェース提供方法およびシステムに関し、より具体的には、コミュニケーションバスを用いて登録されたコンポーネントの実行による開発者インタフェースを提供する方法およびシステムに関する。
【背景技術】
【0002】
ソフトウェアの開発において極めて強調されていることの1つがリユース(reuse)性である。開発を完了したソフトウェアを他の様々なソフトウェアにおいてリユースすることは追加開発を必要としないことによる費用減少、既に使用していることによる安定性の確保など、数多い長所がある。
【0003】
過去にソフトウェアのリユースは、コードまたはコンパイルが完了した状態のバイナリのリユースに限定されていた。プログラムの開発者は、他の開発者が製作したコードをリユースするためにソースファイルを用いて自身のプログラムと共にコンパイルしたり、プログラムファイル(exeファイル、dllファイル)をリユースするためにそのファイルをコピーして自身のプログラムでリユースしたりしていた。
【0004】
しかし、必要に応じて、コード自体やdllファイルに含まれる開発が完了したコードを超えて、既にメモリにロードされ、起動している他のプログラムをリユースすることができると、より優れたリユース性を提供することができる。
【0005】
例えば、メッセンジャープログラムが動作している状態において、ゲームプログラムがこのメッセンジャープログラムをリユースすると、ゲームプログラムがメッセンジャープログラムの中にあるログインしているユーザのユーザ情報を用いてゲームの中でログイン中のユーザ情報を活用し、ゲームの中に当該ユーザを招待することもできる。
【発明の概要】
【発明が解決しようとする課題】
【0006】
本発明の目的は、コミュニケーションバスを用いて登録された複数のコンポーネントの間のデータを共有する方法およびシステムを提供することにある。
【0007】
本発明の他の目的は、登録された複数のコンポーネントを実行しながら新規コンポーネントを追加する方法およびシステムを提供することにある。
【0008】
本発明の他の目的は、コミュニケーションバスを用いて登録中であるコンポーネントの登録を取り消す方法およびシステムを提供することにある。
【0009】
本発明の他の目的は、開発者インタフェースを活用して既にロードされたプログラムを構成するコンポーネントを用いて新しいプログラムを生成する方法およびシステムを提供することにある。
【課題を解決するための手段】
【0010】
本発明の一実施形態に係る開発者インタフェース提供方法は、複数のコンポーネントから構成されるプログラム(1)をロードするステップと、前記ロードされたプログラム(1)を構成する複数のコンポーネントのうち少なくとも1つのコンポーネントを用いてプログラム(3)を生成するステップとを含んでもよい。
【0011】
また、前記ロードされたプログラム(1)およびコンポーネントを共有する1つ以上のプログラム(2)をロードするステップをさらに含んでもよい。
【0012】
また、前記プログラム(3)を生成するステップは、前記プログラム(1)を構成する少なくとも1つのコンポーネントと前記プログラム(2)を構成する少なくとも1つのコンポーネントを用いて前記プログラム(3)を生成してもよい。
【0013】
また、前記ロードしたプログラム(1)およびプログラム(2)を構成する複数のコンポーネントを開発者インタフェースによって露出するステップをさらに含んでもよい。
【0014】
また、前記プログラム(3)を生成するステップは、前記開発者インタフェースによって露出されたプログラム(1)およびプログラム(2)を構成する複数のコンポーネントのうち少なくとも1つのコンポーネント選択が入力されるステップと、前記選択の入力された少なくとも1つのコンポーネントを結合して前記プログラム(3)を生成するステップとを含んでもよい。
【0015】
ここで、前記開発者インタフェースは、XMLベースの動的開発者インタフェースであってもよい。
【0016】
また、前記コンポーネントのタイプは、動的リンクライブラリおよび実行プログラムのうちいずれか1つであってもよい。
【0017】
また、本発明の一実施形態に係る開発者インタフェースシステムは、複数のコンポーネントから構成されるプログラム(1)をロードするプログラムロード部と、前記ロードされたプログラム(1)を構成する複数のコンポーネントのうち少なくとも1つのコンポーネントを用いてプログラム(3)を生成する生成部とを備えてもよい。
【0018】
また、前記プログラムロード部は、前記ロードされたプログラム(1)およびコンポーネントを共有する1つ以上のプログラム(2)をロードしてもよい。
【0019】
前記生成部は、前記プログラム(1)を構成する少なくとも1つのコンポーネントと前記プログラム(2)を構成する少なくとも1つのコンポーネントを用いて前記プログラム(3)を生成してもよい。
【0020】
また、前記ロードしたプログラム(1)およびプログラム(2)を構成する複数のコンポーネントを開発者インタフェースによって露出するインタフェース露出部をさらに備えてもよい。
【0021】
また、前記生成部は、前記開発者インタフェースによって露出されたプログラム(1)およびプログラム(2)を構成する複数のコンポーネントのうち少なくとも1つのコンポーネント選択が入力されるコンポーネント選択部と、前記選択の入力された少なくとも1つのコンポーネントを結合して前記プログラム(3)を生成するプログラム生成部とを備えてもよい。
【発明の効果】
【0022】
本発明の一実施形態によると、コミュニケーションバスを用いて開発者インタフェースシステムに登録された複数のコンポーネントの間のデータを共有することができる。
【0023】
本発明の一実施形態によると、開発者インタフェースシステムに登録された複数のコンポーネントを実行しながら新規コンポーネントを追加することができる。
【0024】
本発明の一実施形態によると、コミュニケーションバスを用いて開発者インタフェースシステムに登録したコンポーネントの登録を取り消すことができる。
【0025】
本発明の一実施形態によると、コミュニケーションバスを用いて開発者インタフェースシステムに登録したコンポーネントを調整することができる。
【図面の簡単な説明】
【0026】
【図1】本発明の一実施形態に係るコミュニケーションバスを用いてコンポーネントを登録する過程を説明するために提供される図である。
【図2】本発明の一実施形態に係る本発明の一実施形態に係る開発者インタフェースシステムの構成を示す図である。
【図3】本発明の一実施形態に係る開発者インタフェースシステムにおける生成部の細部構成を示す図である。
【図4】本発明の一実施形態によってロードされたプログラムを構成するコンポーネントを用いて新しいプログラムを生成する方法を説明するために提供されるフローチャートである。
【図5】本発明の一実施形態によりコミュニケーションバスを介して共有される複数のコンポーネントを用いて新しいプログラムを生成する方法を説明するためのフローチャートである。
【発明を実施するための形態】
【0027】
以下、本発明の実施形態を図面を参照しながら詳細に説明する。
【0028】
図1は、本発明の一実施形態に係るコミュニケーションバスを用いてコンポーネントを開発者インタフェースシステムに登録する過程を説明するために提供される図である。
【0029】
図1において、コンポーネント(1)30、コンポーネント(2)40、およびコンポーネント(4)60は、コミュニケーションバス20を用いて既に開発者インタフェースシステム10に登録された状態であり、コンポーネント(3)50を登録しようとする場合、開発者インタフェースシステム10は、コミュニケーションバス20を用いてコンポーネント(3)50を登録してもよい。
【0030】
ここで、開発者インタフェースシステム10は、コンポーネント(3)50が新規に登録されたことをコンポーネント(1)30、コンポーネント(2)40、およびコンポーネント(4)60に通知してもよい。これによって、コミュニケーションバス20を介して既に開発者インタフェースシステム10登録されたコンポーネント(1)30、コンポーネント(2)40、およびコンポーネント(4)60と、新規に開発者インタフェースシステム10に登録されたコンポーネント(3)50が互いに共有してもよい。一例として、コンポーネント(1)、コンポーネント(2)、およびコンポーネント(4)を構成している各データと新規に登録されたコンポーネント(3)50を構成しているデータとをコミュニケーションバス20を介して互いに共有してもよい。ここで、コンポーネント(1)30〜コンポーネント(4)60を構成するデータはXML形式のデータであってもよい。ここで、XML形式のデータは、DTD(Document Type Definition)を用いて定義される。
【0031】
図2は、本発明の一実施形態に係る開発者インタフェースシステムの構成を示す図である。
【0032】
図2に示すように、開発者インタフェースシステム200は、コンポーネント登録部210、コンポーネント共有部220、登録取消し部230、プログラムロード部240、および生成部250を備えてもよい。
【0033】
コンポーネント登録部210は、コミュニケーションバス(communication bus)300を用いて1つ以上のコンポーネントを開発者インタフェースシステム200に登録してもよい。ここで、コンポーネントは、クライアントで動作する複数のサービスに該当するプログラムを構成するモジュールである。すなわち、プログラムは、複数のコンポーネントで構成してもよい。ここで、プログラムはゲーム、メッセンジャー、ブログなどを含み、コンポーネントはゲーム、メッセンジャー、ブログなどのプログラムを構成するためのウェブページ、アバター、背景、テキスト、音楽、およびゲームアイテムなどのモジュールを備えてもよい。
【0034】
一例として、コンポーネント(1)410およびコンポーネント(2)420はプログラム(1)を構成するモジュールであり、コンポーネント(3)430およびコンポーネント(4)440はプログラム(2)を構成するモジュールであってもよい。ここで、コンポーネント(1)410およびコンポーネント(2)420は既に登録されており、コンポーネント(3)430を新規に登録する場合、コンポーネント登録部210は、コミュニケーションバス300を用いてコンポーネント(3)430を新規に登録してもよい。そして、コンポーネント登録部210は、コンポーネント(3)430が新規に登録されたことをコミュニケーションバス300を用いてコンポーネント(1)410、コンポーネント(2)420に通知してもよい。
【0035】
また、コンポーネント登録部210は、登録された少なくとも1つのコンポーネントが実行中である場合に、新規コンポーネントを追加してもよい。
【0036】
これによって、コンポーネント共有部220は、コミュニケーションバス300を用いて開発者インタフェースシステム200に登録されたコンポーネントを互いに共有してもよい。一例として、コンポーネント共有部220は、登録されたコンポーネントを構成するXML形式のデータをコミュニケーションバス300を介して共有してもよい。図2によると、コンポーネント共有部220は、1つのランチャー(launcher)でコンポーネント(1)410〜コンポーネント(4)440が有するデータをコミュニケーションバス300を用いて共有してもよい。このために、コンポーネント共有部220は、登録されたコンポーネントから受信したデータをコミュニケーションバス300を介して他のコンポーネントに送信してもよい。
【0037】
一例として、ゲームのプログラム(1)4100を構成するコンポーネント(1)410およびコンポーネント(2)420とメッセンジャー(messenger)のプログラム(2)4200を構成するコンポーネント(3)430およびコンポーネント(4)440がコミュニケーションバス300を介して共有される場合、開発者インタフェースシステム200は、メッセンジャーにユーザがログインしたことをゲーム上に表示してもよい。ここで、コンポーネント(3)430はメッセンジャーログ情報に該当するモジュールであり、コンポーネント(4)440はメッセンジャー顔文字、フォントに該当するデザインモジュールである場合、コンポーネント(3)430は、メッセンジャーに登録されたユーザがメッセンジャーにログインするたびにメッセンジャーログ情報をコミュニケーションバス300にブロードキャストしてもよい。これによって、コンポーネント(3)430は、ユーザがメッセンジャーにログインするたびにメッセンジャー情報をコンポーネント(1)410およびコンポーネント(2)420に送信する場合にコンポーネント(3)を修正する必要がない。
【0038】
そして、コンポーネント共有部220は、コミュニケーションバス300を介して受信したメッセンジャーログ情報をコミュニケーションバス300を用いてコンポーネント(1)410およびコンポーネント(2)420に送信してもよい。これによって、ゲーム上にメッセンジャーへとユーザがログインしたことに関する情報を表示してもよい。これによって、コンポーネント(1)410およびコンポーネント(2)420は、提供されるライブラリをそのまま用いてメッセンジャー情報を受信してもよい。すなわち、コンポーネント(1)410およびコンポーネント(2)420から構成されたプログラム(1)4100は、メッセンジャーログ情報を受信するためのプロトコルを設計したり、あるいはコードを開発したりしなくてもよい。
【0039】
他の例として、ゲームのプログラム(1)4100がコンポーネント(1)410およびコンポーネント(2)420に構成され、ブログのプログラム(3)とコンポーネントを共有する場合、コンポーネント(1)410は、動作しているゲームの現在の画面をキャプチャー(capture)してコミュニケーションバス300に送信してもよい。これによって、コンポーネント共有部220は、受信したキャプチャー画面をコミュニケーションバス300を用いてプログラム(3)を構成しているコンポーネントに送信してもよい。これによって、ブログにはキャプチャー画面がアップロードされてもよい。
【0040】
また他の例として、ゲームのプログラム(1)4100とウェブページのプログラム(4)を構成しているコンポーネントが共有される場合、プログラム(1)4100を構成するコンポーネント(1)410は、クエスト(quest)実行に関連するウェブページ要求データをコミュニケーションバス300に送信してもよい。これによって、コンポーネント共有部220は、コミュニケーションバス300を介してウェブページ要求データを受信し、受信したウェブページ要求データをコミュニケーションバス300を用いてプログラム4を構成するコンポーネントに送信してもよい。そして、コンポーネント共有部220は、プログラム(4)でコミュニケーションバス300を介して受信したウェブページをコミュニケーションバス300を用いてプログラム(1)4100を構成するコンポーネント(1)410およびコンポーネント(2)420のうち少なくとも1つに送信してもよい。これによって、ゲーム上にクエスト実行に関連するウェブページが表示されてもよい。
【0041】
登録取消し部230は、登録されている新規コンポーネントの登録取消しが要求されると、新規コンポーネントの登録を取り消してもよい。ここで、新規コンポーネントの登録が取消されても、実行されているコンポーネントについては実行を終了することなく引き続き実行される。
【0042】
プログラムロード部240は、登録されたコンポーネントを構成するプログラムをロードしてもよい。ここで、プログラムロード部240は、登録されたコンポーネントを構成するプログラムのうちいずれか1つのプログラムをロードした状態で、他の登録コンポーネントを構成しているプログラムをロードしてもよい。ここで、登録されたコンポーネントは、コミュニケーションバス300を介して共有されるため、プログラムロード部240は、コミュニケーションバス300を介して第1プログラム4100とコンポーネントを共有する1つ以上のプログラムをロードしてもよい。
【0043】
一例として、プログラムロード部240は、ゲームのプログラム(1)4100をロードしている状態で、メッセンジャーのプログラム(2)4200をロードしてもよい。ここで、プログラム(1)4100がメインに実行される状態において、プログラム(2)4200はプログラム(1)4100に従属して実行されてもよい。すなわち、プログラム(1)をメインとする1つのランチャーで複数のプログラムが実行されてもよい。
【0044】
生成部250は、ロードされたプログラムを構成するコンポーネントを用いて新しいプログラムを生成してもよい。一例として、プログラム(1)4100がロードされた場合、生成部250は、プログラム(1)4100を構成するコンポーネント(1)410およびコンポーネント(2)420のうち少なくとも1つを用いてプログラム(3)を生成してもよい。
【0045】
また、複数のプログラムがロードされた場合、生成部250は、複数のプログラムを構成するコンポーネントを用いて新しいプログラムを生成してもよい。
【0046】
一例として、プログラム(1)4100およびプログラム(2)4200がロードされた場合、生成部250は、プログラム(1)4100を構成する複数のコンポーネントおよびプログラム(2)4200を構成する複数のコンポーネントのいずれか1つ以上のコンポーネントを選択してもよい。そして、生成部250は、選択したコンポーネントを結合して新しいプログラム(3)を生成してもよい。
【0047】
ここで、生成部250は、プログラム(3)を生成するために求められる1つ以上の新規コンポーネントを生成してもよい。これによって、生成部250は、生成した新規コンポーネントと選択したコンポーネントとを結合してプログラム(3)を生成してもよい。
【0048】
以下では図3を参照して、ロードされたプログラムを構成するコンポーネントを用いて新しいプログラムを生成する過程について詳説する。
【0049】
図3は、本発明の一実施形態に係る開発者インタフェースシステムにおける生成部の細部構成を示す図である。
【0050】
図3を参照すると、生成部250は、インタフェース露出部251、コンポーネント選択部252、プログラム生成部253を備えてもよい。
【0051】
インタフェース露出部251は、ロードされた1つ以上のプログラムを構成するコンポーネントを開発者インタフェースによって開発者に露出してもよい。ここで、プログラムを構成するコンポーネントのタイプは、動的リンクライブラリ(Dynamic Linked Library:DLL)および実行プログラム(Execute Program:EXE)のうちのいずれか1つであってもよい。
【0052】
一例として、プログラムロード部240においてプログラム(1)4100をロードする場合、インタフェース露出部251は、プログラム(1)4100を構成する複数のコンポーネントを開発者インタフェースによって露出してもよい。すなわち、インタフェース露出部251は、開発者インタフェースによってコンポーネント(1)410およびコンポーネント(2)420を露出してもよい。
【0053】
他の例として、プログラムロード部240においてプログラム(1)およびプログラム(2)をロードする場合、インタフェース露出部251は、プログラム(1)4100およびプログラム(2)4200を構成する複数のコンポーネントを開発者インタフェースによって露出してもよい。すなわち、インタフェース露出部251は、開発者インタフェースによってコンポーネント(1)410〜コンポーネント(4)440を開発者に露出してもよい。
【0054】
コンポーネント選択部252は、開発者インタフェースによって露出されたコンポーネントのいずれか1つ以上のコンポーネントを選択してもよい。ここで、コンポーネント選択部252は、露出されたコンポーネントのうち新しいプログラム(3)を生成するために必要なコンポーネント選択を開発者から入力されてもよい。ここで、開発者インタフェースとしてXMLベースの動的開発者インタフェースを用いてもよい。
【0055】
一例として、コンポーネント(1)410はゲームのプログラム(1)4100のウェブ制御モジュールであり、コンポーネント(2)420はプログラム(1)4100の画面大きさ調整モジュールであり、コンポーネント(3)430はメッセンジャーのプログラム(2)4200のメッセンジャーログ情報に対するモジュールであり、コンポーネント(4)440はプログラム(2)4200のデザインモジュールである場合、コンポーネント選択部252は、開発者インタフェースによって露出されたコンポーネント(1)410〜コンポーネント(4)440のうち、コンポーネント(2)420およびコンポーネント(4)440の選択が入力されてもよい。
【0056】
これによって、プログラム生成部253は、選択されたコンポーネント(2)420とコンポーネント(4)440とを結合して新しいプログラム(3)を生成してもよい。
【0057】
図4は、本発明の一実施形態によってロードされたプログラムを構成するコンポーネントを用いて新しいプログラムを生成する方法を説明するためのフローチャートである。
【0058】
まず、プログラムロード部240は、開発者インターフェースシステムに登録されたコンポーネントを構成する1つ以上のプログラムをロードしてもよい。一例として、プログラム(1)4100およびプログラム(2)4200が登録された場合、プログラムロード部240は、プログラム(1)をロードしてもよい(S510)。ここで、プログラム(1)4100は、コンポーネント(1)410およびコンポーネント(2)420で構成され、プログラム(2)4200はコンポーネント(3)430およびコンポーネント(4)440で構成されてもよい。ここで、登録されたコンポーネント(1)410〜コンポーネント(4)440をコミュニケーションバス300を介して共有してもよい。
【0059】
次に、インタフェース露出部251は、ロードされたプログラムを構成するコンポーネントを開発者インタフェースによって開発者に露出してもよい(S520)。一例として、インタフェース露出部251は、プログラム(1)4100を構成するコンポーネント(1)410およびコンポーネント(2)420を開発者インタフェースによって露出されてもよい。
【0060】
そして、コンポーネント選択部252は、露出されたコンポーネントのうち1つ以上のコンポーネント選択を入力してもよい。一例として、コンポーネント選択部252は、露出されたコンポーネント1および2410,420のうち、コンポーネント(2)420の選択を開発者から入力されてもよい。
【0061】
これによって、プログラム生成部253は、選択されたコンポーネントを用いて新しいプログラムを生成してもよい。一例として、プログラム生成部253は、選択されたコンポーネント(2)420を用いて新しいプログラム(3)を生成してもよい(S530)。ここで、複数のコンポーネント選択が入力された場合、プログラム生成部253は、選択された複数のコンポーネントを結合して新しいプログラム(3)を生成してもよい。
【0062】
また、プログラム生成部253は、プログラム(3)を生成するために必要な1つ以上の新規コンポーネントを生成してもよい。これによって、プログラム生成部253は、生成した新規コンポーネントと選択されたコンポーネントとを結合して新しいプログラム(3)を生成してもよい。
【0063】
上記において、図4を参照して1つのプログラムがロードされた場合に開発者インタフェースによって新しいプログラムを生成する過程について説明した。以下では、図5を参照して、複数のプログラムがロードされた場合に開発者インタフェースによって新しいプログラムを生成する過程について説明する。
【0064】
図5は、本発明の一実施形態によってコミュニケーションバスを介して共有される複数のコンポーネントを用いて新しいプログラムを生成する方法を説明するためのフローチャートである。
【0065】
図5によると、プログラムロード部240は、登録されたコンポーネントにより構成される複数のプログラムをロードしてもよい。一例として、プログラム(1)4100がロードされた場合、プログラムロード部240は、プログラム(1)4100にプログラム(2)4200をロードしてもよい(S610)。すなわち、プログラムロード部240は、プログラム(1)4100をメインにして実行するランチャーでプログラム(2)4200を付加的に実行してもよい。
【0066】
これによって、インタフェース露出部251は、ロードされたプログラム(1)4100を構成しているコンポーネントとプログラム(2)4200を構成するコンポーネントとを開発者インタフェースによって露出してもよい(S620)。ここで、開発者インタフェースでは、XMLベースの動的開発者インタフェースを用いてもよい。
【0067】
一例として、インタフェース露出部251は、第1コンポーネント410〜第4コンポーネント440を開発者インタフェースによって開発者に露出してもよい。ここで、露出されるコンポーネントのタイプは、動的ライブラリ(DLL)および実行プログラム(EXE)のうちのいずれか1つであってもよい。
【0068】
次に、コンポーネント選択部252は、露出されたコンポーネントのうち1つ以上のコンポーネント選択が入力されてもよい。
【0069】
これによって、プログラム生成部252は、選択されたコンポーネントを用いて新しいプログラムを生成してもよい(S630)。一例として、コンポーネント(2)およびコンポーネント(3)が選択された場合、プログラム生成部252はコンポーネント(2)およびコンポーネント(3)を結合してプログラム(3)を生成してもよい。
【0070】
ここで、プログラム生成部252は、プログラム(3)を生成するために必要な新規コンポーネントを生成してもよい。これによって、プログラム生成部253は、生成した新規コンポーネントと選択されたコンポーネントとを結合して新しいプログラム(3)を生成してもよい。これによって、開発者が実行中であるプログラムにロードされたコンポーネントを制御する開発者インタフェースを提供し、開発者インタフェースによって選択されたコンポーネントを結合して新しいプログラムを生成することでコンポーネントをリユースすることができる。
【0071】
以上、上記に説明したように、プログラムを構成するコンポーネントは、ウェブ制御、画面大きさ調整、メッセンジャーログ情報、デザインに対するモジュールにより構成されるだけではなく、背景音楽の制御(music control)、画面のスキン(skin)変更、ボタン制御(button control)、テキスト制御(text control)、およびタブ制御(tab control)に対するモジュールにより構成されてもよい。これによって、開発者が希望するコンポーネントを選択して結合することにより、新しいプログラムを容易かつ迅速に生成することができる。
【0072】
一方、本発明の一実施形態に係る開発者インタフェースシステム200において、登録されたコンポーネントのデータを直列化(serialize)または暗号化し、コミュニケーションバス300を介してコンポーネント共有部220に送信してもよい。これによって、コンポーネント共有部220は、直列化または暗号化されたデータを他のコンポーネントに送信してもよい。ここで、コミュニケーションバス300を介して直列化または暗号化されたデータを受信したコンポーネントのデータの直列化を解除したり、あるいは解読することができる。
【0073】
他方において、以上では新規にコンポーネントを登録し、コミュニケーションバスを用いて登録されたコンポーネントと既に登録されたコンポーネントとの間でデータを共有する過程について説明したが、その他に、本発明の一実施形態に係る開発者インタフェースシステム200は、既に登録されたコンポーネントのうち、登録解除を要求したコンポーネントを解除するコンポーネント登録解除部をさらに備えてもよい。これによって、既に登録されたコンポーネントは、登録を解除されたコンポーネントとの間では登録解除後はデータを共有しないよう構成してもよい。
【0074】
本発明の実施形態に係る方法は、多様なコンピュータ手段を介して様々な処理を実行することができるプログラム命令の形態において実現され、コンピュータ読取可能な記録媒体に記録されてもよい。コンピュータ読取可能な媒体は、プログラム命令、データファイル、データ構造などの単独または組み合わせたものを含んでもよい。媒体に記録されるプログラム命令は、本発明の目的のために特別に設計されて構成されたものでもよく、コンピュータソフトウェア分野の技術を有する当業者にとって公知のものであり使用可能なものであってもよい。コンピュータ読取可能な記録媒体の例としては、ハードディスク、フロッピー(登録商標)ディスク及び磁気テープのような磁気媒体、CD−ROM、DVDのような光記録媒体、光ディスクのような光磁気媒体、及びROM、RAM、フラッシュメモリなどのようなプログラム命令を保存して実行するように特別に構成されたハードウェア装置が含まれる。プログラム命令の例としては、コンパイラによって生成されるような機械語コード(machine code)だけでなく、インタプリタなどを用いてコンピュータによって実行され得る高級言語コード(higher level code)を含む。上述したハードウェア装置は、本発明の動作を行うために1つ以上のソフトウェア階層で作動するように構成されてもよい。
【0075】
上述したように本発明を限定された実施形態と図面によって説明したが、本発明は、上記の実施形態に限定されることなく、本発明が属する分野における通常の知識を有する者であれば、このような実施形態から多様な修正及び変形が可能である。
【0076】
したがって、本発明の範囲は、開示された実施形態に限定されて定められるものではなく、特許請求の範囲だけではなく特許請求の範囲と均等なものなどによっても定められるものである。
【符号の説明】
【0077】
200 開発者インタフェースシステム
210 コンポーネント登録部
220 コンポーネント共有部
230 登録取消し部
240 プログラムロード部
250 生成部
251 インタフェース露出部
252 コンポーネント選択部
253 プログラム生成部
300 コミュニケーションバス

【特許請求の範囲】
【請求項1】
複数のコンポーネントから構成されるプログラム(1)をロードするステップと、
前記ロードされたプログラム(1)を構成する複数のコンポーネントのうち少なくとも1つのコンポーネントを用いてプログラム(3)を生成するステップと、
を含むことを特徴とする開発者インタフェース提供方法。
【請求項2】
前記ロードされたプログラム(1)およびコンポーネントを共有する1つ以上のプログラム(2)をロードするステップをさらに含むことを特徴とする請求項1に記載の開発者インタフェース提供方法。
【請求項3】
前記プログラム(3)を生成するステップは、前記プログラム(1)を構成する少なくとも1つのコンポーネントと前記プログラム(2)を構成する少なくとも1つのコンポーネントを用いて前記プログラム(3)を生成することを特徴とする請求項2に記載の開発者インタフェース提供方法。
【請求項4】
前記ロードしたプログラム(1)およびプログラム(2)を構成する複数のコンポーネントを開発者インタフェースによって露出するステップをさらに含むことを特徴とする請求項2に記載の開発者インタフェース提供方法。
【請求項5】
前記プログラム(3)を生成するステップは、
前記開発者インタフェースによって露出されたプログラム(1)およびプログラム(2)を構成する複数のコンポーネントのうち少なくとも1つのコンポーネント選択が入力されるステップと、
前記選択の入力された少なくとも1つのコンポーネントを結合して前記プログラム(3)を生成するステップと、
を含むことを特徴とする請求項4に記載の開発者インタフェース提供方法。
【請求項6】
前記開発者インタフェースは、XMLベースの動的開発者インタフェースであることを特徴とする請求項4に記載の開発者インタフェース提供方法。
【請求項7】
前記コンポーネントのタイプは、動的リンクライブラリおよび実行プログラムのうちいずれか1つであることを特徴とする請求項1に記載の開発者インタフェース提供方法。
【請求項8】
請求項1乃至請求項7のいずれかに記載の方法を実行するためのプログラムが記録されたコンピュータで読み出し可能な記録媒体。
【請求項9】
複数のコンポーネントから構成されるプログラム(1)をロードするプログラムロード部と、
前記ロードされたプログラム(1)を構成する複数のコンポーネントのうち少なくとも1つのコンポーネントを用いてプログラム(3)を生成する生成部と、
を備えることを特徴とする開発者インタフェースシステム。
【請求項10】
前記プログラムロード部は、前記ロードされたプログラム(1)およびコンポーネントを共有する1つ以上のプログラム(2)をロードすることを特徴とする請求項9に記載の開発者インタフェースシステム。
【請求項11】
前記生成部は、前記プログラム(1)を構成する少なくとも1つのコンポーネントと前記プログラム(2)を構成する少なくとも1つのコンポーネントを用いて前記プログラム(3)を生成することを特徴とする請求項10に記載の開発者インタフェースシステム。
【請求項12】
前記ロードしたプログラム(1)およびプログラム(2)を構成する複数のコンポーネントを開発者インタフェースによって露出するインタフェース露出部をさらに備えることを特徴とする請求項10に記載の開発者インタフェースシステム。
【請求項13】
前記生成部は、
前記開発者インタフェースによって露出されたプログラム(1)およびプログラム(2)を構成する複数のコンポーネントのうち少なくとも1つのコンポーネント選択が入力されるコンポーネント選択部と、
前記選択の入力された少なくとも1つのコンポーネントを結合して前記プログラム(3)を生成するプログラム生成部と、
を備えることを特徴とする請求項12に記載の開発者インタフェースシステム。
【請求項14】
前記開発者インタフェースは、XMLベースの動的開発者インタフェースであることを特徴とする請求項12に記載の開発者インタフェースシステム。
【請求項15】
前記コンポーネントのタイプは、動的リンクライブラリおよび実行プログラムのうちいずれか1つであることを特徴とする請求項10に記載の開発者インタフェースシステム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2012−14700(P2012−14700A)
【公開日】平成24年1月19日(2012.1.19)
【国際特許分類】
【出願番号】特願2011−147347(P2011−147347)
【出願日】平成23年7月1日(2011.7.1)
【出願人】(505205812)エヌエイチエヌ コーポレーション (408)
【Fターム(参考)】