JP2015122018A - アプリケーション開発支援プログラム及びアプリケーション開発支援システム - Google Patents

アプリケーション開発支援プログラム及びアプリケーション開発支援システム Download PDF

Info

Publication number
JP2015122018A
JP2015122018A JP2013266531A JP2013266531A JP2015122018A JP 2015122018 A JP2015122018 A JP 2015122018A JP 2013266531 A JP2013266531 A JP 2013266531A JP 2013266531 A JP2013266531 A JP 2013266531A JP 2015122018 A JP2015122018 A JP 2015122018A
Authority
JP
Japan
Prior art keywords
building
application
manifest file
library
file
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
JP2013266531A
Other languages
English (en)
Other versions
JP6013315B2 (ja
Inventor
巧太郎 金子
Kotaro Kaneko
巧太郎 金子
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.)
Kyocera Document Solutions Inc
Original Assignee
Kyocera Document Solutions Inc
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 Kyocera Document Solutions Inc filed Critical Kyocera Document Solutions Inc
Priority to JP2013266531A priority Critical patent/JP6013315B2/ja
Priority to US14/579,126 priority patent/US9335990B2/en
Publication of JP2015122018A publication Critical patent/JP2015122018A/ja
Application granted granted Critical
Publication of JP6013315B2 publication Critical patent/JP6013315B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

【課題】アプリケーション開発環境で、プラットフォームバージョンを関連付けるテーブルが不要となる技術を提供する。
【解決手段】アプリケーション開発支援システム10は開発ツール部20とビルド用資産保持部30とビルド部40を備える。ビルド用資産保持部30はプロジェクトで作成されるアプリケーションのビルドに必要な各種ファイルやライブラリを保持する。ファイル抽出部44は動作ターゲットのプラットフォームが複数バージョン有る場合、ビルド用資産保持部30から全プラットフォーム共通に必要なライブラリを抽出しかつ共通でないが必要とされるライブラリを抽出する。インターフェイス照会部46は残っているライブラリに関して公開インターフェイスを問い合わせる。マニュフェストファイル作成部48はインターフェイス照会処理で探し出された差分のマニュフェストファイルを作成し既存マニュフェストファイルに結合する。
【選択図】図1

Description

