てすと

たかろぐ

自分のログを刻みます。

ひさしぶりに記事を書く

すごく更新が滞っていたけど、やっぱり少しずつ書いていこうと思います。 色々積もる話があるけど、一度に書くと疲れるから一つずつ。

不変性の良さが実感できてきた

関数型と一緒に語られるポイントの一つに不変性というものがあります。 数ヶ月前、自分は初めて関数型プログラミングに触れて、当然この不変性の話も学んだんですけど、 当時の僕からしたらその良さがピンと来ていませんでした。

でも、最近少し規模の大きい開発をするようになり、非同期処理等で少し複雑な処理を書くようになり、ようやく不変性の良さが分かってきました。

普通の変数は、宣言されてから再代入が可能なので、ある地点での変数の値が知りたいと思ったら、 目視で処理を追うかブレークポイントを立てて、確認の度にプログラムを動かすことになると思います。 でも、これって結構面倒臭いですよね。

一方で、定数は状態を持たず、いかなる時も宣言部に示されている値を持つことが保証されています。 定数宣言時の'='は、代入ではなく等価演算子ということですね。 その結果、わざわざ一つの変数のために処理を追う必要も無くなり、コードを読むスピードは上がるし、誤読の可能性も減ることに繋がります。

この話、だいぶ感動しました。