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

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

Info

Publication number
JP2016076278A
JP2016076278A JP2016025119A JP2016025119A JP2016076278A JP 2016076278 A JP2016076278 A JP 2016076278A JP 2016025119 A JP2016025119 A JP 2016025119A JP 2016025119 A JP2016025119 A JP 2016025119A JP 2016076278 A JP2016076278 A JP 2016076278A
Authority
JP
Japan
Prior art keywords
component
program
components
unit
developer interface
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.)
Granted
Application number
JP2016025119A
Other languages
English (en)
Other versions
JP6267249B2 (ja
JP2016076278A5 (ja
Inventor
東 洙 李
Dong Su Lee
東 洙 李
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.)
NHN Corp
Original Assignee
NHN Entertainment 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 NHN Entertainment Corp filed Critical NHN Entertainment Corp
Publication of JP2016076278A publication Critical patent/JP2016076278A/ja
Publication of JP2016076278A5 publication Critical patent/JP2016076278A5/ja
Application granted granted Critical
Publication of JP6267249B2 publication Critical patent/JP6267249B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/36Software reuse

Abstract

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

Description

本発明は、開発者インタフェース提供方法およびシステムに関し、より具体的には、コミュニケーションバスを用いて登録されたコンポーネントの実行による開発者インタフェースを提供する方法およびシステムに関する。
ソフトウェアの開発において極めて強調されていることの1つがリユース(reuse)性である。開発を完了したソフトウェアを他の様々なソフトウェアにおいてリユースすることは追加開発を必要としないことによる費用減少、既に使用していることによる安定性の確保など、数多い長所がある。
過去にソフトウェアのリユースは、コードまたはコンパイルが完了した状態のバイナリのリユースに限定されていた。プログラムの開発者は、他の開発者が製作したコードをリユースするためにソースファイルを用いて自身のプログラムと共にコンパイルしたり、プログラムファイル(exeファイル、dllファイル)をリユースするためにそのファイルをコピーして自身のプログラムでリユースしたりしていた。
しかし、必要に応じて、コード自体やdllファイルに含まれる開発が完了したコードを超えて、既にメモリにロードされ、起動している他のプログラムをリユースすることができると、より優れたリユース性を提供することができる。
例えば、メッセンジャープログラムが動作している状態において、ゲームプログラムがこのメッセンジャープログラムをリユースすると、ゲームプログラムがメッセンジャープログラムの中にあるログインしているユーザのユーザ情報を用いてゲームの中でログイン中のユーザ情報を活用し、ゲームの中に当該ユーザを招待することもできる。
本発明の目的は、コミュニケーションバスを用いて登録された複数のコンポーネントの間のデータを共有する方法およびシステムを提供することにある。
本発明の他の目的は、登録された複数のコンポーネントを実行しながら新規コンポーネントを追加する方法およびシステムを提供することにある。
本発明の他の目的は、コミュニケーションバスを用いて登録中であるコンポーネントの登録を取り消す方法およびシステムを提供することにある。
本発明の他の目的は、開発者インタフェースを活用して既にロードされたプログラムを構成するコンポーネントを用いて新しいプログラムを生成する方法およびシステムを提供することにある。
本発明の一実施形態に係る開発者インタフェース提供方法は、複数のコンポーネントから構成されるプログラム(1)をロードするステップと、前記ロードされたプログラム(1)を構成する複数のコンポーネントのうち少なくとも1つのコンポーネントを用いてプログラム(3)を生成するステップとを含んでもよい。
また、前記ロードされたプログラム(1)およびコンポーネントを共有する1つ以上のプログラム(2)をロードするステップをさらに含んでもよい。
また、前記プログラム(3)を生成するステップは、前記プログラム(1)を構成する少なくとも1つのコンポーネントと前記プログラム(2)を構成する少なくとも1つのコンポーネントを用いて前記プログラム(3)を生成してもよい。
また、前記ロードしたプログラム(1)およびプログラム(2)を構成する複数のコンポーネントを開発者インタフェースによって露出するステップをさらに含んでもよい。
また、前記プログラム(3)を生成するステップは、前記開発者インタフェースによって露出されたプログラム(1)およびプログラム(2)を構成する複数のコンポーネントのうち少なくとも1つのコンポーネント選択が入力されるステップと、前記選択の入力された少なくとも1つのコンポーネントを結合して前記プログラム(3)を生成するステップとを含んでもよい。
ここで、前記開発者インタフェースは、XMLベースの動的開発者インタフェースであってもよい。
また、前記コンポーネントのタイプは、動的リンクライブラリおよび実行プログラムのうちいずれか1つであってもよい。
また、本発明の一実施形態に係る開発者インタフェースシステムは、複数のコンポーネントから構成されるプログラム(1)をロードするプログラムロード部と、前記ロードされたプログラム(1)を構成する複数のコンポーネントのうち少なくとも1つのコンポーネントを用いてプログラム(3)を生成する生成部とを備えてもよい。
また、前記プログラムロード部は、前記ロードされたプログラム(1)およびコンポーネントを共有する1つ以上のプログラム(2)をロードしてもよい。
前記生成部は、前記プログラム(1)を構成する少なくとも1つのコンポーネントと前記プログラム(2)を構成する少なくとも1つのコンポーネントを用いて前記プログラム(3)を生成してもよい。
また、前記ロードしたプログラム(1)およびプログラム(2)を構成する複数のコンポーネントを開発者インタフェースによって露出するインタフェース露出部をさらに備えてもよい。
また、前記生成部は、前記開発者インタフェースによって露出されたプログラム(1)およびプログラム(2)を構成する複数のコンポーネントのうち少なくとも1つのコンポーネント選択が入力されるコンポーネント選択部と、前記選択の入力された少なくとも1つのコンポーネントを結合して前記プログラム(3)を生成するプログラム生成部とを備えてもよい。
本発明の一実施形態によると、コミュニケーションバスを用いて開発者インタフェースシステムに登録された複数のコンポーネントの間のデータを共有することができる。
本発明の一実施形態によると、開発者インタフェースシステムに登録された複数のコンポーネントを実行しながら新規コンポーネントを追加することができる。
本発明の一実施形態によると、コミュニケーションバスを用いて開発者インタフェースシステムに登録したコンポーネントの登録を取り消すことができる。
本発明の一実施形態によると、コミュニケーションバスを用いて開発者インタフェースシステムに登録したコンポーネントを調整することができる。
本発明の一実施形態に係るコミュニケーションバスを用いてコンポーネントを登録する過程を説明するために提供される図である。 本発明の一実施形態に係る本発明の一実施形態に係る開発者インタフェースシステムの構成を示す図である。 本発明の一実施形態に係る開発者インタフェースシステムにおける生成部の細部構成を示す図である。 本発明の一実施形態によってロードされたプログラムを構成するコンポーネントを用いて新しいプログラムを生成する方法を説明するために提供されるフローチャートである。 本発明の一実施形態によりコミュニケーションバスを介して共有される複数のコンポーネントを用いて新しいプログラムを生成する方法を説明するためのフローチャートである。
以下、本発明の実施形態を図面を参照しながら詳細に説明する。
図1は、本発明の一実施形態に係るコミュニケーションバスを用いてコンポーネントを開発者インタフェースシステムに登録する過程を説明するために提供される図である。
図1において、コンポーネント(1)30、コンポーネント(2)40、およびコンポーネント(4)60は、コミュニケーションバス20を用いて既に開発者インタフェースシステム10に登録された状態であり、コンポーネント(3)50を登録しようとする場合、開発者インタフェースシステム10は、コミュニケーションバス20を用いてコンポーネント(3)50を登録してもよい。
ここで、開発者インタフェースシステム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)を用いて定義される。
図2は、本発明の一実施形態に係る開発者インタフェースシステムの構成を示す図である。
図2に示すように、開発者インタフェースシステム200は、コンポーネント登録部210、コンポーネント共有部220、登録取消し部230、プログラムロード部240、および生成部250を備えてもよい。
コンポーネント登録部210は、コミュニケーションバス(communication bus)300を用いて1つ以上のコンポーネントを開発者インタフェースシステム200に登録してもよい。ここで、コンポーネントは、クライアントで動作する複数のサービスに該当するプログラムを構成するモジュールである。すなわち、プログラムは、複数のコンポーネントで構成してもよい。ここで、プログラムはゲーム、メッセンジャー、ブログなどを含み、コンポーネントはゲーム、メッセンジャー、ブログなどのプログラムを構成するためのウェブページ、アバター、背景、テキスト、音楽、およびゲームアイテムなどのモジュールを備えてもよい。
一例として、コンポーネント(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に通知してもよい。
また、コンポーネント登録部210は、登録された少なくとも1つのコンポーネントが実行中である場合に、新規コンポーネントを追加してもよい。
これによって、コンポーネント共有部220は、コミュニケーションバス300を用いて開発者インタフェースシステム200に登録されたコンポーネントを互いに共有してもよい。一例として、コンポーネント共有部220は、登録されたコンポーネントを構成するXML形式のデータをコミュニケーションバス300を介して共有してもよい。図2によると、コンポーネント共有部220は、1つのランチャー(launcher)でコンポーネント(1)410〜コンポーネント(4)440が有するデータをコミュニケーションバス300を用いて共有してもよい。このために、コンポーネント共有部220は、登録されたコンポーネントから受信したデータをコミュニケーションバス300を介して他のコンポーネントに送信してもよい。
一例として、ゲームのプログラム(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)を修正する必要がない。
そして、コンポーネント共有部220は、コミュニケーションバス300を介して受信したメッセンジャーログ情報をコミュニケーションバス300を用いてコンポーネント(1)410およびコンポーネント(2)420に送信してもよい。これによって、ゲーム上にメッセンジャーへとユーザがログインしたことに関する情報を表示してもよい。これによって、コンポーネント(1)410およびコンポーネント(2)420は、提供されるライブラリをそのまま用いてメッセンジャー情報を受信してもよい。すなわち、コンポーネント(1)410およびコンポーネント(2)420から構成されたプログラム(1)4100は、メッセンジャーログ情報を受信するためのプロトコルを設計したり、あるいはコードを開発したりしなくてもよい。
他の例として、ゲームのプログラム(1)4100がコンポーネント(1)410およびコンポーネント(2)420に構成され、ブログのプログラム(3)とコンポーネントを共有する場合、コンポーネント(1)410は、動作しているゲームの現在の画面をキャプチャー(capture)してコミュニケーションバス300に送信してもよい。これによって、コンポーネント共有部220は、受信したキャプチャー画面をコミュニケーションバス300を用いてプログラム(3)を構成しているコンポーネントに送信してもよい。これによって、ブログにはキャプチャー画面がアップロードされてもよい。
また他の例として、ゲームのプログラム(1)4100とウェブページのプログラム(4)を構成しているコンポーネントが共有される場合、プログラム(1)4100を構成するコンポーネント(1)410は、クエスト(quest)実行に関連するウェブページ要求データをコミュニケーションバス300に送信してもよい。これによって、コンポーネント共有部220は、コミュニケーションバス300を介してウェブページ要求データを受信し、受信したウェブページ要求データをコミュニケーションバス300を用いてプログラム4を構成するコンポーネントに送信してもよい。そして、コンポーネント共有部220は、プログラム(4)でコミュニケーションバス300を介して受信したウェブページをコミュニケーションバス300を用いてプログラム(1)4100を構成するコンポーネント(1)410およびコンポーネント(2)420のうち少なくとも1つに送信してもよい。これによって、ゲーム上にクエスト実行に関連するウェブページが表示されてもよい。
登録取消し部230は、登録されている新規コンポーネントの登録取消しが要求されると、新規コンポーネントの登録を取り消してもよい。ここで、新規コンポーネントの登録が取消されても、実行されているコンポーネントについては実行を終了することなく引き続き実行される。
プログラムロード部240は、登録されたコンポーネントを構成するプログラムをロードしてもよい。ここで、プログラムロード部240は、登録されたコンポーネントを構成するプログラムのうちいずれか1つのプログラムをロードした状態で、他の登録コンポーネントを構成しているプログラムをロードしてもよい。ここで、登録されたコンポーネントは、コミュニケーションバス300を介して共有されるため、プログラムロード部240は、コミュニケーションバス300を介して第1プログラム4100とコンポーネントを共有する1つ以上のプログラムをロードしてもよい。
一例として、プログラムロード部240は、ゲームのプログラム(1)4100をロードしている状態で、メッセンジャーのプログラム(2)4200をロードしてもよい。ここで、プログラム(1)4100がメインに実行される状態において、プログラム(2)4200はプログラム(1)4100に従属して実行されてもよい。すなわち、プログラム(1)をメインとする1つのランチャーで複数のプログラムが実行されてもよい。
生成部250は、ロードされたプログラムを構成するコンポーネントを用いて新しいプログラムを生成してもよい。一例として、プログラム(1)4100がロードされた場合、生成部250は、プログラム(1)4100を構成するコンポーネント(1)410およびコンポーネント(2)420のうち少なくとも1つを用いてプログラム(3)を生成してもよい。
また、複数のプログラムがロードされた場合、生成部250は、複数のプログラムを構成するコンポーネントを用いて新しいプログラムを生成してもよい。
一例として、プログラム(1)4100およびプログラム(2)4200がロードされた場合、生成部250は、プログラム(1)4100を構成する複数のコンポーネントおよびプログラム(2)4200を構成する複数のコンポーネントのいずれか1つ以上のコンポーネントを選択してもよい。そして、生成部250は、選択したコンポーネントを結合して新しいプログラム(3)を生成してもよい。
ここで、生成部250は、プログラム(3)を生成するために求められる1つ以上の新規コンポーネントを生成してもよい。これによって、生成部250は、生成した新規コンポーネントと選択したコンポーネントとを結合してプログラム(3)を生成してもよい。
以下では図3を参照して、ロードされたプログラムを構成するコンポーネントを用いて新しいプログラムを生成する過程について詳説する。
図3は、本発明の一実施形態に係る開発者インタフェースシステムにおける生成部の細部構成を示す図である。
図3を参照すると、生成部250は、インタフェース露出部251、コンポーネント選択部252、プログラム生成部253を備えてもよい。
インタフェース露出部251は、ロードされた1つ以上のプログラムを構成するコンポーネントを開発者インタフェースによって開発者に露出してもよい。ここで、プログラムを構成するコンポーネントのタイプは、動的リンクライブラリ(Dynamic Linked Library:DLL)および実行プログラム(Execute Program:EXE)のうちのいずれか1つであってもよい。
一例として、プログラムロード部240においてプログラム(1)4100をロードする場合、インタフェース露出部251は、プログラム(1)4100を構成する複数のコンポーネントを開発者インタフェースによって露出してもよい。すなわち、インタフェース露出部251は、開発者インタフェースによってコンポーネント(1)410およびコンポーネント(2)420を露出してもよい。
他の例として、プログラムロード部240においてプログラム(1)およびプログラム(2)をロードする場合、インタフェース露出部251は、プログラム(1)4100およびプログラム(2)4200を構成する複数のコンポーネントを開発者インタフェースによって露出してもよい。すなわち、インタフェース露出部251は、開発者インタフェースによってコンポーネント(1)410〜コンポーネント(4)440を開発者に露出してもよい。
コンポーネント選択部252は、開発者インタフェースによって露出されたコンポーネントのいずれか1つ以上のコンポーネントを選択してもよい。ここで、コンポーネント選択部252は、露出されたコンポーネントのうち新しいプログラム(3)を生成するために必要なコンポーネント選択を開発者から入力されてもよい。ここで、開発者インタフェースとしてXMLベースの動的開発者インタフェースを用いてもよい。
一例として、コンポーネント(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の選択が入力されてもよい。
これによって、プログラム生成部253は、選択されたコンポーネント(2)420とコンポーネント(4)440とを結合して新しいプログラム(3)を生成してもよい。
図4は、本発明の一実施形態によってロードされたプログラムを構成するコンポーネントを用いて新しいプログラムを生成する方法を説明するためのフローチャートである。
まず、プログラムロード部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を介して共有してもよい。
次に、インタフェース露出部251は、ロードされたプログラムを構成するコンポーネントを開発者インタフェースによって開発者に露出してもよい(S520)。一例として、インタフェース露出部251は、プログラム(1)4100を構成するコンポーネント(1)410およびコンポーネント(2)420を開発者インタフェースによって露出されてもよい。
そして、コンポーネント選択部252は、露出されたコンポーネントのうち1つ以上のコンポーネント選択を入力してもよい。一例として、コンポーネント選択部252は、露出されたコンポーネント1および2410,420のうち、コンポーネント(2)420の選択を開発者から入力されてもよい。
これによって、プログラム生成部253は、選択されたコンポーネントを用いて新しいプログラムを生成してもよい。一例として、プログラム生成部253は、選択されたコンポーネント(2)420を用いて新しいプログラム(3)を生成してもよい(S530)。ここで、複数のコンポーネント選択が入力された場合、プログラム生成部253は、選択された複数のコンポーネントを結合して新しいプログラム(3)を生成してもよい。
また、プログラム生成部253は、プログラム(3)を生成するために必要な1つ以上の新規コンポーネントを生成してもよい。これによって、プログラム生成部253は、生成した新規コンポーネントと選択されたコンポーネントとを結合して新しいプログラム(3)を生成してもよい。
上記において、図4を参照して1つのプログラムがロードされた場合に開発者インタフェースによって新しいプログラムを生成する過程について説明した。以下では、図5を参照して、複数のプログラムがロードされた場合に開発者インタフェースによって新しいプログラムを生成する過程について説明する。
図5は、本発明の一実施形態によってコミュニケーションバスを介して共有される複数のコンポーネントを用いて新しいプログラムを生成する方法を説明するためのフローチャートである。
図5によると、プログラムロード部240は、登録されたコンポーネントにより構成される複数のプログラムをロードしてもよい。一例として、プログラム(1)4100がロードされた場合、プログラムロード部240は、プログラム(1)4100にプログラム(2)4200をロードしてもよい(S610)。すなわち、プログラムロード部240は、プログラム(1)4100をメインにして実行するランチャーでプログラム(2)4200を付加的に実行してもよい。
これによって、インタフェース露出部251は、ロードされたプログラム(1)4100を構成しているコンポーネントとプログラム(2)4200を構成するコンポーネントとを開発者インタフェースによって露出してもよい(S620)。ここで、開発者インタフェースでは、XMLベースの動的開発者インタフェースを用いてもよい。
一例として、インタフェース露出部251は、第1コンポーネント410〜第4コンポーネント440を開発者インタフェースによって開発者に露出してもよい。ここで、露出されるコンポーネントのタイプは、動的ライブラリ(DLL)および実行プログラム(EXE)のうちのいずれか1つであってもよい。
次に、コンポーネント選択部252は、露出されたコンポーネントのうち1つ以上のコンポーネント選択が入力されてもよい。
これによって、プログラム生成部252は、選択されたコンポーネントを用いて新しいプログラムを生成してもよい(S630)。一例として、コンポーネント(2)およびコンポーネント(3)が選択された場合、プログラム生成部252はコンポーネント(2)およびコンポーネント(3)を結合してプログラム(3)を生成してもよい。
ここで、プログラム生成部252は、プログラム(3)を生成するために必要な新規コンポーネントを生成してもよい。これによって、プログラム生成部253は、生成した新規コンポーネントと選択されたコンポーネントとを結合して新しいプログラム(3)を生成してもよい。これによって、開発者が実行中であるプログラムにロードされたコンポーネントを制御する開発者インタフェースを提供し、開発者インタフェースによって選択されたコンポーネントを結合して新しいプログラムを生成することでコンポーネントをリユースすることができる。
以上、上記に説明したように、プログラムを構成するコンポーネントは、ウェブ制御、画面大きさ調整、メッセンジャーログ情報、デザインに対するモジュールにより構成されるだけではなく、背景音楽の制御(music control)、画面のスキン(skin)変更、ボタン制御(button control)、テキスト制御(text control)、およびタブ制御(tab control)に対するモジュールにより構成されてもよい。これによって、開発者が希望するコンポーネントを選択して結合することにより、新しいプログラムを容易かつ迅速に生成することができる。
一方、本発明の一実施形態に係る開発者インタフェースシステム200において、登録されたコンポーネントのデータを直列化(serialize)または暗号化し、コミュニケーションバス300を介してコンポーネント共有部220に送信してもよい。これによって、コンポーネント共有部220は、直列化または暗号化されたデータを他のコンポーネントに送信してもよい。ここで、コミュニケーションバス300を介して直列化または暗号化されたデータを受信したコンポーネントのデータの直列化を解除したり、あるいは解読することができる。
他方において、以上では新規にコンポーネントを登録し、コミュニケーションバスを用いて登録されたコンポーネントと既に登録されたコンポーネントとの間でデータを共有する過程について説明したが、その他に、本発明の一実施形態に係る開発者インタフェースシステム200は、既に登録されたコンポーネントのうち、登録解除を要求したコンポーネントを解除するコンポーネント登録解除部をさらに備えてもよい。これによって、既に登録されたコンポーネントは、登録を解除されたコンポーネントとの間では登録解除後はデータを共有しないよう構成してもよい。
本発明の実施形態に係る方法は、多様なコンピュータ手段を介して様々な処理を実行することができるプログラム命令の形態において実現され、コンピュータ読取可能な記録媒体に記録されてもよい。コンピュータ読取可能な媒体は、プログラム命令、データファイル、データ構造などの単独または組み合わせたものを含んでもよい。媒体に記録されるプログラム命令は、本発明の目的のために特別に設計されて構成されたものでもよく、コンピュータソフトウェア分野の技術を有する当業者にとって公知のものであり使用可能なものであってもよい。コンピュータ読取可能な記録媒体の例としては、ハードディスク、フロッピー(登録商標)ディスク及び磁気テープのような磁気媒体、CD−ROM、DVDのような光記録媒体、光ディスクのような光磁気媒体、及びROM、RAM、フラッシュメモリなどのようなプログラム命令を保存して実行するように特別に構成されたハードウェア装置が含まれる。プログラム命令の例としては、コンパイラによって生成されるような機械語コード(machine code)だけでなく、インタプリタなどを用いてコンピュータによって実行され得る高級言語コード(higher level code)を含む。上述したハードウェア装置は、本発明の動作を行うために1つ以上のソフトウェア階層で作動するように構成されてもよい。
上述したように本発明を限定された実施形態と図面によって説明したが、本発明は、上記の実施形態に限定されることなく、本発明が属する分野における通常の知識を有する者であれば、このような実施形態から多様な修正及び変形が可能である。
したがって、本発明の範囲は、開示された実施形態に限定されて定められるものではなく、特許請求の範囲だけではなく特許請求の範囲と均等なものなどによっても定められるものである。
200 開発者インタフェースシステム
210 コンポーネント登録部
220 コンポーネント共有部
230 登録取消し部
240 プログラムロード部
250 生成部
251 インタフェース露出部
252 コンポーネント選択部
253 プログラム生成部
300 コミュニケーションバス

Claims (1)

  1. 複数のコンポーネントから構成されるプログラム(1)をロードするステップと、
    前記ロードされたプログラム(1)を構成する複数のコンポーネントのうち少なくとも1つのコンポーネントを用いてプログラム(3)を生成するステップと、
    を含むことを特徴とする開発者インタフェース提供方法。
JP2016025119A 2010-07-01 2016-02-12 開発者インタフェース提供方法およびシステム Active JP6267249B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2010-0063582 2010-07-01
KR1020100063582A KR101059658B1 (ko) 2010-07-01 2010-07-01 개발자 인터페이스 제공 방법 및 시스템

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2011147347A Division JP6190569B2 (ja) 2010-07-01 2011-07-01 開発者インタフェース提供方法およびシステム

Publications (3)

Publication Number Publication Date
JP2016076278A true JP2016076278A (ja) 2016-05-12
JP2016076278A5 JP2016076278A5 (ja) 2016-06-23
JP6267249B2 JP6267249B2 (ja) 2018-01-24

Family

ID=44933801

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2011147347A Active JP6190569B2 (ja) 2010-07-01 2011-07-01 開発者インタフェース提供方法およびシステム
JP2016025119A Active JP6267249B2 (ja) 2010-07-01 2016-02-12 開発者インタフェース提供方法およびシステム

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2011147347A Active JP6190569B2 (ja) 2010-07-01 2011-07-01 開発者インタフェース提供方法およびシステム

Country Status (3)

Country Link
US (1) US8739117B2 (ja)
JP (2) JP6190569B2 (ja)
KR (1) KR101059658B1 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9811353B1 (en) * 2010-07-29 2017-11-07 Crimson Corporation Remotely invoking dynamic classes on a computing device
US9665601B1 (en) 2010-12-16 2017-05-30 Crimson Corporation Using a member attribute to perform a database operation on a computing device
US9941096B2 (en) 2011-09-12 2018-04-10 Fei Company Glancing angle mill
CN103577207B (zh) * 2012-08-01 2017-06-27 阿里巴巴集团控股有限公司 一种自定义界面系统中界面组件的加载方法和装置
JP6224591B2 (ja) 2012-08-06 2017-11-01 グリー株式会社 表示システム、同システムにおける表示方法及び表示プログラム
US10530894B2 (en) * 2012-09-17 2020-01-07 Exaptive, Inc. Combinatorial application framework for interoperability and repurposing of code components

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002358199A (ja) * 2001-05-31 2002-12-13 Shima Masahiko コンポーネントシステム及びコンポーネント作成方法
JP2003024643A (ja) * 2001-04-25 2003-01-28 Gravity Corp オンラインゲームを支援するインスタントメッセンジャー駆動サーバー及びオンラインゲーム支援方法とそのプログラムソースを貯蔵した記録媒体
JP2003303102A (ja) * 2002-04-08 2003-10-24 Matsushita Electric Ind Co Ltd 画像処理装置
JP2008507755A (ja) * 2004-07-23 2008-03-13 株式会社エヌ・ティ・ティ・ドコモ インデックスベースのパラメータアクセス及びこれを使用するためのソフトウェア
US20080222599A1 (en) * 2007-03-07 2008-09-11 Microsoft Corporation Web services mashup designer
WO2008146080A1 (en) * 2007-05-30 2008-12-04 Sony Ericsson Mobile Communications Ab Enhanced native contact book application

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5818445A (en) * 1992-09-09 1998-10-06 Tandem Computers Incorporated Method and system for creating computer-program-based applications with developer specified look and feel
JPH11126162A (ja) * 1997-10-22 1999-05-11 Sony Corp 情報処理装置および情報処理方法、並びに記録媒体
ATE265062T1 (de) * 1997-10-27 2004-05-15 Sony Service Ct Europe Nv System von programmobjekten und programmkomponenten mit externer schnittstelle
US7660868B1 (en) * 1999-04-26 2010-02-09 John Albert Kembel Apparatus and method for interacting with internet content via one or more applications that do not include native web browsing navigation control features
EP1308016A2 (en) * 2000-08-11 2003-05-07 Manugistics, Inc. System and method for integrating disparate networks for use in electronic communication and commerce
FR2820221B1 (fr) * 2001-02-01 2004-08-20 Cimai Technology Procede et systeme pour gerer des executables a bibliotheques partagees
JP2005182419A (ja) * 2003-12-18 2005-07-07 Toshiba Solutions Corp コンポーネント処理システム及びコンポーネント処理方法
US8522205B2 (en) * 2004-05-18 2013-08-27 Oracle International Corporation Packaging multiple groups of read-only files of an application's components into multiple shared libraries
US7415704B2 (en) * 2004-05-20 2008-08-19 Sap Ag Sharing objects in runtime systems
JP2008503011A (ja) * 2004-06-08 2008-01-31 ダートデバイセズ コーポレーション ユニバーサルデバイスインタオペラビリティプラットフォームのためのデバイスチームリクルートメントおよびコンテンツレンディションのアーキテクチャ装置および方法
US7503040B2 (en) * 2004-09-30 2009-03-10 International Business Machines Corporation Configuring a shared library to accommodate relocatable data in a pervasive device
US7657868B2 (en) * 2005-03-14 2010-02-02 Research In Motion Limited System and method for applying development patterns for component based applications
US7752253B2 (en) * 2005-04-25 2010-07-06 Microsoft Corporation Collaborative invitation system and method
GB0517357D0 (en) * 2005-08-25 2005-10-05 Corizon Ltd User interface generation
EP1960873B1 (en) * 2005-12-17 2013-02-27 Intel Corporation Installing and executing shared applications in shared folders
US7779385B2 (en) * 2006-05-10 2010-08-17 Oracle America, Inc. Method and system for automated component product integration
JP5014871B2 (ja) * 2006-05-16 2012-08-29 パナソニック株式会社 プログラム起動装置、プログラム起動方法、起動処理プログラム及び集積回路
GB2443846B (en) * 2006-11-15 2011-12-07 Joseph Timothy Poole Computing system
US7844949B2 (en) * 2006-12-14 2010-11-30 International Business Machines Corporation Computer method and apparatus for software configuration management repository interoperation
US8561024B2 (en) * 2007-01-23 2013-10-15 International Business Machines Corporation Developing software components and capability testing procedures for testing coded software component
EP2132629A1 (en) * 2007-04-05 2009-12-16 Sentillion, Inc. Augmenting a virtual machine hosting environment from within a virtual machine
US8464212B2 (en) * 2007-07-27 2013-06-11 Canon Kabushiki Kaisha Method, apparatus and storage medium for customizing application
US20090183182A1 (en) * 2008-01-10 2009-07-16 Microsoft Corporation Dynamic Composition of Virtualized Applications
US8108831B2 (en) * 2008-02-07 2012-01-31 Microsoft Corporation Iterative component binding
US20090260004A1 (en) * 2008-04-10 2009-10-15 Palm, Inc. Computer program updates for mobile computing device
JP2010039860A (ja) * 2008-08-06 2010-02-18 Toshiba Corp コンポーネントプログラム制御装置、コンポーネントプログラムを制御する方法及びプログラム
US8239856B2 (en) * 2008-10-27 2012-08-07 International Business Machines Corporation Sharing unresolved information between software components
US9417851B2 (en) * 2009-05-13 2016-08-16 Adobe Systems Incorporated Location-based application development for runtime environments
US7970850B1 (en) * 2009-12-29 2011-06-28 International Business Machines Corporation Instant messaging based virtual file system
GB201001728D0 (en) * 2010-02-03 2010-03-24 Skype Ltd Screen sharing
US8291408B1 (en) * 2010-03-10 2012-10-16 Google Inc. Visual programming environment for mobile device applications

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003024643A (ja) * 2001-04-25 2003-01-28 Gravity Corp オンラインゲームを支援するインスタントメッセンジャー駆動サーバー及びオンラインゲーム支援方法とそのプログラムソースを貯蔵した記録媒体
JP2002358199A (ja) * 2001-05-31 2002-12-13 Shima Masahiko コンポーネントシステム及びコンポーネント作成方法
JP2003303102A (ja) * 2002-04-08 2003-10-24 Matsushita Electric Ind Co Ltd 画像処理装置
JP2008507755A (ja) * 2004-07-23 2008-03-13 株式会社エヌ・ティ・ティ・ドコモ インデックスベースのパラメータアクセス及びこれを使用するためのソフトウェア
US20080222599A1 (en) * 2007-03-07 2008-09-11 Microsoft Corporation Web services mashup designer
WO2008146080A1 (en) * 2007-05-30 2008-12-04 Sony Ericsson Mobile Communications Ab Enhanced native contact book application

Also Published As

Publication number Publication date
JP6190569B2 (ja) 2017-08-30
JP6267249B2 (ja) 2018-01-24
JP2012014700A (ja) 2012-01-19
US8739117B2 (en) 2014-05-27
KR101059658B1 (ko) 2011-08-25
US20120005651A1 (en) 2012-01-05

Similar Documents

Publication Publication Date Title
JP6267249B2 (ja) 開発者インタフェース提供方法およびシステム
US8296721B2 (en) Template-based software development
US20160070541A1 (en) Conversion of business suite solutions
US20140053063A1 (en) User interface control framework for stamping out controls using a declarative template
US9612804B2 (en) Business suite framework for developing software applications
US8140999B2 (en) Display process device and display process method
Fylaktopoulos et al. A distributed modular platform for the development of cloud based applications
Sorgalla et al. AjiL: enabling model-driven microservice development
JP2015207300A (ja) 統合開発環境を利用したui実現方法
Piontek et al. Development of science gateways using qcg—lessons learned from the deployment on large scale distributed and hpc infrastructures
US20070236746A1 (en) Storing modification data for recreating modifications
US8862984B1 (en) Data contracts for network page generation code
US10169901B2 (en) Staggered animation scheduling
Mesfin et al. Towards end-user development of REST client applications on smartphones
Wagner Professional flash mobile development: Creating android and iphone applications
Shackles Mobile Development with C
Fujima Building a meme media platform with a JavaScript MVC framework and HTML5
TW201142706A (en) Method, system, and computer program product for hierarchical program source management
US8972927B2 (en) Method and system for providing modeled components
JP2006163855A (ja) Webアプリケーション開発支援装置及び開発支援方法
Roche et al. Beginning Java Google App Engine
US7805715B2 (en) Model publishing framework
KR101376322B1 (ko) 휴대 단말의 어플리케이션 설치 제어 방법, 이를 이용하는 휴대 단말 및 어플리케이션 제공 서버
Miravet et al. Using standards to build the DIMAG connected mobile applications framework
Pietschmann et al. Adaptive rich user interfaces for human interaction in business processes

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160314

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160325

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170208

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170307

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170606

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20171121

R150 Certificate of patent or registration of utility model

Ref document number: 6267249

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250