本発明は、アプリケーション開発支援プログラム及びアプリケーション開発支援システムに係り、例えば、複数のバージョンのプラットフォームに適用するアプリケーションを作成するためのアプリケーション開発支援プログラム及びアプリケーション開発支援システムに関する。
一般的にアプリケーションを作成するためには開発環境が必要であり、この開発環境を利用してターゲットとなるアプリケーション(ソフトウェア)を作成する。ターゲットとなるアプリケーションには、そのアプリケーションが動作対象となるバージョンによって特定されるプラットフォームが存在している。このプラットフォームの代表例はオペレーティングシステムである。開発環境はこの複数バージョンのプラットフォームをサポートすることが多い。アプリケーションに必要とされるファイル、ライブラリ等はプラットフォームのバージョン毎に異なる。通常の開発環境はアプリケーションのビルド時か自身のインストール時に指定されたプラットフォームに、どのファイル、ライブラリ等が必要であるかを決定する必要がある。
そのような開発環境の技術として、ユーザーの利便性を向上させる各種の技術が提供されている。例えば、ソフトウェアの開発環境及び実行環境におけるライブラリ管理方法に関して、特にライブラリ構成に関する規則を追加・変更・削除することができるライブラリ管理方法の技術がある(例えば特許文献1参照)。
特開平10−269065号公報
ところで、特許文献1に開示の技術では、管理表を利用しており更新が頻繁に行われる環境向きではなく、更新に関わる工数も大きいことから別の技術が求められていた。
本発明はこのような状況に鑑みてなされたものであり、上記課題を解決できる技術を提供することを目的とする。
本発明は、ライブラリ及びマニュフェストファイルを含むビルド用資産をビルドしてアプリケーションを作成する際に用いられるアプリケーション開発支援プログラムであって、アプリケーションの動作ターゲットとなるプラットフォームが複数バージョン有る場合に、所定の資産保持領域から、それら全てのプラットフォームに共通に必要とされるライブラリを抽出し、かつ、共通でないが必要とされるライブラリを特定し抽出するファイル抽出工程と、前記資産保持領域において抽出されず残っているライブラリに関して公開インターフェイスを問い合わせるインターフェイス照会工程と、前記インターフェイス照会工程によって探し出された差分のマニュフェストファイルを作成し、既存のマニュフェストファイルに結合するマニュフェストファイル作成工程と、を実行する。
本発明は、ライブラリ及びマニュフェストファイルを含むビルド用資産をビルドしてアプリケーションを作成する際に用いられるアプリケーション開発支援システムであって、アプリケーションの動作ターゲットとなるプラットフォームが複数バージョン有る場合に、所定の資産保持領域から、それら全てのプラットフォームに共通に必要とされるライブラリを抽出し、かつ、共通でないが必要とされるライブラリを特定し抽出するファイル抽出部と、前記資産保持領域において抽出されず残っているライブラリに関して公開インターフェイスを問い合わせるインターフェイス照会部と、前記インターフェイス照会部によって探し出された差分のマニュフェストファイルを作成し、既存のマニュフェストファイルに結合するマニュフェストファイル作成部と、を備える。
本発明によると、アプリケーション開発環境において、ターゲットのプラットフォームのバージョンを関連付けるテーブルが不要となる技術を提供することができる。
本発明の実施形態に係る、アプリケーション開発支援システムを示す機能ブロック図である。 本発明の実施形態に係る、アプリケーション開発支援システムを用いたビルド処理を示すフローチャートである。 本発明の実施形態に係る、アプリケーション開発支援システムのバージョン切替処理を示すフローチャートである。
以下、本発明を実施するための形態(以下、「実施形態」という)を、図面を参照して説明する。
図1は、本実施形態に係るアプリケーション開発支援システム10(アプリケーション開発環境)の概略構成を示す機能ブロック図である。アプリケーション開発支援システム10は、ソフトウェア的には所定の演算装置や記憶装置を有するコンピュータにより実行されるプログラムとして、ハードウェア的にはそのプログラムを実行するコンピュータ及びその周辺機器(表示装置、入出力装置等)により実現される。
アプリケーション開発支援システム10は、開発ツール部20と、ビルド用資産保持部30と、ビルド部40とを有する。
開発ツール部20は、アプリケーション(ソフトウェア)の開発環境を提供するためのソフトウェアツールであって、いわゆるGUI(Graphical User Interface)によって、アプリケーションの設計、コーディング、デバッグ、及びテスト等を支援するための統合環境を提供する。ここでは、開発ツール部20は、作成するアプリケーションの開発環境を「プロジェクト」と呼ばれる単位で管理する。具体的には、ユーザーは、アプリケーションを作成する際に開発ツール部20を使用しプロジェクトを定義するととともに、定義したプロジェクトにおいてソースコード等の編集を行う。
ビルド用資産保持部30は、プロジェクトにおいて作成されるアプリケーションをビルドする際に必要とされる各種のファイルやライブラリ等を保持する。
ビルド部40は、ビルド用資産保持部30に保持されているファイルやライブラリ等を用いてビルドを行い、所望のアプリケーションを作成する。ここで、ビルドとは、ビルド用資産保持部30のファイル等に基づいてアプリケーションの実行コードを生成することである。一般的にはコンパイル及びリンク等の過程を含む処理をいう。
ビルド部40は、ビルド実行部42と、ファイル抽出部44と、インターフェイス照会部46と、マニュフェストファイル作成部48とを備える。
ビルド実行部42は、ビルド用資産保持部30に基づいてアプリケーションを実際にビルドするためのコンパイラ等のプログラムツールである。
ファイル抽出部44は、オペレーションシステム等のプラットフォームが複数バージョン有る場合に、それら全てのプラットフォームに共通に必要とされるライブラリを抽出する。ここで、抽出するとは、実際に検索してプロジェクトにおける必要な場所に配置することである。これはビルド時のリンクのためのパスが通っていれば配置場所は特に限定しない。また、共通というのは全てのバージョンで共通なファイルとなる。この共通ファイルは固定である。
さらに、ファイル抽出部44は、共通に必要とされるライブラリの抽出処理につづき、ターゲットとなるプラットフォームに必要とされるファイルを探索する処理を行う。探索するためにはファイルとライブラリを区別する必要があるが、区別に拡張子を利用してもよい。この処理により、ファイル抽出部44は、共通でないが必要とされるライブラリを特定する。
インターフェイス照会部46は、抽出されず残っているライブラリに関して公開インターフェイスを問い合わせる処理を行う。インターフェイスへの問い合わせについては、他のアプリケーションがそのライブラリ上で利用できるAPI(Application Programming Interface)を探し出すためのものである。この処理はビルド対象のアプリケーションがどのAPIを利用するかまた利用しないかを決定するために宣言されるものであって、動的に生成される。この情報を記載したファイルはマニュフェストファイルと呼ばれこともあり、多くの開発環境においてビルド時に必要となる。
マニュフェストファイル作成部48は、インターフェイス照会部46によって探し出された差分のマニュフェストファイルを作成し、既存のマニュフェストファイルに結合する。
以上の構成による処理を説明する。図2は、アプリケーション開発支援システム10によるビルド処理を示すフローチャートである。
ユーザーは、開発ツール部20を操作し表示装置に開発用のGUIを表示させ、アプリケーション作成処理を開始する。まず、ファイル抽出部44は、ビルド用資産保持部30を参照して全プラットフォームに共通するライブラリやファイルを抽出する(S10)。
つぎに、ファイル抽出部44は、ビルド用資産保持部30に抽出されずに残っているファイルやライブラリがあるか否かを確認する(S12)。残っていない場合(S12のN)、ビルド実行部42は、マニュフェストファイルと抽出したファイル及びライブラリを用いてビルドを実行し(S14)、アプリケーションが作成される(S16)。
残っている場合(S12のY)、ファイル抽出部44は、ターゲットとなるプラットフォームに必要とされるファイルを探索し抽出する(S18)。
つぎに、インターフェイス照会部46は、抽出されず残っているライブラリに関して公開インターフェイスを問い合わせる処理を行う(S20)。
さらに、マニュフェストファイル作成部48は、インターフェイス照会部46によって探し出された差分のマニュフェストファイルを作成し(S22)、既存のマニュフェストファイルと結合する(S24)。その後、上述したビルド実行部42によるビルドの実行(S14)で、アプリケーションが作成される(S16)。
図3は、アプリケーション開発環境のバージョン切替処理を示すフローチャートである。ターゲットのプラットフォームのバージョンを切り替えるためには、不要なファイルをアンインストールして、必要なファイルをインストールする必要がある。
そこで、開発ツール部20は、ターゲットのプラットフォームのバージョンをインストールする場合に、新規インストールか否かを確認する(S30)。新規インストールで無い場合(S30のN)、開発ツール部20は、一旦ライブラリファイルをアンインストールし(S32)、インストールするライブラリファイルを選択し(S34)、インストールを行う(S36)。新規インストールの場合(S30のY)、開発ツール部20は、アンインストールの処理を行わず、所望のライブラリファイルを選択し(S34)、インストールを行う(S36)。
以上、本実施形態では、必要とされるファイル、ライブラリ、マニュフェストファイル等がビルド用資産保持部30に保持され、それらは開発環境のインストール時に導入される。その結果で、プラットフォームバージョンを関連付けるテーブル、表といったものが不要となる。従来技術ではすべてのファイルを保持しているため、これらの管理表を更新し、必要なファイル、ライブラリ、マニュフェストファイルを準備するする必要があるため開発環境のインストールサイズも大きくなる傾向が強かったが、本実施の形態ではインストールサイズを大きくすること無く、導入先のハードウェア資源のキャパシティを効果的に活用することができる。
また、従来では、バージョンが増える毎に、そのバージョンに適用させるために開発環境自身をアップデートしなければならないという不便さがあった。しかし、本実施形態では、バージョンの切替はインストール時に行われ、必要なファイルをその都度選択する方式である。その結果、管理表の更新は不要であり、またプラットフォームバージョンの追加は必要なファイルをインストールパッケージとして追加するだけでよい。
特に、Android(登録商標)やLinux(登録商標)のようなオープンソースのオペレーテンングシステムではバージョンが頻繁に更新されるため、上述のような方式を用いることは非常に効果的である。また、特別のリソースや処理能力は不要であり、他の既存機能にほとんど影響しないという利点もある。また、このような開発環境(アプリケーション開発支援システム10)は、例えばプリンターや複合機といった画像形成装置に関するアプリケーションの作成に有効である。すわなち、プリンターや複合機は、現実的な処理の観点から寿命が長いものもあり、特に多くのオペレーティングシステム(プラットフォーム)に対応する必要がある。一方、パーソナルコンピュータでは、ハードウェアの処理能力等の観点から、使用可能なオペレーティングシステムは数世代(数バージョン)に限られることが多い。この点で、画像形成装置のアプリケーションに関して、本実施形態の機能を利用することで、多様なプラットフォームに対応したアプリケーション作成環境の利便性を向上させることができる。
以上、本発明を実施形態をもとに説明した。この実施形態は例示であり、それらの各構成要素の組み合わせにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
10 アプリケーション開発支援システム
20 開発ツール部
30 ビルド用資産保持部
40 ビルド部
42 ビルド実行部
44 ファイル抽出部
46 インターフェイス照会部
48 マニュフェストファイル作成部

