モバイルアプリビルダーを学ぶ

  • さまざまなアプリビルダーとプログラミング言語について学習します
  • モバイルアプリを構築するためのアプリビルダーを使う準備をします

モバイルアプリの構築

Technovationプロジェクトでは、モバイルデバイス上で動作するアプリを作成します。ウェブアプリも可能ですが、コーディング経験があり、チャレンジ精神旺盛な方におすすめです。

ここでは、ブロックベースのコーディングを使ってモバイルアプリを構築する方法を学びます。コーディングが初めての方は、まずここから始めましょう!

モバイルアプリを作るには、アプリビルダーを使います。アプリビルダーはコーディングプラットフォームとも呼ばれています。 

コーディングプラットフォームは、Android Studioのようにコンピュータ上で動作するソフトウェアか、MIT App Inventorのようなオンラインウェブサイトです。App Inventorではブロックで、Android Studioではテキストを使い、コードを書くことができます。書いたコードは コンパイルつまり、コンピューター(および携帯電話)が理解できるマシンコードに変換します。マシンコードに変換されると、コンピューターや携帯電話はあなたの指示に従ってコードを実行できるようになります。

アプリビルダー

アプリビルダー通常、コードを入力する代わりにブロックを使用してアプリを構築できるドラッグ&ドロップのインターフェイスを持っています。アプリビルダー上はシンプルなコードに見えますが、コーディングにおける重要な概念を学ぶことができます。

コーディングが初めての場合、App Inventorまたは Thunkableのいずれかを使用することをお勧めします。プロジェクトで使用するプラットフォームはこれらに限定されるわけではありませんが、このカリキュラムではこれらをサポートします。

App Inventorのロゴ
MIT App Inventor
ビーバーのロゴ
Thunkable

App InventorとThunkableのどちらを選択するかは、アプリに含めたい機能をどちらのプラットフォームが多くサポートしているかで決めましょう。以下の表を参考にしてください。

特徴 App Inventor Thunkable
iOSとAndroidの両方でプロジェクトの実行とテストが可能 はい はい
オープンソース はい いいえ
無料 はい 制限付きで無料、最大3プロジェクト、各5スクリーン、すべて公開
英語以外の多くの言語に対応 はい いいえ
開発プロジェクトのプレビュー Wifiで接続した携帯電話、またはエミュレーターを使用 ブラウザで内でのプレビュー(テストしやすい)、または携帯電話でのプレビュー
ライブテスト はい はい
携帯電話へのインストールおよびApp Store/Play Storeへのアップロード Androidのみ 月2回までダウンロード可
ユーザーインターフェース 基本的 より多くのオプションとコントロール
Maps より多くのオプションとコントロール 基本的
ゲーム用スプライトとアニメーション 使いやすい 機能はあるものの複雑
モバイル機器へのデータ保存 TinyDB(タグと値のペア) Stored変数
クラウドへのデータ保存と共有 CloudDB、Firebase、Google Sheets Airtable、Firebase、Google Sheets、Media DB(より多くの選択肢があり、実装が容易)
AI パーソナル画像分類器、パーソナル音声分類器、Face Mesh、Posenet(その他オプション多数) 画像認識(Microsoft社製画像分類器を内蔵)
生成AI ChatGPT, Dall-E ChatGPT, Dall-E
データサイエンス/チャート 内蔵チャート・コンポーネント、回帰モデル 外部APIを使用

* オープンソースとは?

オープンソースとは、アプリビルダー自体に使用されているコードのすべてがウェブ上に公開されており、誰でも自由に使用できることを意味します。これは、将来アプリビルダーがサポートを停止したり、運営を停止することを懸念すると重要になります。また、アプリビルダーのオフライン利用する場合においても重要かもしれません。

2024年10月中旬現在、Thunkableの無料プランは3プロジェクトまでに制限されています。各プロジェクトは5画面までです。もしあなたのアプリが5スクリーンよりも複雑になる可能性があるのであれば、App Inventorを使用してアプリをコーディングすることを検討すべきです。また、Thunkableが今後も無料サービスをダウングレードし続けるかどうかによっては、将来的にThunkableプロジェクトにアクセスできなくなる可能性もあります。

他の言語オプション

App InventorやThunkable以外にも、アプリを作るのに使えるプログラミング言語はたくさんあり、ほとんどがテキストベースだ。 

以下は、昨シーズンのTechnovation参加者が使用したApp InventorやThunkable以外の言語のトップ4です。これらの言語に限定されるものではなく、使い慣れたプログラミング言語であれば何でも構いません。なおこの場合はソースコードファイルを提出する必要があります。

