フレームワークや開発ツールを取り入れることの意義とは

数年ほど前から JavaScript フレームワークの話題をよく見かけるようになり、同時に各所で適用事例が挙がるようになりました。

ところが、最近になって、JavaScript フレームワークをやめてサーバーサイドレンダリングに移行した、みたいな話をいくつか見かけることがあります。

なんとなく、揺り戻し みたいな現象が起きているように思えます。

なぜそういうことが起きるのか、このあたりの考えを簡単にまとめてみます。もちろん、すべてのケースに当てはまるわけではないですが、身近な現場で似たような状況を見かけたもので…。

そもそも、何かしらのフレームワーク (アプリケーションフレームワークや開発手法など) や開発ツールを取り入れるとき、それによって解決したい問題や課題はなにか を明確にすることが重要であると考えています。

で、冒頭で挙げた近年の JavaScript フレームワーク事情においてしばしば見かけるような気がするんですが、新しい技術である、流行りの技術であるという単純な理由で「とりあえずこれを使ってみるか…」みたいな判断を下しがちになっているような見えます。もちろん、流行りに追従して新しい技術をおさえることは大切ですし、世間でいろいろ取り沙汰される故、焦りを覚えることもあると思います。私もそうです。

ただ、ここでよくないと思うのは、いわゆる 手段が目的になっている ような状況です。

しかし、新しいことを取り入れた直後というのは、得てして上手くいっているように見えるものです。不思議なことに。ところが、解決するべき問題や課題を明確にしていないと、いずれは頓挫して上手くいかない状況に陥り、方針を見直す必要が出てきたりします。これが揺り戻しの正体ではないかと考えています。(多くの場合、方針を見直したところで実行に移せないことがあるかもしれませんけど…)

解決したい問題や課題はなにか、不安なことはなにか、どうやったらその不安を取り除けるのか、これらをあらかじめ明確にしておくと、どんなフレームワークや開発ツールが適しているのかが判断し易くなると思います。もしかしたら、全体適用ではなく部分適用で十分かもしれないし、いくつかの手法を組み合わせて取り入れることでよりよい効果を生み出せるかもしれません。

また、このようなプロセスを経て改善したものは、メンテし易く、長い期間にわたって効果を発揮するのではないかと思います。(当然、理に適った改善であるため)

このように、手段ではなく目的を中心に据えて、解決すべき問題や課題を解決することによって不安を取り除くことが、フレームワークや開発ツールを取り入れることの意義である、というのが最近の私の考え、というか認識です。当たり前のことなんだと思いますが、自戒を込めて。