Claims (2)

  1. ライブラリ及びマニュフェストファイルを含むビルド用資産をビルドしてアプリケーションを作成する際に用いられるアプリケーション開発支援プログラムであって、
    アプリケーションの動作ターゲットとなるプラットフォームが複数バージョン有る場合に、所定の資産保持領域から、それら全てのプラットフォームに共通に必要とされるライブラリを抽出し、かつ、共通でないが必要とされるライブラリを特定し抽出するファイル抽出工程と、
    前記資産保持領域において抽出されず残っているライブラリに関して公開インターフェイスを問い合わせるインターフェイス照会工程と、
    前記インターフェイス照会工程によって探し出された差分のマニュフェストファイルを作成し、既存のマニュフェストファイルに結合するマニュフェストファイル作成工程と、
    を実行することを特徴とするアプリケーション開発支援プログラム。
  2. ライブラリ及びマニュフェストファイルを含むビルド用資産をビルドしてアプリケーションを作成する際に用いられるアプリケーション開発支援システムであって、
    アプリケーションの動作ターゲットとなるプラットフォームが複数バージョン有る場合に、所定の資産保持領域から、それら全てのプラットフォームに共通に必要とされるライブラリを抽出し、かつ、共通でないが必要とされるライブラリを特定し抽出するファイル抽出部と、
    前記資産保持領域において抽出されず残っているライブラリに関して公開インターフェイスを問い合わせるインターフェイス照会部と、
    前記インターフェイス照会部によって探し出された差分のマニュフェストファイルを作成し、既存のマニュフェストファイルに結合するマニュフェストファイル作成部と、
    を備えることを特徴とするアプリケーション開発支援システム。
