🐥
関数型プログラミングとかどうでもいいけど、関数を作るときに気をつけたいこと2選
関数型プログラミングとは
知らん
この記事で伝えたいこと
デカい関数は分割しよう
分割するときは、
テストコードが書きやすくて、
読みやすくて、
脳の負荷が少なくなるものにしよう
関数をつくるときに気をつけること2選
返り値がない関数を作らない
返り値がない関数は作らないようにしよう
RDBやログ等の書き込み処理は仕方ないが、
それ以外ではあり得ないと考えよう
関数の外にある変数の状態を変えない
関数の外にある変数に変更を加えるのはあり得ないと考えよう
setterはあり得ないと考えよう
やめよう.php
class Hoge
{
private int $value;
// これをやめよう
function setValue(int $v): void
{
$this->value = $v;
}
}
まとめ
この2つを守っていれば、
脳の負荷が少なく、
テストコードも書きやすく、
バグも少なくなるよ
可読性も高くてみんなハッピーだよ
みんなも心がけてみてね
どの言語でもできるはずだよ
あとがき
詳しく勉強したくなったら参照透過性で調べてね
関数型プログラミングを構成する要素の1つだよ
Discussion