米Embarcadero TechnologiesのJohn Thomas(ジョン・トーマス)製品担当ディレクターが、2012年12月7日に開催される第24回エンバカデロ・デベロッパーキャンプに合わせて来日し、日経ソフトウエアの取材に応じた。製品強化についての話もあったが、記者が最も面白く感じたのは「プロダクトコードの1行を書くのに28ドルかかる」という部分。だからこそ、コードを削減できるマルチプラットフォームの開発ツールが必要と説く。

(聞き手は原田 英生=日経ソフトウエア


写真●米Embarcadero TechnologiesのJohn Thomas製品担当ディレクター。娘へのクリスマスプレゼントはWindows 8パソコンだったという

RAD STUDIOの更新状況は。

 C++ Builderの64ビットコンパイラを12月10日に公開した。RAD STUDIO XE3の登録ユーザーは無料でダウンロードできる。32ビット版ではアプリケーションが利用できるメモリーの最大量は4Gバイトだったが、64ビット化でその限界がなくなる。64ビットCPUの能力を活用したより高性能なプログラムを作れる。米Microsoft「Office」の64ビット版を使う人が増えてきていて、そのオートメーションを行うプログラムも作れる。C++の最新規格「C++11」に準拠していることも注目してほしい。最も高いレベルで準拠していて、何年もC++規格の仕事にかかわってきた私としては、感慨深いものがある。

32ビット版のC++もC+11準拠なのか。

 32ビット版についてはそうではない。32ビット版はこれまでの製品との互換性を維持する必要があり、64ビット版とは若干機能が異なる。言い方を変えれば、64ビット版を作る際に、いくつか切り捨てた機能もある。

MicrosoftのVisual C++でなく、御社のC++を使っている人もいるのだろうか。RAD STUDIOにおいてDelphiとC++の使用比率はどのくらいか。

 大まかに言えば、RAD STUDIOの開発者はDelphiが6~7割、C++が3~4割くらいだ。Visual C++は無料で使えるから競合するのは大変だけれど、RAD STUDIOのビジネス自体は年10パーセントくらい伸びている。特に、昨年投入したRAD STUDIO XE2では大きなジャンプアップがあった。

 C++というプログラミング言語は、新しいデバイスの成長によって、今飛躍の時を迎えていると思う。米GoogleのAndroidはNDK(Native Development Kit)でC++を取り込んでいるし、米AppleもC++への取り組みを強化している。AndroidやiOSに向けた開発をするのに、C++は有効な言語だ。

iOSとAndroid向けの開発はC++で行ってもらうということか。

 RAD STUDIOでは、もちろんDelphiとC++の両方だ。iOS向けのDelphiコンパイラは現在ベータ版の段階で、2013年第1四半期に正式リリースを予定している。Android向けのコンパイラは年後半になるだろう。コンポーネントライブラリ「FireMonkey」を使ってプロジェクトを作れば、今でもWindows向け、MacOS向けのネイティブコードを出力できる。それと同様に、iOS向け、Android向けのネイティブコードも出力できるようになる。時期は多少前後するかもしれないが、DelphiとC++でiOSとAndroid向けの開発ができるようになる。

クロスプラットフォーム開発はニーズがあるのか。

 RAD STUDIOでクロスプラットフォームの開発をしたいという声は多い。2012年にはざっと言って、10億台のWindowsパソコン、6500万台のMac、10億台のモバイル端末を使って、20億人がWebにアクセスしている。これまでなかったほど、マルチプラットフォームの開発が求められている。

 あるプロジェクトでは、各種のネイティブプラットフォームとWebをターゲットにした開発に、5万行のコードが必要だった。それを作るには184人月を要し、プロジェクト費用は140万ドル。コード1行当たりの費用は28米ドルだった。ここでのコード1行は、ぱっとコードを書くだけじゃなくて、リリースレベルのコードだし、ドキュメントを作ったりすることも含めている。とにかくコードを書くのは大変な作業なんだ。今後メンテナンス費用がかかることを考えると、コードは少しでも減らした方がいい。

 RAD STUDIOを使えば、同じプロジェクトを2000行のコードで完成させられる。15人月、11.3万ドルといったところだろうか。11.3万ドルを2000行で割ると57ドルだから1行当たりのコストが上がったように見えるかもしれないが、11.3万ドルを元の5万行で割れば、1行当たり2ドルと劇的な改善になる。

Windowsに取り組んできた私としては、何かさびしい気もするが。

 我々がやってきたことは、開発者をもっとプロダクティブにすることだ。RAD(Rapid Application Development)はそのためのものだったし、今マルチプラットフォームに力を入れているのも、目指すところは同じだ。

マルチプラットフォームの開発はHTML5でやってもいいのではないか。

 HTML5は重要で、我々もRAD STUDIO XE3に「HTML5 Builder」を入れてHTML5による開発をサポートしている。ただ、競争力のあるアプリを作ろうと思うと、ネイティブコンパイラを使ったより深い開発をする必要が出てくる。例えば、最新の機器には多くのセンサーが入っていて、それをいち早く有効活用するとなると、やはりネイティブ開発が求められる。

Windowsストア アプリの開発やWindows RTの開発はできるようにならないのか。

 現段階では、企業向けアプリケーションはこれまでと同様の方法で作ってインストールしたいというのが当社の顧客の要望だ。見た目を新しくできるRAD STUDIO XE3の「Metropolis UI」でその要望に応えている。この方法なら、アプリケーションを旧版のWindowsで使うこともできる。

Windows RTは成功しないだろうと思ってる?

 MicrosoftはWindows 8とWindows RTの両方をやめないから、Windows RTもいつかは成功すると思う。でも、それがいつになるかはわからない。

Windowsは時代遅れなんだろうか。

 そうでもない。娘にクリスマスプレゼントを選ばせたらWindows 8パソコンだったから。若い人の見方は、(中年の)私たちとはまた違うんじゃないだろうか。触らせてもらったらなかなか面白いんで、私は「Surface with Windows 8 Pro」を狙っている。