- さまざまなアプリビルダーとプログラミング言語について学習します
- モバイルアプリを構築するためのアプリビルダーを使う準備をします
モバイルアプリの構築
Technovationプロジェクトでは、モバイルデバイス上で動作するアプリを作成します。ウェブアプリも可能ですが、コーディング経験があり、チャレンジ精神旺盛な方におすすめです。
ここでは、ブロックベースのコーディングを使ってモバイルアプリを構築する方法を学びます。コーディングが初めての方は、まずここから始めましょう!
モバイルアプリを作るには、アプリビルダーを使います。アプリビルダーはコーディングプラットフォームとも呼ばれています。
コーディングプラットフォームは、Android Studioのようにコンピュータ上で動作するソフトウェアか、MIT App Inventorのようなオンラインウェブサイトです。App Inventorではブロックで、Android Studioではテキストを使い、コードを書くことができます。書いたコードは コンパイルつまり、コンピューター(および携帯電話)が理解できるマシンコードに変換します。マシンコードに変換されると、コンピューターや携帯電話はあなたの指示に従ってコードを実行できるようになります。
アプリビルダー
アプリビルダー通常、コードを入力する代わりにブロックを使用してアプリを構築できるドラッグ&ドロップのインターフェイスを持っています。アプリビルダー上はシンプルなコードに見えますが、コーディングにおける重要な概念を学ぶことができます。
コーディングが初めての場合、App Inventorまたは Thunkableのいずれかを使用することをお勧めします。プロジェクトで使用するプラットフォームはこれらに限定されるわけではありませんが、このカリキュラムではこれらをサポートします。

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の卒業生が、どのコーディング・プラットフォームを選んだか、そしてその理由について話しています。
Tip
ベストプラクティス YouTubeのTechnovation Coding Playlistにある動画をチームメンバーと視聴し、それぞれの仕組みを理解して方針を決めましょう。
過去の参加者からのアドバイス
- Thunkableは、きれいなインターフェース、iOSとの互換性、他のアプリビルダーにはない機能を備えている。
- App Inventorは信頼性が高く、多くの参加者がこのツールにある程度慣れている。
- SwiftとJavaはさらなるチャレンジや、さまざまな機能を活用したい方に最適です。
- 他のプログラミング言語も素晴らしい。
メンターTipsは、AmeriCorpsから提供されたものです。

はじめよう
Technovationプロジェクトでモバイルアプリを開発するには、以下のものが必要です:
- コンピュータまたはラップトップ
- インターネットアクセス
- モバイル端末はオプションですが、テスト動作には強く推奨します。 AndroidとiOSの両方の端末を使用できます
アクティビティ 1: コーディングプラットフォームの設定
所要時間:30分
ThunkableまたはApp Inventor以外を使用する場合は、この機会に必要なソフトウェアをすべてダウンロードし、上記のリソースリンクからセットアップ手順に従ってコンピュータをセットアップしてください。
ThunkableおよびApp Inventorを使う方は、以下の該当するタブをクリックし、指示に従ってコンピュータをセットアップしてコーディングを開始してください!両プラットフォームを自由に試してみてください。
- ブラウザで http://ai2.appinventor.mit.eduを開き、Gmailアカウントでサインアップします。Gmailアカウントをお持ちでない場合はアカウントを作成してください。
- ログインしてスプラッシュ画面が表示されたら、Continueをクリックします。
- Start a Blank Projectをクリックして、新しいプロジェクトを開きます。
- プラットフォームを見回してみてください。
アプリが正しく動作することを確認するために、アプリをビルドしながらテストする必要があります。複数のオプションがあります こちら.
パート1:サインアップ
ブラウザで Thunkableサインアップページを開き、無料アカウントでサインアップしてください。
パート2:セットアップとテスト
Thunkable では、ウェブプレビューを使ってブラウザ上でアプリをテストすることができます。ある時点で、モバイルデバイス上でアプリをライブテストしたくなるでしょう。そのためには Thunkableライブアプリをインストールするをインストールする必要があります。
アクティビティ 2: 最初のアプリをコーディングする
所要時間:30分
さて、アプリビルダー用にコンピューターとモバイル端末をセットアップしたところで、さっそくスターター・チュートリアルに飛び込んでみましょう!
選択したコーディングプラットフォームの下のタブをクリックし、指示に従ってください。
手順:
Dave Wolberによるビデオチュートリアルを参考に、Talk to Meアプリを作ってみましょう。
もっとやってみたい?
時間があれば、選択したコーディングプラットフォームで別のチュートリアルに挑戦してみましょう:
主な用語のおさらい
- アプリビルダー- 通常はドラッグ&ドロップのインターフェースで、コードを入力することなくアプリを作成できるプログラム
- プログラミング言語- コンピュータや携帯電話に何かを指示するための対話方法
- コーディング・プラットフォーム- プログラムやアプリを書くためのプログラムやウェブサイト
- コンパイル - コンピュータコードをコンピュータが理解できるマシンコードに変換すること
振り返り
初めてのアプリ制作、おめでとうございます!以下は、チームやメンターと一緒に考えるための振り返りの質問です。
