業務アプリのモバイル対応、どう進める? ―モバイルアプリ開発ツールベンダー座談会(前編)

CodeZine / 2014年1月17日 14時0分

マジックソフトウェア・ジャパン 渡辺剛氏

 スマートフォンやタブレットといったモバイルデバイスが急速に普及するのに合わせ、これらのデバイスで動作するモバイルアプリケーション開発へのニーズも高まっている。この波は、従来、主にWindowsのデスクトップPCや、その上で動くブラウザをターゲットとしていた業務アプリケーションの分野にも広がりつつある。

 アプリケーションのモバイル対応を実現するにあたっては、iOSやAndroidといったモバイルOSおよびプラットフォームに対する知識や、HTML5やCSSといった最新のWeb技術に関する知識など、従来とは異なった幅広いスキルやノウハウが求められるケースが多い。そのため、新たなスキル獲得のためのコストを低減しつつ、1つのソースコードから複数のプラットフォームへの展開を助ける開発フレームワークやソリューションに対して注目が集まっている。

 今回、CodeZine編集部では、こうしたモバイル対応を積極的に進めているフレームワーク、開発ツールの提供ベンダー5社による座談会を企画した。各社の製品の特長や、ユーザーから求められる機能についての意見交換を通じ、主に業務アプリケーションのモバイル対応に際して支援ツールの導入を比較検討する際のポイントについて明らかにしていきたい。

 座談会のモデレーターは、CodeZine編集部の斉木崇が担当した。各ベンダーの代表者は以下の5名だ。

参加者(自己紹介順) アドビシステムズ アンディ・ホール氏
(デジタルメディア部クリエイティブクラウドエバンジェリスト) SCSK 岡田 一志氏
(流通システム事業本部Curlソリューション部プロダクト課長) エンバカデロ・テクノロジーズ 藤井 等氏
(日本法人代表) キヤノンITソリューションズ 髙本 勉氏
(CNB推進部コンサルティングプロフェッショナル) マジックソフトウェア・ジャパン 渡辺 剛氏
(マーケティング部課長) 登壇者:左からアドビシステムズ アンディ・ホール氏、SCSK 岡田一志氏、
エンバカデロ・テクノロジーズ 藤井等氏、キヤノンITソリューションズ 髙本勉氏、
マジックソフトウェア・ジャパン 渡辺剛氏


■各社が提供する開発ツールの特徴

 CodeZine:みなさん、本日はお忙しい中お集まりいただきありがとうございます。まずは、自己紹介と、みなさんの会社で提供されているツールの概要について、一言ずつお願いします。

 アドビ:アドビのアンディ・ホールです。皆さんご存じのとおり、アドビはPhotoshopやIllustrator、InDesignなど、クリエイター向けのツールを多く提供しています。その中でも、特にモバイル向けのアプリ開発に利用できるツールとしては、DreamweaverやFlash Professional、AIR、そして近年nitobiを買収して取得した「PhoneGap」といったものがあります。さらに、HTML5ベースのモダンなプラットフォーム向けの開発ツールとしては「Adobe Edgeツール&サービス」というブランドで用意しており、個々に機能の違う複数のEdgeツールがすでに利用可能になっています。

 アドビでは、これらのツールとPhoneGapとの組み合わせで、Webアプリからハイブリッドアプリまで、ニーズに応じたモバイル開発ができる環境を整えています。さらに、今後、どのような開発技術やツールが主流になった場合も、それに対応できるよう準備を進めています。

「PhoneGap」(左)/「Adobe Edgeツール&サービス」(右)


 SCSK:SCSKの岡田です。われわれは、「Curl」と呼ばれるリッチクライアント開発ツールで、デスクトップ向けのクロスプラットフォーム開発環境を実現していました。そこから派生する形で、モバイル環境向けの「Caede」というツールを約1年前にリリースしています。これらを組み合わせて、デスクトップからモバイルまで、ワンソースで対応できる点が売りです。Curlは、Windows、Mac OS、Linuxをサポートしており、Caedeは最新バージョンで、iOS、Androidに加えて、Windowsストアアプリをサポートしました。

 Caedeのモバイル対応については「Elastic」と呼ばれる機能にも力を入れています。これは、例えばAndroidにおける画面サイズの違いなどに対応するための、グラフィックの圧縮伸張の技術なのですが、これについては米国で特許も取得しています。

 あと、今回参加されているメンバーの中では「国産」のツールであるということも、サポート面などで強みの一つかと思っています。

