「これからJavaScriptを学ぶのって意味ある?」トラハックおバカ!!!!!JavaScriptはWebに触れるエンジニアなら全員が必修の言語です。今回はJavaScriptの将来性についてお話をしていきたいと思います。この記事は主に、「これからプログラミング言語を学びたい」という人向けに解説をしています。この記事を読むとわかることこれからJavaScriptを学ぶことはおすすめかどうかJavaScriptがWeb業界で欠かせない理由JavaScriptの現在の流行とこれからの流れ特に、JavaScriptの歴史を学ぶことで、同じJavaScriptでも今学習すべきものとそうでないものを判断することができるはずです。僕はインフラエンジニアからWebエンジニアに転職した経験があります。JavaScriptは現在メインで利用している言語です。現役エンジニアの僕がJavaScriptの将来性について語っていきたいと思います。【Node.js】JavaScriptは派生してサーバーサイド言語にJavaScriptエンジニアの市場価値を底上げしたフレームワークの登場【SPAの大流行】JavaScriptが静的型付け言語になるとエンジニアのなかで大人気に【歴史から学べ】Webエンジニアが今すぐに習得すべきJavaScript【結論】JavaScriptは現代のWebエンジニアに欠かせない言語JavaScriptは現代のWebアプリにおいて欠かせない技術となっています。JavaScriptが実現するUIとUXこの領域についてです。そのため、Web系エンジニアになりたいならJavaScriptの学習は必須になってくると思います。UIというのはユーザーインターフェースの意味です。ユーザーが目にするデザインやフォントといった外面のことを指します。UXというのはユーザーエクスペリエンスつまりユーザー体験という意味です。表示速度やレスポンスが早いこと商品購入までの導線がシンプルで分かりやすいことといった”ユーザーにとって嬉しい体験”を「UXが良い」と呼びます。それではなぜJavaScriptが現代のWebアプリにおいて圧倒的地位を得たのか解説をしていきたいと思います。JavaScriptが人気の理由ブラウザの振る舞いを変更する唯一の言語だからバックエンド言語としても使えるからUXを向上させるフレームワークが登場したから静的型付け言語が登場したからそれぞれ詳しく解説をしていきます。JavaScriptはブラウザの振る舞いを操作する唯一のクライアント言語まずJavaScriptは当初からブラウザの表示を変更するためのクライアント言語として使われてきました。非同期にデータを通信できるAjaxの登場によって、より快適なブラウジングを実現しています。非同期にデータを通信できるメリットは、ページを遷移しなくても何度もデータを送受信できる点です。データの送受信によってページの表示を変更することができます。jQueryのようなライブラリの登場によって、誰でも簡単に綺麗なデザインを実現できるようになりました。【Node.js】JavaScriptは派生してサーバーサイド言語に次に、バックエンド言語としてのJavaScriptについてです。JavaScriptは当初からWebのクライアント言語、つまり「見かけ」を操作する言語としてしかみなされていませんでした。Node.jsの登場によって時代は変わりました。PHPやRubyのようなバックエンド言語と同様の機能を持ち合わせることができたのです。JavaScriptでデータベースの操作やルーティングといったサーバーサイドの処理を行います。JavaScriptエンジニアの市場価値を底上げしたフレームワークの登場【SPAの大流行】そして、2010年代後半、SPAを実現するための、JavaScriptフレームワークが大流行しました。SPAというのはシングルページアプリケーションの略称です。SPAのメリットは、ブラウザの遷移なしに表示がパッパッと切り替わるのでユーザー体験が向上する点です。React.jsAngular.jsVue.js今やこの三つはJSフレームワークのビッグ3として語られています。僕も業務ではReact.jsを用いることが多いです。これらのフレームワークは開発効率を高めることがメリットです。どれも学習コストがかかるので、初学者の方はいきなりこれらのフレームワークに手は出さず、素のJavaScript、今ならES6というバージョンを学習することをお勧めします。JavaScriptが静的型付け言語になるとエンジニアのなかで大人気にそして、4つめ、静的型付け言語についてです。そもそも静的型付け言語をざっくり説明すると、変数や定数にどんな型の値が入るかあらかじめ決める言語になります。動的型付け言語というのは、そのどんな型の値が入るか決まっていない言語です。1という入力があったとして、それが文字列なのか数値なのか配列の要素の一つなのか動的型付け言語では判定することができません。数値として型付けできていれば、予期しない値がデータベースに追加されることを防ぐことができます。Javaといった昔からある言語だけでなく、SwiftやGoといった近年注目されている言語も、静的型付け言語です。JavaScriptの静的型付け言語として台頭したのが、タイプスクリプトです。Errorが表示されるトランスパイルできる型チェックについては先ほど述べたとおりです。Errorは開発者にとって嬉しい機能です。構文に誤りがあればエラーを出力してくれます。トランスパイルとは、ある言語で書かれたコードを別の言語のコードとして生成することができる機能です。そのため、ES6の構文で書かれたJavaScriptのコードをES5のコードに変換することができます。それによって、最新の構文を使って書いたコードが、古いブラウザ環境でも動作するというメリットがあります。開発者にとって言語のバージョンを意識しなくていいのは、すごく精神的負担が減ります。【歴史から学べ】Webエンジニアが今すぐに習得すべきJavaScriptこのように、ただのWebクライアント言語であったJavaScriptは、この20~30年で進化し続けていることがわかります。この勢いは今後もしばらく止まることはないでしょう。今回の話をまとめると、JavaScriptは現代のWebアプリを開発する上で欠かせない技術です。サーバーサイドの言語としても利用できます。SPAや静的型付け言語といった、ここ最近の流行もキャッチアップしていくと、エンジニアとしての市場価値が高まると思います。リモートOKなスタートアップでフロントエンド|搾取されないエンジニアを増やすために、キャリア論や転職を成功させる方法、勉強方法について発信しています。