こんにちは

 

全然進まないプログラミングのrobinです。ニヤリ

 

アメブロは、だいぶ昔に初めて

更新したり、しなかったりだったのですが

 

アメブロは比較的主婦層が多いそうですね。

確かに、コストコ情報とかイケア情報とか

業務スーパー情報とかが多い気もしますね。

 

さてさて、それはさておき

デザインからやり直すにあたって、

もう一度、考えているプログラムを

整理します

 

ミニバスバスケで手書きで小学生が記録しているタイムシートをなんとかしたい

と、いうのが動機です

必要な条件は

 

①基本的にタイマー時計とイベントをセットで記憶できればいい

②出力としては、1試合終わったあとに、起こったイベントと時間が羅列されていればいい

③補助的なものなので、時間時計はそんなに厳密でなくていい

 

これが基本です。

でも、意外と問題だったのはイベントの中身

 

記録が必要なイベントとしては

①得点→ミニバスバスケは3Pはない。でもフリースローやバスケットカウントがあるので1点も入力しないといけない

②メンバー交代→背番号が自由 二桁にしているチームもある

③反則→反則を犯した人の番号。ただスコアーシートに反則の中身までは記載しない。

④タイムアウト

 

これらについて、少し細かく見ていくと

①得点

作り始めて最大の難関は、「得点してもタイマーが止まらない」

つまりプログラム的には

「タイマーを動かしたまま得点を記録する処理をさせなければいけない」

非同期処理(タイミングを合わせない処理)とマルチスレッド(複数処理)を組み合わせないといけない?

処理がよくわからない・・・

 

あと、得点はどんどん入っていくので、通常の1点はワンクリックで処理したいが

フリースローやバスケットカウントは1点の入力なので別ボタンとかが必要

 

②メンバー交代

一度、交代したメンバーもすぐに戻ったりする。

しかも、交代の頻度も高いし、

タイムアウトやクォーターが変わるときに

メンバーが変わってたりする。

 

プルダウンや入力させたりする方法は使えない。

ある程度の操作で入れ替えができないと

試合についていけなくなる(画面周りが押しやすくないといけない)

 

④反則

反則はしょっちゅう起こるが、何番だったかがわからない時がある。

審判同士で揉めるときもある。

ただ、スコアラーに向かって、反則の内容とジェスチャーで伝えるのは必須なので

なれてくると問題はなくなる。

 

④タイムアウト

これはさすがにタイマーを止めるだけ・・・

 

なんか、思いの外、交代と得点のところの処理が大変で

処理の問題というか

画面周りが押しやすくないと、

まったく使えない代物になってしまう可能性が高い。

 

だから画面周りから見直そうというわけです。

 

参考に、有料のソフトを見てみましたが

 

これがまた・・・

シュート率やファール率など細かく出るようになっているものの

入力をいろいろやらないといけない

 

これを控えの選手とかにやらせてるのを見ますが

こんなのやっていたら、試合見られないじゃん!!って思います。

 

また今度書きますが、

日本のバスケットボールバスケって、独特の文化があって

そのうち社会問題化するんじゃないの?ってのも結構あります。

 

それはさておき・・・

画面周りをデザインって・・・と思っていたら

画面を手書きで書いて

それをスマホに取り込んで、簡単な動き(画面の移動)

くらいならできるアプリとかありました。

 

これはいいかも。

早速、これを印刷して、画面を手書きで書いてみます。

 

できるか?

作ってみたものを、次の回でアップします。

 

こんにちは

 

スコアシートのタイマーと得点部分の処理に手こずって

だいぶモチベーションが下がり

 

しかも非常事態宣言で(埼玉県)体育館も使えず

子供のバスケの試合もできないので

さらにモチベーションがさがってしまい

 

だいぶ時間が経っていましたが

 

他にも理由があるなと思いました。

 

それは、「デザインがダサい」

 

まあ、これはホームページ然り

アプリのデザイン然り

 

センスであったり、それ以上にデザインの情報収集をしていないので

当然の結果ですが

自分のイメージするものとかけ離れた感じになってしまいます。

 

かといって、どういったデザインがということを考えても

図で書いてみても、いまいち・・・

 

センスのある人が、自分には到底イメージできない「かっこいいもの」を表現してくれないか

そんな思いがあります。

お金があったら、頼むのになーと思う反面

お金をかけても自分の好みのデザインになるとは限らない、とも思います。

 

とにかく、もうちょっとモチベーションの上がる画面配置と画面遷移を考え(調べ、模倣し)

画面周りを再構築してモチベーションを上げていこうと思います。

お久しぶりです

 

結構間が空いてしまいました。

相変わらず、学校や施設は使用できず(埼玉県)

子供のミニバスの試合もありませんが

 

復活したときに出来上がっているように

頑張っていきます。

 

さて、今回のプログラムの最大の難所は

「点が入ってもタイマーは動き続けている」

この処理が、よくわかりません。

 

タイマーと得点の処理を別々に動かすということなので

「同期?非同期?」のあたりで混乱します。

 

同期というのはタイミングを合わせるわけだから

別々の処理なら非同期のはず・・・

 

調べると、マルチスレッドやらThreadクラスやら

いやいや、Threadクラスは使うべきじゃないとか

 

う~ん

分かっていることが前提の議論ですね。

 

  • Threadクラスの startメソッド
  • Timerクラスの scheduleメソッド
  • Timerクラスの scheduleAtFixedRateメソッド
JAVAの場合はこのあたりみたいですね。
それを、さらに使いやすく補助するクラスも存在するとのことで、
 
「AsyncTask」
だそうです。
 
これの使い方をちょっと見ていくことにしましょう。

 

↓Gitのソースです。