【4年ぶりのiPhoneプログラミング】ライティングが遅いのをキレながら待ってくれる娘「記事待ち娘」を作っていくぞ!その4【音のバリエーションをタイマーで制御】
その1
その2
その3
とりあえずバリエーションに富んだ声がしっかり聞けるようにプログラミングをしていくぞ。というわけで書いたコードがこちらやね。何度も言うけど、Viewにこんなロジックは絶対書いちゃだめやで。最終的にはModelにロジックを移して、あくまでViewの責務としては「どの音を鳴らすかジャッジする」というジャッジメントメソッドだけを実装(記述)していくからね。あとハイパーパワーコードなのも今は気にしないで。まずは形にしたいねん。はい、まあこんな感じね。
俺が仮に社長やったとして、部下からこんなくそコードがあがってきたらしばき倒すと思う。お前Viewの責務で何ロジックかいてんねんと。しかも毎回文字列のインスタンス作ってんじゃねえぞクソが、とか言っちゃいます。まあ、ただとりあえずコピーして楽したかったんでみんな今は許して。最終成果物はModelクラスいくから。MVC守るから!!!(エンジニアしかわからない単語)
まあ何を言っているかというとね、情報の整理分類なんすよ。このViewというクラスは、いわゆるController(ボタンとか意匠に関わる部分)と密接に繋がってるわけ。例えばボタンを押したら次の画面に遷移するとかもそうなんだけど、「ボタンを押したらこれを実行する」までは書いていいけど、本格的なロジックはViewに書いちゃだめなの。それはもう情報が整理できなくなるから。そこの切り分けができないとエンジニアはだめです。もし僕のいってることがわからないエンジニアがいたらたぶん向いてないですこの仕事に。日本語能力の問題もあるし。
で、出来上がったのがこちら。
ほんとうは30秒、60秒、180秒でライティングが遅いと怒られますが、テストで5秒おきに怒られるテスト pic.twitter.com/DeHADSqIMp
— にゅーとん@ライター/はてなブログ (@Knewtons) December 24, 2018
ちょっとずつ、アプリっぽくなってきたね。次はちょっと情報を整理したり、何をしたいのか明確にする(どこでどう画像を切り替えたい、とかね)よ。