INTP型のブログ

苦味があるな?

このコードどうやって直すか考えてた

 

それぞれが独立した条件だから単純にどう階層にifを並べればええやんと思ったけど、画像の書き方だと早期リターンで処理高速化が達成できてると考えると、それぞれのifの中にreturnを入れていく感じになるのかなと思った

 

寝れなさ過ぎてよくわからんことを考えてた、明日は出社、おわったぜ

 

 

これとかとりあえず直すならこういう形になるよって感じでわかるなとなった。

 

ただ今度はここまで書かれるとマジックナンバーがどうだとか、関数に切り出せばよくね?とかそういう気持ちが湧いてくるので困る。あともとがゲームのことを考えると早期リターンの仕様がなくなるのはよくないのでは?と思った

 

めっちゃツイートの引用みてたらcaseでよくない?とかelse if..とか書いてあってひょえーとなった。breakなしcaseとかより一層カオスを生むだろと思うし、else ifはそもそも前提のソースコードの要件をちゃんと満たせないでしょという。多分条件的に >= 1がほぼ格で発生するわけで、そこで抜け続けるだけやん

 

早期リターンの要件を満たそうとするときれいに書くのむずいんだよなこのコード。引用見てると底ガン無視でif並べればいいとしているやつが多いの腹立つな

 

---

 

ここまでかいて気づいたけど、new Vector3のところはあかんか。new10回呼ぶのはさすがに無駄すぎる

 

unlockの書き換えとnew vector3をしつつ、早期リターンもかなえるとなると、単純にunlockとvector3と早期リターン用のboolを返す関数を作るとかがシンプルかなぁ

 

 

この人はちゃんとわかってる人で気持ちいい。

 

プロフにFactorio好きと書いてあったのでやはりFactorio好きは優秀なエンジニアの素質あるんだよな。Factorio採用をしよう。Factorioプレイ時間が長い人優遇!履歴書にFactorioのプレイ時間を証明するスクショを添付してください的な