こんにちは

 

普段はサラリーマン

週末にアプリを開発してるウチヤマです。

 

なんのアプリかというと、ミニバスのスコアシートをつけるのに

少しでも助けになるアプリを作ろうと思ったのがきっかけです。

 

小学校〜中学校まではサッカーをやっていた自分にとって

バスケットは初めてなんですが

子供たちが小学校からバスケを始め

今では、小6と中2になった娘・息子の付き添いで

だいぶバスケットのことがわかるようになってきました。

 

まあ、バスケットは色々審判が大変だなぁと思っていましたが、

それ以上にTOを呼ばれる、スコアつけたりタイマー操作したりするスタッフが大変。

それをミニバスは子供達自身で行うという、厳しさ。

 

サッカーも、公式戦以外は、

ラインズマンや得点板とかは、生徒でやるけども・・・

 

バスケは

・タイマー

・スコアラー

・24秒

などなど・・・

 

公式戦といえども、子供たちがやるので

その辺りがグダグダだと、試合も中断して

もうリズムとかもあったもんじゃなくなります。

 

相手が大人なら、しっかりやれ!とも思いますが

自分の子供たちもやる役割、大変だなぁ。という感想しかない。

 

バスケの人数も揃わない学校なんかは

低学年からTOをやらないといけなかったりする。

 

でも、試合に見入ってしまったり、

緊張して間違えてしまったり・・・

 

このIT全盛の時代に、もう少しなんとかならないものか・・・

 

そう思ってスコアシートに必要な情報だけに絞った

タイマーと連動したスマホアプリを開発中です。

 

FlutterにはDartという言語を使っています。

 

JAVAに近いということで

JAVA特有の書き方なんかも結局は覚えなくてはいけなくて、

 

また、ガイドブックには、さらっと

アンダーバー(_)を付けるとプライベート(他から読み書きできない)の設定になる

って書かれているけど

 

いやいや、ずーっとそんな使い方してなかった。

 

表記が似ているので、かえって間違う。

何となく感じで判断していた中国語が

実は全然違う意味が含まれてた、みたいな感じ。

 

とにかく、サンプルで持ってきたプログラムを

中を解読しながら変更をかけていくのだけれど

 

結局は、トライアンドエラーしかない。
 

実地訓練を積み重ねるしかないということを痛感する。

 

学校で一通りやり方を学んでも

自動車教習所で一通り操作方法を覚えても

 

いかに実践に応用するか。

 

まあ、自分の場合は

なんとなく昔の機械の使い方を知っていというだけで

最新の武器を持って戦いに出て、そこで実際に武器の使い方を覚えていくという

 

王道とは全く違うやり方をしてる訳で

そんな簡単にいくはずがない。

 

でも、王道でじっくり学んだとしても

結局は実践で作れないとダメな訳で、経験を積むことによって

いいコードが書けるというのであれば

 

プログラム言語なんて、日進月歩だし、

そもそも人が作ったものだから、どんどん改良されていくし

 

その中でもFlutterは、新しくはないけど、日本ではまだマイナー言語だから

 

どちらにしても、現場で学んでいくしかないんだなーと

実感する今日この頃。

 

 

おかげで、カレンダーからのフィールド入力

ドラムロール型の入力などで

1週間はかかってしまった。

多分、慣れている人ならそもそも引っかかりもしないだろう。

 

でも、

これで自分も、今後はFlutterのカレンダー入力とドラムロール入力はスムーズにできるようになったと思う。

 

Flutter(フラッターと読む)という言語に出会った。

 

とあるメルマガにおすすめされていて

自分の子供にはFlutterを教える、といっていたので

調べてみた。

 

とはいえ、プログラム。

JAVAなどの基本的なルールは常識として知っていなくてはいけないし

もちろん、全部英語

日本ではあまり普及してないせいか、解説書もほとんどない。

 

でも、全般的に解説書は減ってきたかな・・・

 

Webで調べれば動画解説を含め、サンプルがいっぱいあるし

本家本元の英語の解説書も、グーグルで普通にページ翻訳すると

だいたい意味がわかる。

 

で、なにがいいかというと

 

わかりやすい。

構造が。

 

すべてがパーツになっている。

 

しかし・・・

継承とかオブジェクトとか

だれが命名して言い出したのか知らんけど

あるところは英語そのまま、あるところは日本語

 

あるところはインスタンス、コンテキスト、

あるところは、継承、非同期、カプセル化

 

誰か、わかりやすい言語で統一してくれないかな・・・

 

https://wa3.i-3-i.info/index.html

 

この方が作っている解説ページはわかりやすくて好き。

 

大体、いま解説のページを検索すると

いろいろ指南している人がいるせいか

noteで作られていて

 

すごいタイトル+大きな写真+ちょっとの導入+いっぱいの広告+最後にがっかりするくらいちょっとした情報

という編成が多く

時間のかかる割に得る情報は少なかったりする。

 

なので、プログラムをやるには

 

 

に登録しておいて、情報を検索しないと

時間がかかってしょうがない

 

ただ、ここはプログラマーの場所なので

「この記事は2年前のものです」と言われたものを信用していいのか(今でもこれは有効か?という意味)

プログラマーで常識的に使われている用語を用いた説明

 

サンプルプログラムの、必要な部分だけなので

そのプログラムの起動の仕方、組み込み方

など知らないと、

ただただ、プログラムがぐちゃぐちゃになってしまう可能性もあります。

 

Githubで管理すれば、間違えたところまでロールバック(巻き戻す)こともできますが

これも、ちゃんと管理できてないと

うっかり、動かないプログラムのまま最新に保存してしまったり

せっかく作ったのに巻き戻してしまって、

何が何やらわからなくなるということを繰り返します。

 

つまり、この使い方にも慣れと、自分ルールが必要です。

 

結局、プログラムって開発言語も含め、人が作ったのものなので

自分で消化して、自分で工夫して構築していくしかない。

 

そんな、アタリマエのことを痛感した

この3ヶ月でした。

 

おかげで、すこしはFlutterで動くソフトができました。

 

で、それをグーグルプレイにアップしようと準備中ですが

これも結構たいへん。

一度やってしまえば、なるほどな〜という感じですが

 

これらも順に、こんご載せていきます。

 

自分の作ったプログラムが、グーグルプレイに表示されて、ダウンロードされる

これはなんか、ちょっとテンション上がりますよね。