質問: https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q11173783006 こちらの下記の部分がとても気になるのですが、WEBはサーバサイドのプログラミングの重要性が下がり、フロントで可能な限り行うという形に変わっていくのでしょうか? 今JSを学んでいるなら、Node.jsなどサーバサイドをやるよりreactなどフロントを徹底的にやった方が良いのでしょうか? >>> 最近、AjaxやApache Cordovaなどの技術の台頭で、Web開発の主流がクライアントサイド、AngularやReact.jsなどに移ってきています。 サーバサイドの役割は、そのうちjsonを提供するだけの「ライトな」REST API提供になってくかもしれません。 そういう時代ですと、フットワークが軽く、手早く開発できて、規約のゆるいライトウェイト言語であるphpは、とてもいい立ち位置なのでは? また、PHPはフリーランスでやる場合は必須で今後も一番使われ続けるという事も気になるのですが、専門職には文法がひどいと不評ですが、フリーランスでやるならrubyが増えていくとは言え、相変わらずPHPの時代は不動なのでしょうか?
回答: なぜクライアントサイドに比重が移るかというと、ajax などの機能により、「画面を完全に更新しなくてもよくなった」からです。必要な部分だけを書き換えることで * 応答性が向上する * 速度が向上する * サーバの能力に余裕が生まれる といったメリットが生まれます。サーバで画面をすべて作ってしまうとこうはいきません。 しかし逆に、すべてをクライアントサイドで賄うことも出来ません。サーバという下支え(REST API)があってこそのクライアントです。 ですからサーバ側のプログラミングの重要性が減るというのはない、と思います。これまで以上にバックエンド(データ処理)としてのサーバと、フロントエンド(ユーザUI)としてのクライアントという棲み分けが増えるでしょう。 逆にクライアントにロジックを書くのが増えて混乱しそうな気もします。クライアントに実装するロジックは UI に起因するものだけであるべきでしょう。