はじめに この記事について ときどき見かけるこの話題、最近も少し話題になっていたので、自分の考えをまとめておきたいので記事にしました。関数型言語が好きなので、その点でバイアスかかってると思いますが、なるべく客観的に書くつもりです。 結論 命令型(imperative)と宣言型(declarative)という異なるパラダイムが同一のプログラミング言語に混ざるのが当たり前になってきたので、こういう議論が起きるんだと思いますが、そもそも異なるパラダイムなので、どちらが良いか悪いかというよりもどのように捉えるかの違いでしかないのだと思います。 コードによる比較 こちらの記事から拝借しました。 gakuzzzz.github.io 命令型における for(あるいはループ) const forStrategy = (products: Product[]) => { let result: Produ