JP2013266531A 2013-12-25 2013-12-25 アプリケーション開発支援プログラム及びアプリケーション開発支援システム Active JP6013315B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013266531A JP6013315B2 (ja) 2013-12-25 2013-12-25 アプリケーション開発支援プログラム及びアプリケーション開発支援システム
US14/579,126 US9335990B2 (en) 2013-12-25 2014-12-22 Method, a system, and a non-transitory computer-readable medium for supporting application development

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013266531A JP6013315B2 (ja) 2013-12-25 2013-12-25 アプリケーション開発支援プログラム及びアプリケーション開発支援システム

Publications (2)

Publication Number Publication Date
JP2015122018A true JP2015122018A (ja) 2015-07-02
JP6013315B2 JP6013315B2 (ja) 2016-10-25

Family

ID=53400108

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013266531A Active JP6013315B2 (ja) 2013-12-25 2013-12-25 アプリケーション開発支援プログラム及びアプリケーション開発支援システム

Country Status (2)

Country Link
US (1) US9335990B2 (ja)
JP (1) JP6013315B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109558121A (zh) * 2018-11-26 2019-04-02 上海达梦数据库有限公司 接口驱动程序的开发方法、装置、设备及存储介质

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105700921A (zh) * 2016-01-05 2016-06-22 广东小天才科技有限公司 一种教材数据的更新方法、装置及系统和家教机
US11138020B1 (en) * 2020-09-03 2021-10-05 Sap Se Content provisioning system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5835777A (en) * 1996-03-20 1998-11-10 Hewlett-Packard Company Method of automatically generating a software installation package
JP2007257046A (ja) * 2006-03-20 2007-10-04 Fujitsu Ltd 複数osバージョン用ソフトウェア生成装置及び複数osバージョン用ソフトウェア生成支援プログラム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10269065A (ja) 1997-03-27 1998-10-09 Hitachi Ltd ライブラリ管理方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5835777A (en) * 1996-03-20 1998-11-10 Hewlett-Packard Company Method of automatically generating a software installation package
JP2007257046A (ja) * 2006-03-20 2007-10-04 Fujitsu Ltd 複数osバージョン用ソフトウェア生成装置及び複数osバージョン用ソフトウェア生成支援プログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109558121A (zh) * 2018-11-26 2019-04-02 上海达梦数据库有限公司 接口驱动程序的开发方法、装置、设备及存储介质

