お疲れさまです。POTTIRIです。
毎日毎日プログラムを書いてますが、
自分の理想とするプログラムが年齢と共に変わってくのを感じます。
今日はそんな話です。
今日のステージ
今日はこちらです。
昨日作ったステージを嫁に見せたところ、
もっともーーーーっとシンプルな面いいということなので、
こんな感じにしてみました。
こ・これでいいのかなあ?
(ていうか爆風が重なりすぎて処理オチしてる・・・)
長男にやらせてみよう。
どんな反応するかな?
他の面はこちらにあるので、万が一興味を持たれたらサイトを訪れてください。
格子模様つけてみました
今までステージのマス目が真っ白だったので、
ちょーっと寂しいかなーっていうことで格子模様にしてみました。
爆弾パズルはマス目を一定にしていないので、
模様の有無はプログラムで自動生成しています。
普通こういうのは奇数・偶数で判定して模様をつけたり外したりするのですが、
マス目が一定でないってことはちょっと一工夫が必要です。
模様をつけるかどうかの判定をしてるプログラム(Vue.js)はこんな感じ。
const idx = parseInt(x) + ((parseInt(y) - 1) * this.data.size)
if (this.data.size % 2 === 1) {
// マス目のサイズが奇数の場合
if ((idx % 2) === 1) array.push('box-pattern2')
} else {
// マス目のサイズが偶数の場合
if (y % 2 === 1) {
// 奇数行
if ((idx % 2) === 1) array.push('box-pattern2')
} else {
// 偶数行
if ((idx % 2) === 0) array.push('box-pattern2')
}
}
割と愚直に書いてます。
もうちょっと洗練した書き方あるだろうと思わなくもないですが、
そういう気持ちを抑えてそのまんまな書き方をしてます。
あれですね、年齢と共に理想とするものは変わりますよね。
20代の頃の理想
凄いプログラムを書きたい!スタイリッシュに書きたい!
この程度のロジックなら一行に収めてやるぜ!
30代の頃の理想
変更の度に関連するところを一応テストするのはうんざりだ!
テストを自動化させよう!
そのためにはある程度シンプルにしないと!
現在の理想
どうせ自動テスト書いても手動テストは絶対必要だ。
自分が作ったものを自分でテスト・メンテできるとも限らん。
ていうかやってくれ。
だから誰が見てもわかりやすいのが一番だ。
新人が見てもわかるレベルぐらいに落とし込まないと。
これを熟成したと見るか、枯れてしまった見るべきか・・・🤔
アフィリエイト

リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)
- 作者:Dustin Boswell,Trevor Foucher
- 発売日: 2012/06/23
- メディア: 単行本(ソフトカバー)