単一のコードベースから複数のプラットフォームへ展開する 通常スマートフォン向けのアプリケーションは、そのプラットフォームごとに特定の言語で開発する必要がある。iPhoneやiPadであればObjective-C、AndroidやBlackBerryであればJava、Windows PhoneであればC#やVisual Basicといった具合だ。 しかし、複数のプラットフォーム向けに同じアプリケーションを提供したい場合、それぞれの言語で個別に開発を行うのは非効率的であり、開発者の負担も大きい。 そこで近年では、単一のコードで開発し、それをベースとして各プラットフォームで実行できる形式に変換するというアプローチが一般的になってきている。この方法であれば、1度の開発で複数のプラットフォームをターゲットにすることができるため、開発の手間は大幅に削減される。言語の習得にかかる開発者の負担も軽減できる
![PhoneGap、Titanium、Sencha--それぞれ異なるモバイルアプリ開発のアプローチ - builder by ZDNet Japan](https://cdn-ak-scissors.b.st-hatena.com/image/square/4a93ed3da2122bc05d3165a0b794ef72e6afc266/height=288;version=1;width=512/https%3A%2F%2Fbuilder.japan.zdnet.com%2Fstorage%2F2011%2F01%2F24%2Fedd4cccc1a0e18bebf3e5c968cbdd1a9%2Fstory_media%2F20384896%2F081209ipodtouch2_184x138.jpg)