Also Published As

Publication number Publication date
US9335990B2 (en) 2016-05-10
JP6013315B2 (ja) 2016-10-25
US20150178074A1 (en) 2015-06-25

Similar Documents

Publication Publication Date Title
US11467854B2 (en) Method and apparatus for loading multiple differing versions of a native library into a native environment
KR102010508B1 (ko) 소스 코드 파일을 업데이트하는 시스템 및 방법
US8726255B2 (en) Recompiling with generic to specific replacement
US10133560B2 (en) Link time program optimization in presence of a linker script
JP6192570B2 (ja) アプリケーション開発支援プログラム及びアプリケーション開発支援システム
RU2395836C2 (ru) Конфигурируемые пользователем библиотеки программного обеспечения
JP2021002317A (ja) アプリケーションをアップグレードするための方法、装置、デバイスならびに記憶媒体
US20150363195A1 (en) Software package management
KR20060070412A (ko) 소프트웨어 셋업을 위한 언어-중립 및 언어-특정 설치패키지
US10061571B2 (en) System and method for link time optimization
US20080141241A1 (en) Method and system for allowing an eclipse feature to create/remove/update program groups and shortcuts, via an eclipse install handler
US20150149978A1 (en) Method of providing embedded software development tool for supporting embedded software development environment based on native building, and apparatus thereof
JP6013315B2 (ja) アプリケーション開発支援プログラム及びアプリケーション開発支援システム
US20180275976A1 (en) Link time optimization in presence of a linker script using path based rules
US20180129490A1 (en) Object ordering preservation during lto link stage
CN114138376B (zh) 一种在应用中加载插件的方法、计算设备及存储介质
Kano Kachako: A Hybrid-Cloud Unstructured Information Platform for Full Automation of Service Composition, Scalable Deployment and Evaluation: Natural Language Processing as an Example
CN102298548A (zh) 一种恢复可执行程序依赖文件的方法及装置
JP4983027B2 (ja) チェックプログラム及びチェック方法
JP2006286003A (ja) 機能を追加するように、移動通信機器にてアプリケーションを拡張するシステム、およびその方法
JP7328922B2 (ja) 設定装置、設定方法、及びプログラム
JP5845788B2 (ja) 実行制御プログラム、実行制御装置および実行制御方法
JP2017091027A (ja) システム開発支援システム
JP6639238B2 (ja) プログラムおよびコンピュータ
JP2000293377A (ja) 共存環境構築方法及び共存環境構築プログラムを記録した記録媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20151021

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160217

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160223

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160420

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160524

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160725

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: 20160823

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160921

R150 Certificate of patent or registration of utility model

Ref document number: 6013315

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150