おはようございます。
今日は、趣味としてのプログラミング②で話をした
バスケットボールのスコアシートの話をしていきます。
まず、いきなり最初から設計をするのは
難しいと思ったので、
まず、必要な項目をピックアップして
その内容を丸々Youtubeから、
似たようなプログラムを作成している人のもの実行し、
それを変更して作り上げることにしました。
必要なのは、
・画面の移動
・その際の数値の移動
・タイマーを動かすプログラム
・記録をする方法
・記録したものがリストになって出てくる。
このあたりですかね。
Youtubeを探していたら、
ちょうどいい感じのものが見つかりました。
それがこちら
出来上がりがイメージしていたものに近かったので、
こちらを視聴しながら、丸写ししてみました。
英語だけど、アンドロイドスタジオの便利な使い方も織り交ぜられていて
あと、一番勉強になったのは
プログラムを作っていくステップ。
こんなふうにプログラムは作りはじめて
機能を乗せていくんだ・・・
ちなみに、この人は
アリゾナ州フェニックス
グランドキャニオン大学
コンピューターサイエンスの教授
とのことです。
教授だからわかりやすいんですね。
さて、これを完コピしたところで、
タイマーを組み込まないといけませんね。
今度は、タイマーのツールを探してみますが
これが大変だった。
というか未だに解決していない。
まず、
①カウントダウンタイマーがない
②タイマーを止めるという機能がない。
そもそも止めた時間を保存・維持する機能がない。
この辺は、カウントアップしているであろう ループのところを
カウントダウンにしてみることで、解決しましたが
カウント0になったときの処理とか
1分切ったら赤にするとか
スタートの数字をいつ設定するか、とか
やることいっぱい。
あと、途中で知ったのですが
バスケットボールはゴールした場合はタイマーが止まらない!!
そんなのってあり?!
ここで、同期・非同期が重要になってくるんだけど
タイマーを動かしながら別の動作をさせることは
同期?
非同期?
もう、ぐちゃぐちゃです。
更に、結構記録しなければ行けない情報が多い。
反則を犯した選手の番号
ゴールした選手の番号
1ゴール、2ゴール、3ゴール
それぞれをどの画面で対応するか。
1Q単位でリセットされる反則と
1試合通してカウントされる反則がある
要するに、やることがいっぱいあって
どこまで搭載して、どこは省略しても問題ないか
これを決めないといけない
あと、作れば作るほど、
画面周りの
ダサさというか、素人っぽさに
絶望的になる。
おんなじようなアプリを開発してる人はいないかなーと探していると
こちらの方が丁寧に作っている感じ。
でも、プロの方ですね。
というか、なに?!
作画は別ソフトを使って作るの?!
という感じです。
・・・続く
さらに今日、中学生の娘のバスケ部では
iPad用のアプリバスケットの試合を管理していることが分かりました。
こりゃすげぇ。
でも・・・
こんなの付けてたら、試合見てる暇ないじゃん。
やはり、自分でソフトを作ろう、
と思います。