連載
» 2011年04月15日 00時00分 UPDATE

App Inventorでアプリ開発はどこまでできるのか(2):App Inventor for Androidで使う基本的な部品を知る (1/3)

プログラミング未経験でも手軽にAndroidアプリが作れるApp Inventor。本連載では、App Inventorでアプリを作り、使用しているコンポーネントに関して実際にJavaのAPIと比較して、できることを検証していきます。

[多田 丈晃,株式会社ビーブレイクシステムズ]

使える部品は画面だけではなくロジックもある

 前回の記事「誰でもAndroid開発できるApp Inventorの基礎知識」では、「App Inventor for Android」(以下、App Inventor)についての概要を説明し、ツールをセットアップしてシンプルなAndroidアプリを作って実機で動作させるまでの流れを解説しました。

 App Inventorで使える部品は大きく分けて2種類あります。1つはデザイナで使える画面部品です。もう1つは、ブロックエディタで使える部品です。

 デザイナの画面部品はボタンラベルに代表されるAndroid標準の画面部品を扱えます。また、デザイナの画面部品にはタイマーセンサのような非表示の部品も画面部品として存在します。さらに、非表示の部品の中にはApp Inventor独自に作り込まれた部品も存在します。

 ブロックエディタでは、イベントに直接関連するブロックだけでなく、変数関数制御構文を扱えます。それにより、一般的なプログラミング言語のようにロジックを組み立てられます。

 今回は、これら2種類の部品の基本を理解して、この後の連載で、App Inventorで可能な、さまざまなことを理解するための基礎知識を身に付けてもらいたいと思います。

前回の補足

前回記事の中で、App Inventorのできないこととして「日本語が使えない」とお伝えしました。記事公開後にApp Inventorがアップデートされ、デザイナで日本語が扱えるようになっていますので、ご注意ください。


App Inventorのデザイナで使用できる部品の分類

 まず、デザイナで扱う画面部品の一覧を見ましょう。App Inventorで使用できる画面部品は以下のように分類されています。

表1 App Inventorのデザイナで使用できる画面部品の分類
種類 説明
Basic 基本的な部品(ボタンやテキストボックスなど)
Media 画像音声動画を扱う部品
Animation ボールや画像を動かす部品
Social 電話帳Twitterを使用する部品
Sensors 加速度センサGPSを使用する部品
Screen Arrangement 画面部品を配置する部品
LEGO MINDSTORMS 同名のレゴのおもちゃのロボットを制御する部品
Other stuff その他の部品(通知、バーコードスキャナなど)
Not ready for prime time 実験中の部品

 これらの分類の中にある部品を知ることが表現の幅を広げることにつながります。

デザイナの「ボタン」とJava APIの「ボタン」の違い

 今回は、部品の中から「ボタン」を例にしてJavaのAPIと比較して解説します。

デザイナの「ボタン」

 デザイナ側で、ボタンに設定値を設定するには、[Properties]で行います。App Inventorのボタンのプロパティは、以下にある通りです。なお設定値は、この後に説明するブロックエディタでも変更可能です。

ALT

13個の設定値があることが分かります。

Java APIの「ボタン」

 JavaのAPIでは、何個の設定値が用意されているのでしょうか。AndroidのボタンについてはAPIドキュメントを参照します。デベロッパサイトを開き、リファレンスをクリックすると、JavaのAPIドキュメントを参照できます。JavaのAPIがどうなっているか、興味がある方は参照してください。

ALT

 設定値を比較するために、ボタンのAPIのセッターメソッドを見てみましょう。リファレンスから「android.widget.Button」を探します。これがJavaのAPIでのボタンになります。その中のセッターメソッドの数が設定値の数と考えます。イベント系のリスナのセッターとメソッド名が重複しているセッターメソッドを除くと、109個あります。

それぞれの特徴

 このように、JavaのAPIで用意されている設定値に比べ、App Inventorの設定値は大幅に少ないです。しかし、JavaのAPIの画面部品のセッターメソッドは実装したインターフェイスが持っている数だけ存在するため、画面部品によっては意味をなさないメソッドも含まれています。

 インターフェイスをそろえることはJavaのプログラミングでのテクニックとして有益です。しかし、App Inventorの開発スタイルでは部品ごとに必要な設定値だけあれば十分です。必要なものだけにまとめられているため、かえって分かりやすくなっています。

 次ページでは、ブロックエディタの部品について説明します。

       1|2|3 次のページへ

Copyright© 2017 ITmedia, Inc. All Rights Reserved.

@IT Special

- PR -

TechTargetジャパン

この記事に関連するホワイトペーパー

Focus

- PR -

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。