「Curl」(左)/「Caede」(右)


 エンバカデロ:エンバカデロの藤井です。弊社の源流は、もともとTurbo CやTurbo Pascalといった言語系の製品を提供していたボーランドの開発ツール部門になります。継続してソフトウェア開発ツールを提供する中で、ここ数年は特にマルチデバイス対応に舵を切っています。

 対応が一番進んでいるのが「Delphi」という製品です。Delphiは、もともとWindows 95の時代にWindows向け開発ツールとして登場し、その後、Mac OS Xにも対応しました。それぞれのプラットフォーム向けに、1つのコードからネイティブのアプリを開発できるという点がポイントで、Delphiは、2013年に入ってから、iOS、Androidにも対応しました。もう一つの「C++Builder」という製品についても、Windowsに加え、Mac OS X、iOSに対応しており、今後Android対応も進めていく計画です。

 両ツールの特長は、Visual Basicライクなコンポーネントのドラッグ&ドロップによるビジュアル開発、そしてCPUで直接実行されるネイティブアプリケーションを開発できる点です。デバイスが持つGPSやカメラなどの機能やネットワーク通信、データアクセスなどについても、コンポーネントから容易に利用できるようになっています。

「Delphi」:AndroidとiOSの双方のネイティブアプリを開発できる(左)/
「C++Builder」:標準のC++言語でのiOSアプリ開発を実現した(右)


 キヤノンITS:キヤノンITSの髙本です。私共は、他の出席者の方々とは若干立場が異なり、メーカーではなく、米国の「Sencha」という企業が開発している同名のツールの日本における総販売元としてサポートを含むビジネスをしています。

 Senchaは、もともと「Sencha Ext JS」と呼ばれるJavaScriptライブラリを中心としたデスクトップWebアプリ開発フレームワークとして作られてきたものです。現在では、各モバイルプラットフォーム向けのHTML5のWebアプリ開発とネイティブパッケージングも行えるようになっています。

 モバイル向けのWebアプリ開発は「Sencha Touch」と呼ばれるフレームワークで実現されていますが、これはデスクトップWebアプリのMVCでいう「View」の部分を変更したもので、同じ開発スキームでさまざまなプラットフォームに対応できることがポイントです。OSは、iOS、Android、Windows 8、Windows Phone 8だけでなく、Black BerryやKindle Fire、Tizenと圧倒的に幅広いクロスプラットフォーム対応が特長です。

 Senchaシリーズの中心となっている開発ツールは、「Sencha Architect」です。コンポーネントをドラッグ&ドロップし、ライブ・プレビューで状況を確認しながらアプリを制作し、企業向けアプリに重要なモデルやストア、プロキシもデータのビジュアル表現を利用して視覚的に設定します。

「Sencha Architect」:GUIによるアプリ開発(左)/
「Sencha Touch」:モバイル用フレームワーク(右)


 マジックソフトウェア・ジャパン(マジック):マジックの渡辺です。「Magic xpa」は、イスラエルの会社が開発しているアプリケーション開発・実行プラットフォームで、すでに30年の実績があります。特長としては、業務システム開発に特化したツールであり、ゲームアプリなどの開発はできないという点でしょうか。少し古い開発者の方ならクライアント/サーバ開発全盛の時代に「dbMAGIC」というツールについてお聞きになったことがあると思いますが、その流れをくむ製品の最新版になります。

 まだ、OSがDOSの時代にクライアント/サーバ開発を効率的に行うことを目指して作られ、その後、Web開発対応、RIA対応などを経て、現在ではiOS/Androidといったモバイル向けにも展開を行っています。

 特長は、低水準なコーディングを必要とせずに、開発者が業務アプリケーションのビジネスロジック開発に専念できる環境を提供する点です。OSのバージョンアップやプラットフォームの変化があっても、アプリケーションそのものは改変なく移行できるような環境を目指してやってきたのですが、その進化の先に近年普及が加速しているiOS、Androidといったモバイル環境があったということになります。

 モバイル向けのクライアントエンジンは、Windows、iOS、Androidをサポートしています。もしこの先、他のプラットフォームが出てきても、マジックがそのプラットフォーム向けのエンジンを提供することで、アプリケーションそのものは、そのプラットフォームでも問題なく動くことになります。

 アプリケーションのタイプは「Magic独自形式のハイブリッドアプリ」という言い方が一番近いかもしれません。ただ、Magicでは、サーバとクライアントの開発を同時に行い、実行時には自動で分割・配布されて動くという形になります。この部分が他のツールにはない特長で、サーバ側とクライアント側を別々に開発する必要がなくなるため開発プロセスを劇的に簡略化できます。業界に特化したアプリケーションの開発会社さんがMagicでアプリケーションを開発して、パッケージソフトやクラウドサービスの形式でユーザーさんに提供されるケースが多い製品です。

「Magic」


モバイルアプリ開発アーキテクチャーの比較




CodeZine

トピックスRSS

ランキング