AndroidスマートフォンやAndroidタブレットでプログラミングを楽しむ! #1
(1) 概要
- 最近のスマートフォンやタブレットは、安価なものでもARM64が使われています。このCPUの処理能力は、かなり高いのではないかと思われます。それなら、それらを対象にプログラムを作って遊べたら非常に楽しいのではないかと私は思いました。
- そう思って少し調べていたら、Termuxという素晴らしい無料アプリがあり、これを使えばAndroid上でLinux的なプログラミングができるとわかりました。
- さらにXServer XSDLという無料アプリも併用すると、Termux上でSDL2.0を使うことができて、グラフィカルなアプリも書けることがわかりました。
- ということで、ここではそれを紹介したいと思います。
(2)
- まず最初に、安価なAndroidタブレットがどれほど安いのかを確認します。
- 安いARM64マシンといえば、やはり筆頭はラズベリーパイだと思います。Amazonで価格を眺めてみると、だいたい5,000円くらいします。これに電源とSDカードと十分な冷却手段とディスプレイを準備する必要があります。これらを全部含めたら、ディスプレイを除いても8千円くらいになってしまいそうで、思ったより安くはないかもという気はします(それでもPCよりはずっと安いのではありますが)。
- 一方、安価なAndroidタブレットであれば、たとえば「Dragon Touch タブレット」が5,999円で売っています。タブレットなので、ディスプレイもついてきます(まあ7インチ程度ではありますが)。これでもスペックを見る限りではRAMは2GBもあります。
- ということで、安価にプログラミングを始めるのなら、今は格安Androidタブレットが最強なのではないかと私は思います。
- 私はソフトウェアキーボードでプログラムを入力することには耐えられそうになかったので、Bluetoothのキーボードを買いました。これは1,962円でした。これで非常に快適に操作できていると感じるので、キーボードはおすすめです。
(3)
- 私は以下の順番でインストールしました。
- [1]GooglePlayから「Termux」をインストール。
- [2]Termuxのインストールが完了したら、早速起動して、
$ pkg update
$ pkg upgrade
$ pkg install clang
- で、clangをインストールしました。途中で「容量こんぐらいだけどインストールしていいか?」みたいに聞かれたときは、すべて「y」で答えました。
- そして
$ nano hello.c
- でnanoを起動して、
#include <stdio.h>
int main()
{
printf("hello, world\n");
return 0;
}
- を入力して、^Xで保存&終了して、
$ clang hello.c -o hello
$ ./hello
hello, world
- のように実行してみて、うまく動いているなーと満足しました。
- キャラクターベースのプログラムでよければ、このままでも、どれだけでも作れそうです!すごい!!
- なお、
$ pkg list-all
- とするとインストール可能なパッケージがたくさん出てきます。
(4)
(5-1)
- [8] "グラデーション"
$ cd ~/bls20200902a
$ clang grd.c -o grd -lSDL2
$ ./grd
- ここまで入力したら、XServer XSDL側の画面を見てください。以下のような表示が出ているはずです(ウィンドウタイトルはgradationになっていると思います)。
- マウスカーソルを動かすのにはコツがいりますが、試行錯誤すればわかるはずです。ウィンドウのクローズボタンを押せば、grdは終了します。Termux側に戻ればプロンプトが出ているはずです。
- ちなみに、このプログラムは、最初の14行の「たくさんあってうっとうしい#include」を全部無視すれば、たったこれだけの単純なものです。
int main()
{
bls_init();
bls_Window *w = bls_openWin(256, 256, "gradation", 1);
int x, y;
for (y = 0; y < 256; y++) {
for (x = 0; x < 256; x++)
bls_setPix(w, x, y, bls_xrgb(y, x, 0));
}
bls_wait(-1);
return 0;
}
(5-2)
(5-3)
(5-4)
(6) もっとすごい人たち
こめんと欄
|