Shoeisha Technology Media

CodeZine(コードジン)

記事種別から探す

Android開発のための環境準備

Android開発のためのJava SE再入門(1)

  • LINEで送る
  • このエントリーをはてなブックマークに追加
2011/05/30 14:00

 Androidアプリケーションは、Java言語を用いて開発することができます。Androidアプリケーションの開発にあたっては、グーグル社が提供するAndorid SDK(Software Development Kit、開発キット)の知識を要するのは当然ながら、基本となるのはJava SEです。この連載では、Javaでの開発の基礎となるJava SEを、実際にAndorid上で実行できるソースコードとともに解説します。

目次

はじめに

 第1回目の本稿は、開発を行うための準備として、Java開発ツールやSDK、Androidエミュレータのインストール方法を紹介しましょう。

対象読者

 Androidアプリケーションの開発を始めたい方で、JavaとEclipseのごく基本的な知識がある方を対象とします。

Androidとは

 ご存じの通り、Android(アンドロイド)とは、米グーグル社が無償で提供しているモバイル端末向けのプラットフォームです。Androidのアーキテクチャーは、Linuxベース(カーネルバーション2.6)となっており、そこに一般的な機能を提供するC言語のライブラリやDalvik VM(仮想マシン)と呼ばれるJava仮想マシンを含むランタイムが搭載されています。そしてその上に、アプリケーションフレームワークがあり、いわゆるAPIとしてAndroidの機能を提供しています。

 通常のアプリケーションは、このフレームワークを通して、Android独自の機能を利用しますが、Androidアプリケーションには、Windowsなどのアプリケーションにはない特徴があります。それはAndroidアプリケーションを作っていく上での、最初の「とまどい」になるかもしれません。具体的には、次回以降追って説明することにします。

Androidのアーキテクチャー
Androidのアーキテクチャー

Androidのバージョン

 Androidは大変活発に開発されており、短いスパンで頻繁にバージョンが更新されています。それに伴い、アプリケーション開発に用いるSDKも、バージョンアップが繰り返されています。SDKは、Android Developersサイトで公開されており、この記事の執筆時点では、Androidバージョン3.0に対応したSDKが最新となっています。

 次の表は、Androidのバージョンとそのコードネーム、対応するAPIレベルを示しています(2011年5月11日にAndroid 3.1プラットフォームとそれに対応したSDKがリリースされました)。

AndroidバージョンとAPIレベル
バージョン コードネーム APIレベル
1.5 Cupcake 3
1.6 Donut 4
2.0 Eclair 5
2.0.1 Eclair 6
2.1 Eclair 7
2.2 Froyo 8
2.3 Gingerbread 9
2.3.4 Gingerbread 10
3.0 Honeycomb 11
3.1 Honeycomb 12

 今回の連載では、最新のバージョンにこだわる必要性はあまりありませんが、SDKとしては最新(3.0)のものを利用することにします。なお、APIレベルとは、APIのバージョン番号のようなものです。SDKには上位互換性があり、たとえばAPIレベル4に対応したSDKで作られたアプリケーションは、それ以上のバージョンの環境で動作します。ただしその逆では動作の保証はありません。

Java SEとは

 通常Java SEとは、PCのスタンドアローンのアプリケーションで利用するJava環境を総称したものを指します。つまり、もっとも基本となるJava環境で、多様な機能を実現するためのAPIやライブラリ、開発ツールなどが含まれています。

 Androidが提供するDalvik VM環境は、このJava SEから、SwingやAWTといったPC用のAPIを除いて、Android独自のAPIを追加したものになっています。

 本連載では、Java SEのなかでも、Androidで利用できるものを解説していきます。

Javaのバージョン履歴

 Javaの最初のリリースは、JDK(Java Development Kit、Java開発キット)1.0です。JDKとは、Java言語での開発に必要となる最低限のソフトウェアセットの総称で、ソースファイルをクラスファイルにコンパイルするための開発用ツールや、クラスライブラリ(Java SE API)、Javaプログラム実行環境(JRE)などが含まれます。

 はじめてリリースされたあと、Javaはバージョンアップと名称の変更を重ね、次のように変遷しています。

バージョン履歴
名称 リリース時期 主な技術要素
JDK 1.0 1996/1  
JDK 1.1 1997/2 国際化、JDBC
J2SE 1.2
(Java 2 Platform, Standard Edition)
1998/12 リフレクション、ジャストインタイムコンパイラ
J2SE 1.3 2000/5 HotSpot、JavaSound
J2SE 1.4 2002/2 NIO、イメージ I/O API
J2SE 5.0 2004/9 ジェネリック、アノテーション
Java SE 6 2006/12 スクリプティング、JavaコンパイラAPI

 名称の変更からわかるように、Javaは2度大きく変わっています。

 1度目の刷新は、Javaの正式名称がJava 2になったJ2SE 1.2です。従来のJDKに相当するパッケージを、J2SEと呼ぶようになり、実行環境に合わせた3つのエディション(SE、EE、ME)に分けられました。前述したようにSEはデスクトップ用で、EEは主に大規模システム(サーバサイド)用、EEは機器の組み込み用途です。

 2回目は、J2SE 5.0です。J2SE 1.4から言語仕様が大きく拡張され、ジェネリック、アノテーション、オートボクシング/アンボクシング、enum、拡張forループ文といった機能が追加されました。名称は、当初J2SE 1.5と呼ばれていたものが、後にJ2SE 5.0が正式名称となりました。

 またJava SE 6からは、それまでのJ2SEという呼称をあらため、正式名称としてJava SEと呼ぶようになり、バージョン番号の小数点以下の表記も廃止されました。

 なお、Androidが提供するDalvik VM環境は、J2SE 5.0以降のJavaをベースとしています。


  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

  • WINGSプロジェクト 高江 賢(タカエ ケン)

    <WINGSプロジェクトについて> 有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。2012年2月時点での登録メンバは37名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂きたい...

  • 山田 祥寛(ヤマダ ヨシヒロ)

    静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for ASP/ASP.NET。執筆コミュニティ「WINGSプロジェクト」代表。 主な著書に「入門シリーズ(サーバサイドAjax/XMLD...

バックナンバー

連載:Android開発のためのJava SE再入門
All contents copyright © 2006-2017 Shoeisha Co., Ltd. All rights reserved. ver.1.5