プログラミング言語 作成できるアプリ コーディング・プラットフォーム スタートガイド
Java Android Android Studio
Swift iOS Xcode
Dart(Flutter SDK) Android/iOS Android Studio
Streamlt (Python) ウェブアプリ(ブラウザを問わない) Anaconda (Windows) または任意のテキストエディタ/IDE

どのコーディング・プラットフォーム/言語を使うか迷いますか?Technovationの卒業生が、どのコーディング・プラットフォームを選んだか、そしてその理由について話しています。

ベストプラクティス YouTubeのTechnovation Coding Playlistにある動画をチームメンバーと視聴し、それぞれの仕組みを理解して方針を決めましょう。

過去の参加者からのアドバイス 

  • Thunkableは、きれいなインターフェース、iOSとの互換性、他のアプリビルダーにはない機能を備えている。
  • App Inventorは信頼性が高く、多くの参加者がこのツールにある程度慣れている。
  • SwiftとJavaはさらなるチャレンジや、さまざまな機能を活用したい方に最適です。
  • 他のプログラミング言語も素晴らしい。

メンターTipsは、AmeriCorpsから提供されたものです。

様式化されたA、ネイビーでAmeriCorpsのロゴ

はじめよう

Technovationプロジェクトでモバイルアプリを開発するには、以下のものが必要です:

  • コンピュータまたはラップトップ
  • インターネットアクセス
  • モバイル端末はオプションですが、テスト動作には強く推奨します。 AndroidとiOSの両方の端末を使用できます
モバイルアプリのコードを書く準備を始めるには、コンピューターとモバイルデバイスをセットアップする必要があります!
 

アクティビティ 1: コーディングプラットフォームの設定

所要時間:30分

ThunkableまたはApp Inventor以外を使用する場合は、この機会に必要なソフトウェアをすべてダウンロードし、上記のリソースリンクからセットアップ手順に従ってコンピュータをセットアップしてください。

ThunkableおよびApp Inventorを使う方は、以下の該当するタブをクリックし、指示に従ってコンピュータをセットアップしてコーディングを開始してください!両プラットフォームを自由に試してみてください。

パート1:サインアップ
  1. ブラウザで http://ai2.appinventor.mit.eduを開き、Gmailアカウントでサインアップします。Gmailアカウントをお持ちでない場合はアカウントを作成してください。
  2. ログインしてスプラッシュ画面が表示されたら、Continueをクリックします。
  3. Start a Blank Projectをクリックして、新しいプロジェクトを開きます。
  4. プラットフォームを見回してみてください。
パート2:セットアップからテストまで
アプリが正しく動作することを確認するために、アプリをビルドしながらテストする必要があります。複数のオプションがあります こちら

パート1:サインアップ

ブラウザで Thunkableサインアップページを開き、無料アカウントでサインアップしてください。

パート2:セットアップとテスト

Thunkable では、ウェブプレビューを使ってブラウザ上でアプリをテストすることができます。ある時点で、モバイルデバイス上でアプリをライブテストしたくなるでしょう。そのためには Thunkableライブアプリをインストールするをインストールする必要があります。  

アクティビティ 2: 最初のアプリをコーディングする

所要時間:30分

さて、アプリビルダー用にコンピューターとモバイル端末をセットアップしたところで、さっそくスターター・チュートリアルに飛び込んでみましょう!

選択したコーディングプラットフォームの下のタブをクリックし、指示に従ってください。 

手順:

Talk to Meアプリを作成します。 ここをクリックして、App Inventorプラットフォームのチュートリアルを確認してください。

動画がよい方は、このチュートリアルをご覧ください:

手順:

Dave Wolberによるビデオチュートリアルを参考に、Talk to Meアプリを作ってみましょう。

もっとやってみたい?

時間があれば、選択したコーディングプラットフォームで別のチュートリアルに挑戦してみましょう:

主な用語のおさらい

  • アプリビルダー- 通常はドラッグ&ドロップのインターフェースで、コードを入力することなくアプリを作成できるプログラム
  • プログラミング言語- コンピュータや携帯電話に何かを指示するための対話方法
  • コーディング・プラットフォーム- プログラムやアプリを書くためのプログラムやウェブサイト
  • コンパイル - コンピュータコードをコンピュータが理解できるマシンコードに変換すること

振り返り

初めてのアプリ制作、おめでとうございます!以下は、チームやメンターと一緒に考えるための振り返りの質問です。

湖に沈む夕日と反射
このレッスンで学んだことの中で、アプリを作る上で役に立つと思うものは何ですか?なぜそう思いますか?
ブロック言語は、日常生活で使い慣れた言葉とどう違うと思いますか?