ユーザーから見たAndroidの1番の魅力は、豊富なAndroidアプリにある。その数は有償・無償を合わせて15万本を超えている。ジャンルも、実用ソフトからゲームまでと幅広い(図1)。

●Androidで動作する多種多様なアプリ
図1 Androidアプリは、米グーグルが運営する「Androidマーケット」で入手する。15万本を超えるアプリが公開されている
[画像のクリックで拡大表示]

 これだけの数と種類のアプリを生む原動力の1つは、Androidがオープンな環境であることにある。また、オープンであるがゆえに性能の改善や機能の追加のサイクルが短い。以下、Androidの基本的な仕組み、バージョンアップによる主な強化点を見ていこう。

OSはLinuxベース

 AndroidはオープンソースOSである「Linux」をベースにしている。Linuxはパソコンでも動作し、「カーネル」と呼ぶ中核プログラムがCPUなどのハードウエアとの間のやり取りを管理するほか、アプリケーションなどの動作に必要な数多くの基本機能を提供する。このような点は、Windowsとほとんど変わらない。ただし、パソコンよりも少ないメモリーや小さな画面でも動作するように最適化しているほか、携帯電話網やGPSなどに対応する機能を備えるなど、スマートフォンやタブレット向けに改良を施している。

アプリの言語はJava

 一方で、アプリケーションの開発面はWindowsと異なる。Windowsの場合、プログラミング言語は多岐にわたり、Java、Visual Basic. NET、C言語などで開発できる。これに対し、AndroidアプリはJavaを使って開発するのだ(図2)。

●アプリの仕様はほぼ統一されている
図2 Windowsではアプリケーションごとにプログラミング言語や実行環境が異なる(左)。大半のAndroidアプリは「Java」で記述され、「Dalvik(ダルビック)」と呼ぶ仮想マシン上で動作する(右)
[画像のクリックで拡大表示]

 Javaは、パソコンだけでなくサーバー用途向けのアプリケーションの開発でも広く使われているプログラミング言語である。というのも、ハードウエアの違いを「仮想マシン」と呼ぶプログラム実行環境が吸収してくれるので、一度作ったアプリケーションを異なるハードウエアでもそのまま利用できるというメリットがあるからだ。いわば、仮想マシンはプログラムとハードウエアの間で「通訳」の役割を果たす。

 Androidアプリは、スマートフォンのようにメモリー容量の少ない端末向けに最適化された「Dalvik(ダルビック)」という仮想マシン(プログラム実行環境)で実行される。DalvikがAndroidアプリをハードウエアが理解できる状態(機械語と呼ぶ)に変換し、実行するのである。

この先は会員の登録が必要です。今なら有料会員(月額プラン)が2020年1月末まで無料!

日経 xTECHには有料記事(有料会員向けまたは定期購読者向け)、無料記事(登録会員向け)、フリー記事(誰でも閲覧可能)があります。有料記事でも、登録会員向け配信期間は登録会員への登録が必要な場合があります。有料会員と登録会員に関するFAQはこちら