関数じゃなくてクラスを使ってもいい

Katashin
·

関数型プログラミングが流行ってから JavaScript でクラス記法を避ける雰囲気ができているような気がするけど、クラス記法のほうが読み書きしやすいケースも全然あるのでクラスで書いていいと思う。

関数型言語で書くならまだしも、JavaScript は全部関数で書くにはつらい部分がかなりある。例えば、状態や文脈に依存したロジックを書く場合はクラスで書いたほうが読み書きしやすい印象がある。

もうちょっと具体的な話をすると、React の Hooks とか Vue の Componsable のような書き方では関数の戻り値で外に公開する関数や状態を指定する(のが面倒くさい)けど、クラスで書けば private field を使えば良いだけだ。

こういう話をするとシリアライズとか this の話をされそうだけど、そのデメリットを受けない部分で使えば良いだけだ。